sla*_*dau 25 sql-server-2008 nosql
所以我有一个网站,最终可以获得一些非常高的流量.我的数据库实现目前在SQL Server 2008中.我真的只有2个表和一些存储过程.大多数数据库可以重新设计,无需加入即可工作(尽管在SQL Server中可以轻松加入时没有意义).
我听说像Digg和Facebook这样的网站使用NoSQL数据库进行大量的基本数据访问.这是值得研究的东西,还是SQL Server不会让我失望那么糟糕?
我使用分页在我的网站(尽管这可能在未来改变),我也用了大部分的"活"的东西AJAX'd数据访问,所以它并没有真正似乎是一个性能障碍的那一刻,但我担心随着数据开始呈指数级增长.
我转向NoSQL会获得很多性能吗?老实说,现在我甚至都不完全理解NoSQL,所以关于这将如何帮助我改善更好的任何提示.
多谢你们.
Rem*_*anu 43
实际上Facebook使用关系数据库作为核心,参见SOCC主题演讲:建立Facebook:大规模的表现.许多其他网站规模的网站也是如此,请参阅为什么Quora使用MySQL作为数据存储而不是像Cassandra,MongoDB,CouchDB等NoSQL?.还讨论了如何将SQL Server扩展到Web规模的大小,请参阅大规模站点和应用程序如何保持基于SQL?它基于MySpace的架构(通过使用可靠消息传递扩展SQL Server的更多细节).我并不是说NoSQL没有它的用例,我只想指出白色和黑色之间有很多灰色阴影.
如果您害怕当前的解决方案无法扩展,那么您可能应该考虑哪些因素阻碍了当前解决方案的可扩展性.测试数据生产成本低,加载"指数增加"的数据量并运行测试工具,查看它的裂缝.NoSQL解决方案都不会带来神奇的现成可扩展性,它们都要求您了解如何有效地使用它们并正确部署它们.如果您想确保大规模成功,他们还要求您进行大批量测试.传统的关系解决方案也是如此.
Sql Server可以很好地扩展.例如,Stack Overflow使用它为您提供此页面.Facebook和谷歌可能会使用某种形式的nosql,但即使你把它变得非常大,你也不可能达到这个水平.
通过简单的表结构和适合一台服务器的数据,您使用的平台并不重要.有几个可能的原因需要转移到NoSQL:
数据扩展 - 当所有数据都适合一台服务器(最多几TB)时,SQL效果最佳.很多NoSQL商店没有连接的原因是它们的设计并不要求所有对象都在一台服务器上.
性能扩展 - NoSQL存储在处理高流量时往往更快,但不一定非常重要.只要您没有遇到数据大小问题,您就可以通过复制和缓存提高SQL性能.写入通常必须在一台服务器上运行,但在大多数情况下,在写入性能成为问题之前,您需要提高读取性能.
复杂的数据访问 - 某些类型的查询根本不适合关系模型.图形和集合存储的工作方式与关系数据库完全不同,因此更适合某些应用程序.
更容易开发 - 如果您还没有SQL数据库和所有支持它的代码,使用无模式数据存储可以节省相当多的开发时间.
| 归档时间: |
|
| 查看次数: |
17829 次 |
| 最近记录: |