3

我认为 MongoDB 这样的 no-sql 的优点之一是它可以自动水平扩展:只需添加一台便宜的机器,数据就可以“传播”到新机器上。

对于 RDBMS,是否有任何 RDBMS 也会自动执行此操作?

4

2 回答 2

4

这里的答案是“有点”。MySQL 并没有真正“免费”的任何东西。像 MSSQL 和 Oracle 这样的大型 RDBMS 技术确实对横向扩展有很好的支持。但是,这两种技术都很昂贵,而且没有办法通过 MS SQL 上的一千台服务器并说“拥有它”。

当然,即使拥有数百万美元的服务器和技术,您仍然无法随时加入。我的意思是,如何可靠地连接 500 台服务器上的数据?

老实说,我认为您的问题可能最好通过 MongoDB 和 CouchDB 等技术的存在来回答。这些技术存在 b/c 开发人员需要一种可靠“水平化”的方法。RDBMS 本质上不擅长水平化。同样,您如何扩展联接?

于 2010-10-03T06:49:13.090 回答
2

我只使用过 MySQL,而 MySQL 支持分区。但是,分区仅限于单个数据库服务器,这意味着水平扩展(将数据库分片到多台机器)不是数据库引擎管理的事情。这必须在应用程序级别进行管理。

据说 MySQL 分区在写入繁重的用例中工作得非常好。

给你进一步的方向:

通过 Yahoo 的分区扩展 mysql 写入

Netlog 的数据库分片

于 2010-10-01T16:04:47.353 回答