1. JanusGraph的優點

JanusGraph 旨在提供不止一臺機器的圖數據的存儲和計算能力。實時的圖數據遍歷和分析查詢是JaunsGraph的基本特性。本節將講解JanusGraph的特性和所支持的底層持久性解決方案。數據庫

  1. JanusGraph 基本特性編程

    • 支持海量的圖數據。 JanusGraph所支持的圖的大小取決於集羣中機器的數量。
    • 支持大併發下圖的事務和操做處理。 JanusGraph的事務處理能力與集羣中的機器數量成正比,而且可以毫秒級的響應在海量圖數據上的複雜的遍歷查詢操做。
    • 經過Hadoop框架支持全量圖分析和批量圖處理。
    • 支持對大圖的頂點和邊進行地理位置,數值範圍和全文的檢索。
    • 原生支持Apache TinkerPop圖數據模型。
    • 原生支持圖形遍歷語言Gremlin。
    • 易於使用,經過Gremlin Server實現與編程語言無關的鏈接。
    • 根據不一樣圖數量級的配置來調整性能。
    • 以節點爲中心的索引提供節點級別的查詢,來解決超級節點問題。
    • 提供優化的磁盤存儲方式,來提升磁盤的存儲效率和訪問速度。
    • 源代碼遵循Apache 2 license的開源許可。
  2. JanusGraph基於Apache Cassandra的優點後端

    • 持續可用,沒有單點故障。
    • 沒有主從架構下的圖讀寫瓶頸。
    • 彈性擴展,支持增長和減小機器。
    • 使用緩存來確保數據持續可用。
    • 能夠經過增長集羣中的機器來擴大緩存。
    • 基於Apache Hadoop。
    • 源代碼遵循Apache 2 license的開源許可。
  3. JaunsGraph基於Hbase的優點緩存

    • 基於Apache Hadoop的生態系統。
    • 支持強一致性。
    • 支持更多機器的線性擴展。
    • 讀寫嚴格一致。
    • 基於Hbase tables便於Hadoop MapReduce計算。
    • 支持經過JMX查看性能指標。
    • 源代碼遵循Apache 2 license的開源許可。
  4. JanusGraph和CAP理論微信

    Despite your best efforts, your system will experience enough faults that it will have to make a choice between reducing yield (i.e., stop answering requests) and reducing harvest (i.e., giving answers based on incomplete data). This decision should be based on business requirements.架構

    ​ -- Coda Hale併發

    當咱們使用數據庫時,須要充分考慮CAP理論(C =一致性,A =可用性,P =可分區性)。 JanusGraph支持了3種後端存儲:Apache Cassandra,Apache HBase和Oracle Berkeley DB Java Edition。 注意,BerkeleyDB JE是一個非分佈式數據庫,一般僅用來測試和學習JanusGraph。框架

    HBase以可用性爲代價優先考慮強一致性。 Cassandra以一致性爲代價優先考慮可用性。編程語言

掃碼關注微信公衆號,更好的交流 分佈式

掃碼關注微信公衆號,更好的交流
相關文章
相關標籤/搜索