设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

实用盘点:Java开源NoSQL数据库大全

2011-7-19 15:44| 发布者: joejoe0332| 查看: 7548| 评论: 0|原作者: 博客园|来自: 博客园

摘要:   本文转自Java开源大全,列举了与Java相关的NoSQL数据库,其中包括Java写成的,Java版本的,或者能与Java紧密结合的各种NoSQL数据库。对列举到的NoSQL都进行了比较详尽的描述。推荐给各位使用Java的朋友们。    ...

  NeoDatis ODB

  NeoDatis ODB是一个面向对象数据库,一个真正透明的对象持久层。利用一行简单的代码就能够持久化native object。ODB非常简单、非常快并自带强大查询语言。ODB既可以做为一个内嵌数据库引擎使用,也可以以C/S模式运行。

  Apache Cassandra

  Apache Cassandra是一套开源分布式 Key-Value 存储系统。它最初由 Facebook 开发,用于储存特别大的数据。Cassandra 不是一个数据库,它是一个混合型的非关系的数据库,类似于 Google 的 BigTable。本文主要从以下五个方面来介绍Cassandra:Cassandra 的数据模型、安装和配制 Cassandra、常用编程语言使用 Cassandra来存储数据、Cassandra集群搭建。Cassandra是一个混合型的非关系的数据库,类似于Google的BigTable。其主要功能比Dynomite(分布式的Key-Value存储系统)更丰富,但支持度却不如文档存储MongoDB(介于关系数据库和非关系数据库之间的开源产品,是非关系数据库当中功能最丰富,最像关系数据库的。支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。)Cassandra最初由Facebook开发,后转变成了开源项目。它是一个网络社交云计算方面理想的数据库。以Amazon专有的完全分布式的 Dynamo为基础,结合了GoogleBigTable基于列族(Column Family)的数据模型。P2P去中心化的存储。很多方面都可以称之为Dynamo 2.0。

  Cassandra 的数据模型是基于列族(Column Family)的四维或五维模型。它借鉴了 Amazon 的 Dynamo 和Google’s BigTable 的数据结构和功能特点,采用 Memtable 和 SSTable 的方式进行存储。在 Cassandra写入数据之前,需要先记录日志( CommitLog ),然后数据开始写入到 Column Family对应的 Memtable中,Memtable 是一种按照 key排序数据的内存结构,在满足一定条件时,再把 Memtable 的数据批量的刷新到磁盘上,存储为SSTable 。

  Voldemort

  Voldemort是一个分布式键-值(Key-value)存储系统,是Amazon’s Dynamo的一个开源克隆。

  1. 支持自动复制数据到多个服务器上。
  2. 支持数据自动分割所以每个服务器只包含总数据的一个子集。
  3. 提供服务器故障透明处理功能。
  4. 支持可拨插的序化支持,以实现复杂的键-值存储,它能够很好的5.集成常用的序化框架如:Protocol Buffers、Thrift、Avro和Java Serialization。
  5. 数据项都被标识版本能够在发生故障时尽量保持数据的完整性而不会影响系统的可用性。
  6. 每个节点相互独立,互不影响。
  7. 支持可插拔的数据放置策略。

  Perst

  Perst 是一个面向对象的开源嵌入式数据库软件,能够有效的处理移动设备上的大量数据。Perst 是McObject 公司发布的一款非常袖珍的开源嵌入式数据库,是一个简单,快速,便捷,面向对象,适合java与.NET 的数据库。Perst 不需要专门的编译器与预处理器,支持ACID 事务。对于在资源受限的移动设备(如手机, PDA等)上存储大量数据和对数据进行频繁的IO 操作往往要消耗很多的设备资源。由于移动设备内存小,性能较差,如果采用关系数据库(如SQLServer2000, Oracle)管理数据,仅靠其有限的内存资源是不能运行这些数据库管理系统的,这样就有必要采用一些特殊的数据库系统。Perst 数据库正是为这类设备研究开发的,它们的作用是在资源受限的设备上完成大量数据的访问操作。其实这些设备系统资源主要消耗在从磁盘上读取数据的IO操作。如何提供一种有效的文件存储策略来降低对磁盘的IO 操作是嵌入式数据库软件设计的主要任务。

  像其他嵌入式数据库一样,Perst没有管理上的代价,但不同的是Perst直接将对象以Java或者C#对象的形式进行存储。因此不需要在对象的内部表现形式和Java/C#表现形式之间转换。这个数据库引擎非常精悍,只有约5000行代码,McObject对此感到骄傲。根据访问模式不同,运行时需要30K到300K的内存。


酷毙
3

雷人

鲜花

鸡蛋

漂亮

刚表态过的朋友 (3 人)

  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部