成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Java開源NoSQL數據庫大全

數據庫 其他數據庫
本文轉自Java開源大全,列舉了與Java相關的NoSQL數據庫,其中包括Java寫成的,Java版本的,或者能與Java緊密結合的各種NoSQL數據庫。對列舉到的NoSQL都進行了比較詳盡的描述。推薦給各位使用Java的朋友們。

 

HBase

HBase是一個分布式的、面向列的開源數據庫,該技術來源于Chang etal所撰寫的Google論文“Bigtable:一個結構化數據的分布式存儲系統”。就像Bigtable利用了Googl文件系統(FileSystem)所提供的分布式數據存儲一樣,HBase在Hadoop之上提供了類似于Bigtable的能力。HBase是Apache的 Hadoop項目的子項目。HBase不同于一般的關系數據庫,它是一個適合于非結構化數據存儲的數據庫.另一個不同的是HBase基于列的而不是基于行的模式。HBase使用和Bigtable非常相同的數據模型。用戶存儲數據行在一個表里。一個數據行擁有一個可選擇的鍵和任意數量的列。表是疏松的存儲的,因此用戶可以給行定義各種不同的列。HBase主要用于需要隨機訪問,實時讀寫你的大數據(Big Data)。

Berkeley DB Java Edition

Berkeley DB Java Edition (JE)是一個完全用JAVA寫的,它適合于管理海量的,簡單的數據。能夠高效率的處理1到1百萬條記錄,制約JE數據庫的往往是硬件系統,而不是JE本身。多線程支持,JE使用超時的方式來處理線程間的死瑣問題。Database都采用簡單的key/value對應的形式。事務支持。允許創建二級庫。這樣我們就可以方便的使用一級key,二級key來訪問我們的數據。支持RAM緩沖,這樣就能減少頻繁的IO操作。支持日志。數據備份和恢復。游標支持。

Neo4j

Neo4j是一個嵌入式,基于磁盤的,支持完整事務的Java持久化引擎,它在圖像中而不是表中存儲數據。Neo4j提供了大規模可擴展性,在一臺機器上可以處理數十億節點/關系/屬性的圖像,可以擴展到多臺機器并行運行。相對于關系數據庫來說,圖形數據庫善于處理大量復雜、互連接、低結構化的數據,這些數據變化迅速,需要頻繁的查詢——在關系數據庫中,這些查詢會導致大量的表連接,因此會產生性能上的問題。Neo4j重點解決了擁有大量連接的傳統RDBMS在查詢時出現的性能衰退問題。通過圍繞圖形進行數據建模,Neo4j會以相同的速度遍歷節點與邊,其遍歷速度與構成圖形的數據量沒有任何關系。此外,Neo4j還提供了非常快的圖形算法、推薦系統和OLAP風格的分析,而這一切在目前的RDBMS系統中都是無法實現的。

Neo是一個網絡——面向網絡的數據庫——也就是說,它是一個嵌入式的、基于磁盤的、具備完全的事務特性的Java持久化引擎,但是它將結構化數據存儲在網絡上而不是表中。網絡(從數學角度叫做圖)是一個靈活的數據結構,可以應用更加敏捷和快速的開發模式。

你可以把Neo看作是一個高性能的圖引擎,該引擎具有成熟和健壯的數據庫的所有特性。程序員工作在一個面向對象的、靈活的網絡結構下而不是嚴格、靜態的表中——但是他們可以享受到具備完全的事務特性、企業級的數據庫的所有好處。

由于使用了“面向網絡的數據庫”,人們對Neo充滿了好奇。在該模型中,以“節點空間”來表達領域數據——相對于傳統的模型表、行和列來說,節點空間是很多節點、關系和屬性(鍵值對)構成的網絡。關系是***級對象,可以由屬性來注解,而屬性則表明了節點交互的上下文。網絡模型***的匹配了本質上就是繼承關系的問題域,例如語義Web應用。Neo的創建者發現繼承和結構化數據并不適合傳統的關系數據庫模型:

  1. 對象關系的不匹配使得把面向對象的“圓的對象”擠到面向關系的“方的表”中是那么的困難和費勁,而這一切是可以避免的。
  2. 關系模型靜態、剛性、不靈活的本質使得改變schemas以滿足不斷變化的業務需求是非常困難的。由于同樣的原因,當開發小組想應用敏捷軟件開發時,數據庫經常拖后腿。
  3. 關系模型很不適合表達半結構化的數據——而業界的分析家和研究者都認為半結構化數據是信息管理中的下一個重頭戲。
  4. 網絡是一種非常高效的數據存儲結構。人腦是一個巨大的網絡,萬維網也同樣構造成網狀,這些都不是巧合。關系模型可以表達面向網絡的數據,但是在遍歷網絡并抽取信息的能力上關系模型是非常弱的。

雖然Neo是一個比較新的開源項目,但它已經在具有1億多個節點、關系和屬性的產品中得到了應用,并且能滿足企業的健壯性和性能的需求:

完全支持JTA和JTS、2PC分布式ACID事務、可配置的隔離級別和大規模、可測試的事務恢復。這些不僅僅是口頭上的承諾:Neo已經應用在高請求的24/7環境下超過3年了。它是成熟、健壯的,完全達到了部署的門檻。

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的內存。

Terrastore

Terrastore是一個基于Terracotta(一個業界公認的、快速的分布式集群組件)實現的高性能分布式文檔數據庫。可以動態從運行中的集群添加/刪除節點,而且不需要停機和修改任何配置。支持通過http協議訪問Terrastore。Terrastore提供了一個基于集合的鍵 /值接口來管理JSON文檔并且不需要預先定義JSON文檔的架構。易于操作,安裝一個完整能夠運行的集群只需幾行命令。

HyperGraphDB

HyperGraphDB是一個通用,可擴展,可移植的,分布式,可嵌入的開源數據存儲機制。專為人工智能和語義Web項目而設計。它也可以用來作為一個適用于各種規模項目的嵌入式面向對象數據庫。HyperGraphDB是一個基于Java的產品,構建在BerkeleyDB存儲類庫之上。它的主要特性包括:

  1. 支持廣義圖存儲。開放,可擴展的類型系統。
  2. 基本查詢系統和圖形的遍歷算法。
  3. 支持Java對象直接存儲。
  4. 線程安全的事務處理。
  5. 提供P2P框架實現數據分發。

OrientDB

OrientDB是兼具文擋數據庫的靈活性和圖形數據庫管理鏈接能力的可深層次擴展的文檔-圖形數據庫管理系統。可選無模式、全模式或混合模式下。支持許多高級特性,諸如ACID事務、快速索引,原生和SQL查詢功能。可以JSON格式導入、導出文檔。若不執行昂貴的JOIN操作的話,如同關系數據庫可在幾毫秒內可檢索數以百記的鏈接文檔圖。

HandlerSocket client for java

HandlerSocket是一個MySql插件,可以將mysql作為NoSQL來使用。通過這個插件,你可以直接跟MySql后端的存儲引擎做key-value式的交互,省去了MySql上層的SQL解釋、打開關閉表、創建查詢計劃等CPU消耗型的開銷。hs4j是 HandlerSocket的一個java客戶端。HS4J的使用很簡單,所有的操作都通過HSClient這個接口進行。HS4J同樣支持連接池,可以在構建客戶端的時候傳入連接池大小。

相關文章:http://rdc.taobao.com/team/jm/archives/545

Tair: 淘寶的key/value解決方案

Tair是一個分布式的key/value結構數據的解決方案,系統默認支持基于內存和文件的存儲引擎,對應于通常我們所說的緩存和持久化存儲。

Tair具有良好的架構,使得其在可擴展性、數據安全性方面都有較好的表現:

  1. 基于對照表的靈活、良好的可擴展性
  2. 輕量級的configserver
  3. 抽象的存儲引擎層,支持添加新的存儲引擎
  4. 自動的復制和遷移,對用戶透明
  5. 多機架和多數據中心的支持
  6. 插件容器

Tair除了基本的key/value操作外,還提供了一些實用的功能,使得其適用的場景更多:

  1. 數據的version支持
  2. 原子計數器支持
  3. item支持

相關文章:http://rdc.taobao.com/blog/cs/?p=302#more-302

LucidDB

LucidDB是唯一一款專注于數據倉庫和商務智能的開源RDBMS,它使用了列存儲架構,支持位圖索引,哈希連接/聚合和頁面級多版本,大部分數據庫最初都注重事務處理能力,而分析功能都是后來才加上去的。相反,LucidDB中的所有組件從一開始就是為滿足靈活的需求,高性能數據集成和大規模數據查詢而設計的,此外,其架構設計徹底從用戶出發,操作簡單,完全無需DBA。

LucidDB對硬件要求也極低,即使不搭建集群環境,在單一的Linux或Windows服務器上也能獲得極好的性能。***版本還加入了對Mac OS X和Windows 64位的支持,官方網站上的文檔和教程也非常豐富,非常值得你體驗一下。

Couchdb4j

Couchdb4j是一個Java開源類庫用于與基于JSON的CouchDB數據庫交互。

【編輯推薦】

  1. 設計實例對比:MySQL vs MongoDB
  2. 主流NoSQL數據庫評測之HBase
  3. MongoDB基于Java、PHP的一般操作和用戶安全設置
  4. HBase數據庫性能調優

 

責任編輯:艾婧 來源: 博客園
相關推薦

2017-11-08 09:22:36

數據庫NoSQLArangoDB

2024-02-02 10:51:53

2021-09-28 09:25:05

NoSQL數據庫列式數據庫

2011-10-09 09:38:03

OracleNoSQL

2019-03-20 15:59:11

NoSQLRedis數據庫

2019-07-08 10:36:34

數據庫WebNoSQL

2010-04-01 09:45:38

NoSQL

2024-03-28 09:00:00

NoSQL數據庫

2011-04-14 11:14:21

OracleNoSQLMySQL

2011-05-16 10:29:44

HandlerSockNoSQL

2011-07-13 09:58:15

HBase

2014-02-27 10:08:33

NoSQL

2019-07-23 11:41:45

數據庫SQLDocker

2011-03-25 14:40:29

Trinity數據庫

2020-10-31 22:01:40

NoSQL數據庫

2017-05-25 10:11:46

數據庫令牌節點

2010-08-13 16:40:27

CouchDBAndroid SDKAndroid

2023-03-05 16:25:38

NoSQL數據庫

2025-01-10 09:25:10

NOSQL數據庫ACID

2019-09-11 15:10:01

NoSQLSQL數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国内毛片毛片毛片毛片 | 国产又色又爽又黄又免费 | 超黄毛片 | 日韩欧美国产一区二区三区 | 久久久久久久国产精品影院 | 国产精品欧美一区喷水 | 国产精品亚洲视频 | 亚洲国产精品一区 | 亚洲喷水 | 久久久不卡网国产精品一区 | 国产一区在线免费观看 | 日韩二区 | 国产一区欧美 | 国产精品国产三级国产aⅴ无密码 | 91天堂| 亚洲欧洲综合av | 亚洲在线免费 | 日韩视频中文字幕 | 成人av片在线观看 | 国产成人jvid在线播放 | 91av视频在线观看 | 97在线观看 | 国产精品1 | 久久激情视频 | 99re| 国产在线一区二 | 在线看亚洲 | 狠狠骚 | 日本免费一区二区三区四区 | 日日综合 | 精品欧美一区免费观看α√ | 日本一区二区三区四区 | 色婷婷一区 | 亚洲天堂一区二区 | 91国产精品在线 | 天天操天天干天天曰 | 亚洲精品乱码久久久久久9色 | 91超碰caoporn97人人 | 久久久久欧美 | 中文字幕色站 | 91在线看片 |