成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

圖數據庫初探之neo4j的簡單應用

數據庫 其他數據庫
neo4j是一種對圖數據進行存儲的數據庫,也是一種嵌入式數據庫。它可以將復雜的圖數據以節點和邊形式存儲。本文主要介紹了neo4j數據庫的一些作用和用法,希望能對您有所幫助。

本文我們將分別從什么是neo4j、neo4j作用和neo4j用法幾個方面來簡單介紹圖數據庫neo4j的知識,希望能夠給您帶來收獲。

1、什么是neo4j

neo4j是一種圖數據庫,同時它也是一種嵌入式數據庫。它對圖數據是以節點和邊(關系)模式進行存儲。每個節點可以包含一系列信息,通過Node類里面的setProperty()方法對節點信息進行存儲,Node也可以使用createRelationshipTo()方法實現個節點和其他節點的聯系,并且該方法返回的是一個Relationship對象,我們也可以對Relationship設置屬性,也就是節點和節點之間的關系屬性。什么叫關系屬性?例如:person1àperson2,person1和person2的關系可以是朋友也可以是同學還可以是親人,這里的朋友、同學、親人就是這里的Relationship的屬性。那么關系屬性就是描敘兩個節點之間的關系類型。這就方便在對節點進行查找的時候對節點進行過濾。如下圖:

圖數據庫初探之neo4j的簡單應用

2、neo4j作用

上面對neo4j進行了簡單的介紹,可知neo4j是一種對圖數據進行存儲,是一種嵌入式數據庫。它可以將復雜的圖數據以節點和邊形式存儲。例如:在我們現實社會中人與人之間的關系,這就是一個復雜的圖,朋友也可以是多種多樣的,怎樣描敘這樣復雜的圖呢?Neo4j提供了比較簡單的描敘方式。如圖:

圖數據庫初探之neo4j的簡單應用

就上面的圖可以根據neo4j提供的方法獲取***層朋友和第二層朋友:   TraversalDescriptiontd = Traversal.description().breadthFirst().relationships(RelTypes.KNOWS, Direction.OUTGOING).filter(Traversal.returnAllButStartNode() );    上面的代碼所執行的是:同個一個事務獲取一個事務描敘,然后根據這個事務描敘在一存儲的圖中過濾出我們想要的節點,這個事務描敘***個是進行廣度優先搜索(breadthFirst),接下類對節點關系進行過濾。Direction是指定關系的方向,RelTypes就是關系的類型。這樣就可以獲得相應的結果。

3、neo4j用法簡單介紹

此處就neo4j的一個例子進行講解(如圖):

圖數據庫初探之neo4j的簡單應用

上面圖是一個部門結構圖,這個在我們現實生活中也是比較常見的。如:我們學校,它就是一個由各個部門構成的。如何對這種圖進行查找,以獲得我們想要的信息呢?

1)、獲得各個部門的名:

 

  1. TraversalDescription td =Traversal.description().breadthFirst().relationships(RoleRels.ROOT, Direction.INCOMING).relationships(RoleRels.PART_OF, Direction.INCOMING).filter(Traversal.returnAllButStartNode()); 

 

2)、獲得所有的admin

 

  1. TraversalDescription td =Traversal.description().breadthFirst().relationships(RoleRels.PART_OF, Direction.INCOMING).relationships(RoleRels.MEMBER_OF, Direction.INCOMING).filter(Traversal.returnAllButStartNode() ); 

 

3)、更具個人信息獲得他所在的所有部門

 

  1. Node jale = getUserByName( "Jale" );  
  2.  
  3. TraversalDescription td = Traversal.description().depthFirst().relationships(RoleRels.MEMBER_OF, Direction.OUTGOING).relationships(RoleRels.PART_OF, Direction.OUTGOING).filter(Traversal.returnAllButStartNode() ); 

 

附錄:

neo4j還提供了兩種遍歷的方式:一種是深度搜索,第二種是廣度搜索。也提供了兩種搜索算法,一種是A*算法,第二種是dijkstra算法。提高了編程人員的工作效率。同時neo4j也有簡歷索引的功能,方便了多節點的查找。

關于neo4j圖數據庫的知識就介紹到這里,希望能夠帶給您收獲,謝謝!

【編輯推薦】

  1. 通過SDE服務直連Oracle數據庫的配置
  2. 一些很實用的Oracle數據庫優化策略總結篇
  3. Java和Ibatis調用存儲過程并取得返回值詳解
  4. Oracle、MySQL和PostgreSQL的比較與選擇
  5. 一個系統崩潰造成Oracle數據庫無法啟動的恢復實例

 

責任編輯:趙鵬 來源: CSDN博客
相關推薦

2017-07-28 15:12:28

Neo4j圖數據庫

2022-11-18 17:53:03

Neo4j

2022-04-13 11:32:45

Neo4j圖數據庫

2021-12-27 07:31:37

JavaNeo4J數據庫

2018-05-03 15:40:33

2011-09-22 16:46:02

Neo4j圖形數據庫數據庫

2022-01-17 14:34:59

數據平臺數據數字化

2022-01-17 17:10:18

Neo4j 圖數據庫

2018-05-16 08:26:39

知識圖譜Neo4j

2024-06-03 10:53:18

LLMRAGGraphRAG

2022-02-15 08:22:28

Neo4jSpring數據庫

2021-12-03 20:33:08

計算

2021-12-22 07:31:18

RedisNoSQL數據庫

2024-08-08 08:31:32

SpringNeo4j優化

2017-04-24 20:30:47

數據庫工具導入數據

2015-03-09 11:11:23

圖形數據庫數據庫流行度DB-engines

2023-10-12 08:59:52

Docker AI生成式 AI

2015-09-28 08:57:06

Ruby APPNeo4j

2021-10-27 17:20:23

圖數據數據庫

2013-03-06 16:06:31

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩欧美中文 | 91天堂网| 99re6在线视频精品免费 | 国产亚洲精品精品国产亚洲综合 | 91久久国产综合久久 | 中文字幕在线播放第一页 | 日韩精品视频在线免费观看 | 成人看片在线观看 | 欧美伊人久久久久久久久影院 | 亚洲天堂999| 成人精品一区二区三区 | 亚洲一页 | 国产一级视频免费播放 | 一区二区在线 | 国产精品一区二区不卡 | 国产精品久久久久久二区 | 欧美一级二级在线观看 | 欧美日韩精品久久久免费观看 | 日韩欧美中文字幕在线观看 | 国产午夜亚洲精品不卡 | 欧美日产国产成人免费图片 | 亚洲精品一区中文字幕乱码 | 国产精品久久久久无码av | 91精品久久久久 | 国产精品18毛片一区二区 | 日韩在线小视频 | 国产91网址 | 欧美日韩精品专区 | 欧美日韩国产中文字幕 | 亚洲资源在线 | 亚洲 欧美 日韩 在线 | 国产成人精品综合 | 欧美日韩精品中文字幕 | 亚洲美女一区 | 久久aⅴ乱码一区二区三区 亚洲欧美综合精品另类天天更新 | 亚洲成av| 欧美综合国产精品久久丁香 | 天天天堂| 国产精品视频一 | 亚洲国产精品一区在线观看 | 一区二区视频在线观看 |