如何在数据库中存储大量数据

时间:2012-11-30 16:29:08

标签: asp.net sql-server asp.net-mvc database

我有一个简单的基本问题。假设我有一个像facebook,gmail等大型网站。这个网站每天可能会节省数百GB的信息。我的问题是这些网站如何将这些大型信息保存在他们的数据库中(由于数据库容量)。是否只有一个数据库?这个站点只有一台服务器吗?如果有另一台服务器和数据库,他们如何与对方沟通?

2 个答案:

答案 0 :(得分:1)

他们显然没有使用一台电脑......

这些大型网站背后的系统非常复杂,并且分布在数据中心之间。见 - http://royal.pingdom.com/2010/06/18/the-software-behind-facebook/

答案 1 :(得分:0)

请查看此网站,了解这些网站(以及本网站)使用的各种体系结构的信息:http://highscalability.com/all-time-favorites/

这些网站中的大多数采用了名为NoSQL的策略 - 即他们不使用传统的RDBM数据库,而是创建了自己的对象关系框架,这些框架具有持久化的能力。这种策略在大规模下运行良好,因为它会降低许多严重影响传统数据库方法性能的约束。然而,这通常以降低可靠性为代价,这通常被认为是那些站点场景可接受的。

PS。如果你的问题是普遍的兴趣,那么不用担心。如果您正在尝试构建一个高度可扩展的应用程序,请暂时考虑一下 - 您是要为世界上相当大比例的人口服务,还是为几千个用户编写一个站点?如果是后者,则不需要Facebook风格缩放;在别处投入你的努力和资源。如果它是前者从小开始,那么就会发展您的系统,随着您的用户群的增长带来投资和专业知识。