Neo4j入門-開始使用


前言

關系,指事物之間相互作用、相互影響的狀態。

數據之間的關系也是如此,數據之間關系的存儲在RDS就已經開始。從數據庫支持的外鍵,到手動建立的關系表,人們采取了許多方法,只為了解決查詢復雜、緩慢等問題。

在NoSQL興起的今天,圖數據庫進入了我們的視野,關系模型靜態、剛性、不靈活的本質在網絡狀的存儲結構里已然不復存在。現在,讓我們以初學者的身份,初探圖數據庫的奧妙。

圖數據庫以圖形結構(即網絡狀)的形式存儲數據,他以“節點”為基本的存儲單位,“節點”之間則以“關系”作為關聯,“節點”與“關系”中可以包含許多“屬性”,正如RDS里的“行”、“列”,圖數據庫以圖形結構進行存儲。

從網絡上找到的一個對比圖

Neo4j

Neo4j是一個世界領先的圖數據庫,具有本機圖形存儲與處理功能,具有展示方便、支持面廣、性能優異等優點。

包含有靈活的架構、完整的事務管理、集群以提升高可用與性能、強大的Cypher(CQL)查詢語言、可視化Web界面 Neo4j Browser、驅動支持時下流行的語言與框架、方便的數據導入、成熟的雲端服務等特性。

neo4j的標志

開始使用

Neo4j的安裝各系統皆不相同,官方下載地址也有安裝方式。

地址如下:https://neo4j.com/download/

社區版的下載地址如下:https://neo4j.com/download-center/#community

(PS:支持多系統、多種安裝方式,大多可以直接安裝,改個配置就能用了)

默認的端口:

http:7474

https:7473

bolt:7687

默認的賬戶名與密碼:

賬號:neo4j

密碼:neo4j

Neo4j瀏覽器

Neo4j Browser即Neo4j瀏覽器頁面是Neo4j自帶的可視化界面,在啟動完Neo4j后直接訪問 http://你的域名:7474/browser/ 即可訪問,首次訪問需要設置密碼。

在設置完賬號密碼之后,即進入了主頁面,主頁面主要分為三個部分,即左邊的菜單欄,右下邊的數據展示部分,右上方的CQL錄入部分。
其中菜單欄分為:

數據庫信息:展示數據庫已有的數據信息

收藏的CQL:展示已收藏的CQL,也包含了CQL的語句樣例

文件資料:包含了基礎教程、幫助、相關資源等信息

系統設置:主要為頁面設置、結果展示設置、圖形可視化設置

數據庫信息菜單欄則分為:

節點列表:展示所有節點

關系列表:展示所有關系

字段列表:展示了所有節點的所有字段

連接信息:包含了當前的連接信息,以及一些操作語句

數據庫信息包含了數據庫版本信息以及系統信息查詢語句

結果展示區域則分為:

(圖形模式下,將鼠標移至節點或關系上即可查看詳情,單擊即可進行隱藏鎖定等操作)

若使用表格的方式查看結果:

若使用文本的方式查看結果:

SpringBootData

Neo4j支持多種語言,無論使用Java,C#,Python,Ruby,JavaScript,PHP,R還是Go,Neo4j社區都構建了驅動程序,使得與Neo4j的HTTP API的交互變得容易。同時支持流行的框架,例如Spring Data,Django ORM,Laravel,JDBC等。這里,我們只說說SpringBootData。

SpringBootData使用Neo4j所需要的依賴如下:

  <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-data-neo4j</artifactId>
       <version>version</version>
  </dependency>
  
  <dependency>
       <groupId>org.springframework.data</groupId>
       <artifactId>spring-data-neo4j</artifactId>
       <version>version</version>
  </dependency>

基礎的配置文件如下:

spring:
  data:
    neo4j:
      uri: bolt://www.clevercoder.cn/:7687
      username: neo4j
      password: neo4j

更多配置:

spring:
    data:
        neo4j:
            connection:
                pool:
                    size:#連接池大小
                livenes:
                  check:
                    timeout:#see Java driver doc
            encryption:
                level:#加密級別
            trust:
                strategy:#信任策略,默認TRUST_ALL_CERTIFICATES(信任所有證書)
                certificate:
                    file:#若填寫了TRUST_CUSTOM_CA_SIGNED_CERTIFICATES
                    #或TRUST_SYSTEM_CA_SIGNED_CERTIFICATES需要的文件路徑     
            verify:
                connection: #see Java driver doc

在使用SpringBootData的情況下,配置完成即可直接使用了,后續將介紹如何方便快捷的在SpringBootData里使用Neo4j。

結語

neo4j作為時下流行的圖數據庫,java對其的支持也非常完善,你可以很方便的使用java原生的​GraphDatabaseService類來操作,也能通過SpringData的Repository來進行操作。更加方便的是Neo4j自帶了圖形化管理界面,哪怕是沒有代碼基礎的人也可以很方便的使用其進行作圖,例如知乎就有答主使用Neo4j制作明星關系圖。我們也可以很方便的在頁面上看到代碼操作的結果。

后續我們將分別講解Neo4j各種使用方式,敬請關注!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM