各种 NoSQL 数据库系统都有自己的特定选择和权衡,使它们或多或少适用于不同的用例。幸运的是,有许多很好的比较(也在 Stackoverflow 上)可以解释和对比所有主要参与者的想法、优势和劣势。
但是我找不到任何关于Oracle NoSQL 数据库是什么以及它在 NoSQL 环境中的位置的独立信息。甚至没有维基百科页面。
那么,它是什么,它是如何工作的?
各种 NoSQL 数据库系统都有自己的特定选择和权衡,使它们或多或少适用于不同的用例。幸运的是,有许多很好的比较(也在 Stackoverflow 上)可以解释和对比所有主要参与者的想法、优势和劣势。
但是我找不到任何关于Oracle NoSQL 数据库是什么以及它在 NoSQL 环境中的位置的独立信息。甚至没有维基百科页面。
那么,它是什么,它是如何工作的?
这是我在高性能事务系统会议上看到的关于它的最多信息:http:
//hpts.ws/agenda.html
http://hpts.ws/sessions/cwl-hpts-for-website .pdf
从幻灯片 9:
这是我到目前为止发现的:
它是一个基于(可能修改的)BerkeleyDB 引擎的键值对存储
它管理一个节点集群,数据在这些节点上被分片和/或复制
它有大调和小调的概念。您可以获得属于同一主键的次键的原子提交。
与键关联的值是任意二进制数据。
数据使用散列函数分布在存储中。结果,您显然只能以无序方式进行迭代,而不能进行范围搜索(您可以按顺序迭代给定主键的次键)。
您可以通过指定要保存的数据提交到的副本数量来配置持久性
它使用单主复制,所以你有一个保证最新版本数据的主,和可能稍微落后的只读从
它是用 Java 编写的
有一个商业版和一个开源社区版(后者目前正在等待发布,同时正在进行许可证审查)
/。立即解决此问题,请参阅First Look:Oracle NoSQL Database
在阅读了一些评论后,我相信甲骨文也必须提供该类别的东西。
阅读 Zansons pdf 后更新:
它基本上建立在Berkeley DB之上,并添加了动态分区(“分片”)……“没有单点故障”听起来非常令人印象深刻。
这是否意味着它可以与 Enterprise Edition 分区和 RAC 竞争?作为免费(OSS)产品??他们是认真的吗?