2009-06-18 55 views
3

我正在为Web应用程序选择一个平台。云计算能否扩展后端?

我了解云计算如何扩展前端服务器,但他们如何处理数据库服务器?

开发人员需要做些什么来解决这个问题吗?

+1

Heroku以非常清晰的方式展示了他们的数据库缩放选项,请查看http://heroku.com/pricing#blossom-1 – 2009-06-18 13:45:55

回答

0

这取决于数据库

Slicehost使用MySQL集群上,谷歌将使用地图,减少炒作等。依赖于云提供商数据库他们使用

其他人只是提供了一个虚拟机,在安装上有私有IP地址

+0

Google将其称为BigTable。 – 2009-06-18 13:39:58

+0

Google重命名了很多东西:P – 2009-06-18 13:41:14

1

简答虚拟机自己的数据库:是的。

长答案:这取决于。需要做什么样的处理?它可以减少地图吗?这种事情存在很多解决方案。分布式缓存la memcache也可以帮助扩展后端的许多服务。

0

如果您使用的云提供程序只是简单地让您访问虚拟框,您需要实现自己的数据库缩放。如果您在Google AppEngine,Intuit合作伙伴平台或类似平台上运行,则可扩展性将内置到提供给您的数据存储中。

基本上,这些关于云计算的东西没有什么神奇的。为了获得这种内置的可扩展性,你放弃了一些自由。 Google的数据存储不提供完整关系数据库的所有方面,但您可以扩展到可观的流量。

0

亚马逊和谷歌使用数据存储,它不同于传统的RDBMS。

您可以通过以下这个link

发现一些更多的背景信息,你可以找到数据存储here

2

的短名单一般情况下,是的。在多台机器上扩展数据库的最常见方法是使用column store。这样,表格中的每一列都可以存储在一台独立的机器上,大大增加了可用于搜索的CPU功率和带宽。搜索可以并行完成,公司专栏上的搜索只会触及一台服务器,因此对年份栏的搜索速度不会太慢。

从我读到的,这是Google的MapReduce的工作原理。

维基百科的专栏商店页面的benefits section是特别的信息。

沿着相似的路线,OLAP很有意思。 OLAP完全改变了读/写权衡。对于大型和复杂的查询,查询和读取速度非常快,但编写新数据需要耗时的重建过程。

1

它非常依赖于您为后端选择的解决方案。某些应用程序使用混合来处理不同类型的数据。

当需要缩放时,数据库(如MySQL或PostgreSQL)很难处理。对于我们的项目,我们决定使用Cassandra(当时您可能还没有存在!),这允许您将数据存储在任意数量的后端计算机上。这样做还允许后端进程在完全独立的计算机上运行,​​这样您就可以执行各种计算,而无需减慢数据库或前端(即Apache)的速度。

我说说这在我们的项目在本页面:

http://snapwebsites.org/implementation/snap-websites-processes

单词“过程”的搜索。也有代表不同的处理的图像,并且每个人都可以在单独的计算机上运行(如果你有,你需要更多的马力如此大的负荷):

enter image description here

而实际上一些瞬间!该示例中显示的后端可以在多台计算机上运行,​​而一个实例处理该网站,另一个实例将处理该另一个网站。非常强大。