阅读this文章和其他文章后,似乎数据以JSON格式映射.
Users = { 1: { username: "dave", password: "blahblah", dateReged: "1/1/1" }, 2: { username: "etc", password: "blahblah", dateReged: "2/1/1", comment: "this guy has a comment and dave doesns't" }, }
RDBMS格式为:
Table name: "Users" id | username | password | dateReged | comment ---+----------+----------+-----------+-------- 1 | dave | blahblah | 1/1/1 | ---+----------+----------+-----------+-------- 2 | etc | blahblah | 2/1/1 | this guy has a comment and dave doesn't
假设我正确理解这一点,上面的例子是正确的,为什么要在NoSQL设计上选择RDBMS设计?就我个人而言,我更喜欢使用JSON结构?这是否意味着我应该选择NoSQL,比如说MySQL?
我想我问的是“我什么时候应该选择NoSQL over RDBMS?”
在附注中,正如我所说,我还没有完全理解如何实现Cassandra数据库.也就是说,如何在新的数据库中创建上述的Users表?你可以指出的任何教程,文档等都会很棒.我的谷歌在“从头开始”方面没有太大变化
NoSQL的主要优点是可扩展性和分布式存储.这意味着您可以拥有大量的“群集节点”并并行写入.集群将确保更改最终传播到其他集群节点(最终一致性).NoSQL不是关于SQL(术语意味着“不仅SQL”).实际上,一些NoSQL产品确实支持SQL的一个子集.数据格式不同的原因(JSON或属性/值对列表与表格数据)是:在关系数据库中,列(和列名称)的数量在一个中心位置定义,这对于水平不起作用可扩展性(您需要停止所有集群节点进行模式更改).此外,连接不受支持,因为这将破坏水平可伸缩性(如果数据分布,则可能需要读取来自多个集群节点的数据).
精彩评论