類似于谷歌大表(Google' Gigtable)的開源數據庫

jopen 10年前發布 | 23K 次閱讀 數據庫 NoSQL數據庫

    想到大數據,你第一個會想到Google's Bigtable,其次就是根據其思想設計的開源數據庫HBase。除此之外,你還知道其它的類似的開源數據庫呢?我簡要描述了其它的開源數據庫,僅供了解。</span>


HBase

簡述

  1. ·  編程語言: Java  
  2. ·  主要關注點: 上億級的行百萬級的列數據 Billions of rows X millions of columns  
  3. ·  許可證(License): Apache  
  4. ·  協議(Protocol): HTTP/REST (也有 Thrift)  
  5. ·  概要:模型化谷歌大表  
  6.           使用Hadoop HDFS作為數據存儲  
  7.           Hadoop Map/reduce 框架  
  8.           通過服務器端的掃描和過濾來實現查詢術語推送  
  9.           實時查詢優化  
  10.           高性能的Thrift網管  
  11.           HTTP 支持XML, Protobuf, 和二進制(binary)  
  12.           基于Jruby shell  
  13.           配置文件的改動和較小的升級都會滾動重啟  
  14.           能夠像MySQL一樣隨機訪問系統的性能  
  15.           一個集群可以由幾個不同類型的節點組成  
  16. </ol> </div>



    最佳使用情形: 在大數據集上,Hadoop可能依舊是最佳的方式來運行Map/Reduce 任務,使用HDFS作為數據存儲。
    使用場景: 搜索引擎,分析日志數據,也可以用在任何需要掃描大且少量關聯的二位表。


    Cassandra

    簡述

    1. ·  編程語言 : Java  
    2. ·  主要關注點 : 最佳的大數據和Dynamo   
    3. ·  許可證(License) : Apache  
    4. ·  協議(Protocol) : Thrift 和 一般二進制 CQL3  
    5. ·  概要:為分布式和重復(replication)而調優折中(N, R, W)  
    6.           通過列和區間關鍵字查詢 (需要在你需要搜索的字段中建立標記體(indices))  
    7.           大表的特性:列 , 列家族(column families)  
    8.           能夠被用來作為一個分布式哈希表,使用“像SQL”一樣的語言,CQL(但是不能夠JOIN)  
    9.           數據可以設置過期(在INSERT中設置)  
    10.           寫能夠比讀更快(當讀是磁盤綁定)  
    11.           能夠使用Hadoop的Map/reduce  
    12.           相對于Hadoop/HBase來說,所有的節點是相似的  
    13.           跨數據中心重復中表現得非常好并且數據可靠  
    14.           最佳使用情形: 當你需要的寫多于讀,比如日志操作。  
    15.           最佳使用場合: 銀行, 金融業,數據分析業務。  
    16. </ol>
      </div>

      Hypertable

      簡述

      1. ·  編程語言: C++  
      2. ·  主要關注點 : 更快,比HBase更小  
      3. ·  許可證(License) : GPL 2.0  
      4. ·  協議(Protocol) : Thrift, C++庫, or HQL shell  
      5. ·  概要: 對谷歌大表設計的實現  
      6.          運行在Hadoop的HDFS上  
      7.          使用自己獨有的,像SQL一樣的語言HQL  
      8.          能夠通過關鍵字,單元格來搜索,或者是通過列家族(column families )的值  
      9.          搜索能夠限定到 key/column區間  
      10.          保留最近歷史值  
      11.          表有命名空間  
      12.          能夠使用Hadoop的Map/reduce  
      13. </ol> </div>

        最佳使用情形: 如果你需要一個更好的HBase
        最佳使用場合: 使用情況與HBase一樣,即搜索引擎,分析日志數據,也可以用在任何需要掃描大且少量關聯的二位表。</span>

        Accumulo 

        簡述

        1. ·  編程語言: Java 和C++  
        2. ·  主要關注點 : A BigTable with Cell-level security  
        3. ·  許可證(License) : Apache  
        4. ·  協議(Protocol) : Thrift  
        5. ·  概要:另一種大表的克隆版,也運行在Hadoop之上  
        6.          單元格級別的安全訪問  
        7.          比內存能夠允許的行還用大  
        8.          使用C++ STL 來保持一個內存映射外在的Java  
        9.          Map/reduce使用Hadoop設備,如ZooKeeper  等  
        10.          一些服務器端的編程  
        11. </ol> </div>

          最佳使用情形: 如果你需要一個不同的HBase
          最佳使用場合: 使用情況與HBase一樣,即搜索引擎,分析日志數據,也可以用在任何需要掃描大且少量關聯的二位表。</span>

         本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
         轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
         本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!