HugeGraph Database Indexgit
HugeGraph圖數據庫的索引支持比較全面,圖數據庫的索引通常包括幾方面:github
- 圖索引/邊索引(graph-index):主要用於加速獲取頂點的關聯邊,通常使用鄰接表或十字鏈表等方式,也可使用hash索引。hugegraph使用的是鄰接表。
- 超級點索引(vertex-centric-index):主要用於加速獲取超級頂點的部分關聯邊,好比查詢12315號碼這個點最近一週的通話邊。hugegraph經過sortkey實現的,至關於加強版鄰接表。
- 普通屬性索引(secondary-index):主要用於加速根據屬性來檢索頂點、或根據屬性來檢索邊,數據庫通常使用btree或hash實現。
- 可經過比較大小來檢索的屬性索引(range-index):主要用於加速根據屬性範圍來檢索頂點或邊,好比age>18的人,數據庫通常使用btree實現。
- 可根據前綴+比較大小來檢索的屬性索引(shard-index):主要用於加速根據屬性範圍來檢索頂點或邊,好比city=Beijing && age>18的人。
- 可全文檢索的屬性索引(search-index):主要用於加速根據屬性值中的任意文本段或詞語來檢索頂點或邊,好比city contains Bay的人。
以上索引在HugeGraph圖數據庫中均支持,屬性索引在HugeGraph實現根據存儲而定,主要仍是依賴lsm-tree;全文索引的實現原理是對屬性文本分詞後進行存儲索引。數據庫
參考文檔:https://hugegraph.github.io/h...索引