创建云数据库?

Mic*_*gon 11 database cloud

由于云计算似乎是最受欢迎的话题之一,它让我思考,而且由于我对这个话题不太了解,请原谅我对这个问题的任何无知.

究竟什么是云数据库以及如何创建此服务.它只是一个带有Web前端的MySQL数据库,允许用户从浏览器创建自己的数据库/表单/报表/关系.再次,请原谅我对此事的无知.

浏览时,我遇到了这个InfoDome产品,它说这是一个在线数据库.这与云数据库有什么区别?另外,如果你看一下该产品的视频演示(http://vimeo.com/9132578),它允许用户使用拖放界面创建数据库表单和报告,他们是如何编写此功能的呢?因为我发现它非常令人印象深刻

感谢您帮助我解决困惑.

Hor*_*rus 5

由于酸度,在云中拥有真正的数据库是非常困难的.数据存储完全是一个不同的问题.在您可能知道的情况下,数据存储不必是经典数据库.Cassandra和其他键值数据存储提供了很多,因为它们读写速度很快,但很难报告.如果你几乎不需要报告,速度是你最关心的问题(意味着你有一个非常大的数据集,其中加入并不重要,它通常不符合传统的网络意义),那么这样的东西是非常有价值的.

当你正在做大量的数据改写(munging)和ETL工作,然后用高度稳定和非常高的性能哈希经典的数据库连接,可能会发生是非常有价值的,但甚至可以用的Map Reduce片的大桌的实施方案替换代码运行在许多机器上,您将获得良好的快速结果.已经在Hadoop上构建了Big Table实现,因此您可能希望在那里查看.

在内存中,用于非常快速检索的数据存储(例如memcache)也可以使用,只要您不担心在运行时填充缓存,而在网站上定期提取对象.

不幸的是,一旦你开始将交易和酸度的其他部分应用到任何数据存储,它就变得更难管理.这就是为什么如此多的非经典数据库数据存储放弃其中的一些,以获得性能提升.

我不认为"云数据库"是查看问题的正确方法,而不是"云解决方案".Cassandra作为一个数据存储,可以被认为是一个非常大的问题的"云解决方案":对于非常大的数据集(Facebook,以及其他网站,使用它),我们如何才能获得最佳性能?如果这意味着在帖子之后并非所有集群都是最新的,那么只要一切顺利进行,它就是这样.

一个'在线数据库' - 就像他们对于infodome所说的那样 - 是有趣的措辞.我认为在线数据库是一个正在运行的数据库(也许可以连接到).我认为他们的意思是一个可通过网络访问的数据库,这是不同的.要构建这样的站点,你可能需要对某种数据存储区有一定的了解,从技术上讲,任何不丢弃数据的东西(Memcache丢弃数据,cassandra不会,postgres,mysql,oracle都是经典数据库,所以它们是好的)应该工作.然后,你就需要学习如何编写一个网站,我建议你先从一些与一大组的活跃用户(Ruby on Rails的,Drupal的,虽然我从来没有或者是用,是比Perl的催化剂,更方便我更喜欢,但显然更难),然后学习如何构建有效的客户端javascript,并为您的应用程序生成有意义的xml或json api.

不幸的是,这是很多工作.我已经在这个行业工作多年了,而且我向你保证,在你的知识达到足够的程度以便用这种复杂程度编写自己的应用程序之前,你将会在这一段时间.当你考虑facebook和twitter时,他们没有从那个级别开始,但随着他们的成长,他们的主要问题是扩展,而不是应用程序的复杂性,这是不同的.

无论哪种方式,我希望我回答几个问题并推动你朝着正确的方向前进.如果没有,那也没关系.只需打字就可以在这里烧一些时间.