如果我们放弃关系,关系数据库的规模(或更好)比NoSQL对等
免责声明:这是一个广泛的问题,因此可以将其移至其他来源(如果管理员认为合适).
所有酷的孩子似乎都在丢弃关系数据库,而不是他们的NoSQL对手.每个人都有自己的理由,从扩大问题到简单地处于科技潮流的边缘.而且,我不是在质疑他们的动机. 然而,我感兴趣的是,任何NoSQL转换是否已经在关系丢弃时验证了传统RDBMS的性能(维护)收益.为什么我们想要使用RDBMS,当它存在的核心原因被删除?想到几个原因 > 30年的开发这些系统的学术和工作研究 显然,在水平缩放很重要的现代世界中,需要确保分片是容错的,在应用程序所需的时间间隔内更新.但是,这些需求不一定是一个存储数据的系统(例如:ZooKeeper). 此外,我承认研究应该致力于NoSQL,在这个领域花费的时间将显然导致更好的互联网价值技术.然而,NoSQL和传统的RDBMS产品(减去关系)之间的比较将有助于做出业务决策. 更新1:当我提到NoSQL数据库时,我在谈论可能不需要固定表模式的数据存储,通常避免连接操作.因此,关于在传统SQL RDBMS中删除关系的问题的重点 解决方法我没有发现表间关系是可扩展性的主要限制器.我定期使用连接查询,如果索引定义良好,可以获得良好的可伸缩性.可扩展性的更大限制器是同步I / O的成本.一致性和耐用性的要求 – DBMS实际上可靠地保存数据,当它告诉您保存数据时 – 是昂贵的. 几个NoSQL产品目前正在流行,通过削弱其一致性和耐用性来保证其默认配置的性能.有很多CouchDB或MongoDB丢失数据的报告. 有些方法可以配置这些NoSQL产品对于耐用性的要求更为严格,但是您可以牺牲其令人印象深刻的性能数字. 同样,您可以通过禁用确保数据安全的默认功能,使SQL数据库实现高性能,如NoSQL产品.见RunningWithScissorsDB. PS:如果你认为面向文档的数据库是“前沿的”,我邀请你阅读大约MUMPS.一切都是新的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |