JanusGraph是一個圖形數據庫引擎。 JanusGraph本身專注於壓縮圖序列化、豐富圖數據建模、高效的查詢執行。 此外,JanusGraph利用Hadoop進行圖分析和批處理。JanusGraph為數據持久化,數據索引和客戶端訪問實現了強大的模塊化接口。 JanusGraph的模塊化架構使其能夠與各種存儲,索引和客戶端技術進行互操作; 這也使得JanusGraph升級對應的組件過程變得更加簡單。
在JanusGraph和磁盤之間有一個或多個存儲和索引適配器。 JanusGraph標配以下適配器,但JanusGraph的模塊化架構支持第三方適配器。
數據存儲:
索引,用於加快訪問速度並支持更復雜的查詢語句:
總體來講,應用程序可以通過兩種方式與JanusGraph進行交互:
- 嵌在應用程序中的JanusGraph在同一個JVM中執行Gremlin語句。 查詢任務、JanusGraph緩存和事務處理都在同一個JVM中,而后端數據檢索可能是在本地或遠程。
- 通過向服務器提交Gremlin查詢語句來與本地或遠程JanusGraph實例交互。 JanusGraph本身支持Apache TinkerPop棧的Gremlin Server組件。
圖 2.1. 高層JanusGraph架構和上下文