neo4j查詢效率優化

目錄

硬件方面

使用固態硬盤

使用更大的內存條

軟件方面

優化neo4j配置文件

增加索引

neo4j索引

Cypher語句


硬件方面

使用固態硬盤

固態電子存儲芯片陣列而製成的硬盤,I/O性能相對於傳統硬盤大大提升,芯片的工作溫度範圍很寬,商規產品(0~70℃),工規產品(-40~85℃)。

使用更大的內存條

內存(Memory)也被稱爲內存儲器,其作用是用於暫時存放CPU中的運算數據,以及與硬盤等外部存儲器交換的數據。只要計算機在運行中,CPU就會把需要運算的數據調到內存中進行運算,當運算完成後CPU再將結果傳送出來,內存的運行也決定了計算機的穩定運行。

軟件方面

優化neo4j配置文件

neo4j基於java實現,爲neo4j增加jvm虛擬環境的內存,即擴充其工作空間,可以加快運行速度。

配置文件一般在安裝目錄下

conf/neo4j.conf

 打開文件,找到下面兩行代碼

dbms.memory.heap.initial_size=512m;
dbms.memory.heap.max_size=512m

512m即是堆內存的大小,如果數據量很大,那麼這裏適當增加內存配置可有益於運行速度,注意數值不能超過物理內存大小。

增加索引

數據庫索引好比是一本書前面的目錄,能加快數據庫的查詢速度。如果沒有索引,必須遍歷整個表,有了索引之後,直接在索引裏面找到符合條件的結果,就可以得知這一行的位置

neo4j索引

  • 手動索引:手動方式創建,索引不會隨着數據的改變而自動更新,較爲麻煩。
  • 自動索引:通過修改配置文件來創建索引,neo4j 3.x版本中已經摒棄了用該方法。
  • 模式索引:每一個索引會對應一個標籤和一組屬性,無論是更新還是刪除節點,索引都會自動更新或者刪除。

Cypher語句

CREATE INDEX ON: 標籤(待查字段)

索引建立後狀態爲Populating,要重啓數據庫並關閉纔會生效。可用“:schema”指令查看索引是否是ONLINE狀態。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章