随着时代的发展,教育已经是我们生活中不可缺少的对象,那么Java 开发者 NoSQL 选项有哪些呢,我校的小编为大家整理了Java 开发者 NoSQL 选项的相关内容,希望对各位学员能够有所帮助哦!
因为了解和喜欢Java社区,所以尽管很少有人将NoSQL与某种语言绑在一起,我也要为全世界的Java开发者写下这篇文章。文中,我将为你展示几种NoSQL数据库。之后,我将根据实际在Githubstars和StackOverflowtags的项目中的使用情况,选出最常用的五个。并且我会让你知道它们是否支持SpringData和SpringBoot。
为什么使用NoSQL?
NoSQL数据库帮助许多互联网企业通过最终一致性实现高可拓展性。因为NoSQL数据库通常分布在多台机器上,而且有一些延迟,所以它只*所有的实例最终都是一致的。最终一致性服务通常被称为BASE(基本可用,软状态,最终一致性)服务,这点与传统的ACID正好相反。
选择NoSQL的候选项
定义前五名可能很困难。最近许多人都在尝试这个。请参考本文结尾处的研究和注释部分。
八月中旬,我在推特上告诉我的粉丝,我正在写这篇文章。我询问了关于NoSQL数据库的正面或负面的评述,收到了人们的反馈,其中有希望我涵盖的一些选项。
我收到许多建议,以下按字母顺序列出:
ArangoDB
Cassandra
Couchbase
DynamoDB
FaunaDB
Hazelcast
MongoDB
Neo4j
PostgreSQLJSON
Redis
(JetBrains)Xodus
人们还提到HibernateOGM(NoSQL的JPA)和NoSQLUnit来作为帮助访问和测试NoSQL数据库的工具。
请注意,我没有收到需要将CouchDB,HBase,Elasticsearch或Solr*括在内的任何请求。由于CouchDB和Couchbase的名称相似,它们经常被混淆,但是它们是完全不一样的。由于CouchDB是一个文件存储数据库,我将其*括在我的排名中。我还添加了HBase,因为它在ITBusinessEdge,KDnuggets和DB-Engines被提到过(在研究和注释部分)。我没有将Elasticsearch或Solr*括在内,因为我相信这些并不常用作主数据存储。