国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Neo4j 學習筆記1

這篇具有很好參考價值的文章主要介紹了Neo4j 學習筆記1。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

基礎知識

NoSQL (Neo4j) 比MySQL查詢速度快很多,這與圖結(jié)構有關,MySQL的查詢時間隨數(shù)據(jù)庫大?。ú樵兩疃龋┲笖?shù)增長,而Neo4j使用遍歷API的查詢時間是線性增長。
SQL是關系型技術使用的一種語言,全稱是Structured Query Language,是“結(jié)構化查詢語言”。
實際上NoSQL數(shù)據(jù)庫應該屬于非關系數(shù)據(jù)庫,其中包含圖形數(shù)據(jù)庫,Neo4j就是一種通用圖形數(shù)據(jù)庫。

NoSQL的分類

  • 主鍵值存儲:處理大量并發(fā)訪問數(shù)據(jù),比如緩存。存在哈希表中使用put-get(write-read)操作
    • 緩存,快速讀取訪問簡單域,大規(guī)模并發(fā)系統(tǒng)
    • Redis, Memcached, Tokyo Cabinet
  • 列族存儲:分布式主鍵值,大數(shù)據(jù)時保持高性能和高可用性
    • 大規(guī)模寫入,并發(fā)數(shù)據(jù)訪問(讀寫)
    • Google BigTable, Cassandra,Apache HBase
  • 面向文檔的數(shù)據(jù)庫:簡單文件,無架構,可以添加自包含文件和關聯(lián)關系。類似以文件作為鍵值。
    • 當域模型是自然文件,自然文件數(shù)據(jù)結(jié)構簡化開發(fā),高可擴展系統(tǒng)
    • MongoDB, CouchDB
  • 圖形數(shù)據(jù)庫:數(shù)據(jù)以非自然方式存儲,圖形遍歷查詢效率性能好
    • 互聯(lián)數(shù)據(jù),節(jié)點關系表示的域,社交網(wǎng)絡,推薦引擎,訪問控制列表
    • Neo4j, AllegroGraph, OrientDB

Neo4j理解

與ACID兼容,為原子性A,一致性C,隔離性I,持久性D。是一個事務數(shù)據(jù)庫

Neo4j版本

目前已更新到版本5,可以分多種版本

  • Neo4j Server
    • Neo4j Enterprise 企業(yè)版,比社區(qū)版多一部分功能,支持數(shù)據(jù)庫集群,對超大規(guī)模數(shù)據(jù)存儲的支持,對更多CPU內(nèi)核查詢執(zhí)行優(yōu)化,在線備份等DBA功能,其他組件比如Bloom
    • Neo4j Community 社區(qū)版,完全開源的Java軟件項目,GPL v3開源協(xié)議
    • Neo4j Desktop 桌面端,包含試用的企業(yè)版,有應用管理器,圖形化界面
  • Neo4j Driver
  • Neo4j Integration & Connectors

使用方式

  1. Cypher圖數(shù)據(jù)庫查詢語言
    Cypher可以在Neo4j Browser1 或者通過瀏覽器中執(zhí)行,也可以在cypher-shell2中、通過命令行執(zhí)行,或者作為過程參數(shù)在Neo4j應用客戶端執(zhí)行。

  2. Neo4j應用客戶端Desktop
    客戶端應用可以以類似JDBC3或ODBC4的方式從遠程訪問數(shù)據(jù)庫、提交Cypher查詢,并接收返回結(jié)果。Neo4j官方提供的客戶端驅(qū)動支持以下5種語言:Java, JavaScript, Net, Python, Go
    語言的驅(qū)動可以從這里訪問:neo4j官方
    Neo4j的社區(qū)用戶還開發(fā)了其他語言驅(qū)動,包括C/C++、R等;以及應用開發(fā)框架來簡化實現(xiàn)、封裝操作,最常用的當屬SDN(數(shù)據(jù)集成)5(官方,教程)、以及OGM(對象封裝)6

  3. Neo4j服務器端擴展
    Neo4j是純Java應用,支持在服務器端部署的JAR包來擴展數(shù)據(jù)庫功能。JAR包中的過程和函數(shù)可以在Cypher語句中調(diào)用。最有名的服務器端擴展有:APOC,ALGO(最短路徑搜索,中心性,社區(qū)檢測,相似度,鏈接預測功能)。服務器端擴展可以使用Neo4j核心數(shù)據(jù)庫提供的遍歷框架(Traversal Framework) ,以及核心API(Core API)來實現(xiàn)需要的功能。

桌面端下載安裝

官網(wǎng)前往官網(wǎng)下載并安裝
企業(yè)版本收費,桌面版本與社區(qū)版本均免費,區(qū)別在于桌面端有可視化客戶端,社區(qū)版本運行都是在命令行。
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記

Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
剩下就是填表下載,軟件免費,驗證郵箱注冊即可??梢赃x擇安裝位置和數(shù)據(jù)存儲位置,由于一般數(shù)據(jù)庫較大,數(shù)據(jù)存儲位置盡量留較多的存儲空間,不建議放C盤。

桌面端基本使用

第一次打開軟件速度較慢
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
提示更新時暫時沒有更新,選了later
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
桌面端菜單欄包括:項目,數(shù)據(jù)庫和圖軟件。
項目欄一個項目可以調(diào)用多個數(shù)據(jù)庫,可以是本地數(shù)據(jù)庫,也可以是遠程數(shù)據(jù)庫。新建本地數(shù)據(jù)庫時可以改變Neo4j的版本,如果存在未使用過的版本,新建后會自動下載。
數(shù)據(jù)庫欄鏈接的數(shù)據(jù)庫會在按照版本排列,數(shù)據(jù)庫有紅色stop,黃色Starting和綠色Active三種狀態(tài)
圖軟件當數(shù)據(jù)庫運行時,可以在圖軟件中使用Neo4j Browser工具進行手動輸入數(shù)據(jù)?;蛘咧苯觨pen里面選擇打開方式為Neo4j Browser。

Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記

Neo4j Browser

Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
Database information里面包括節(jié)點,關系,屬性值,數(shù)據(jù)庫連接信息和數(shù)據(jù)庫信息介紹。通過選中可以在右邊打開新窗口進行可視化。
右上為命令行,可以使用cypher語言來新建節(jié)點和關系。

create (Variable:Label{Key1:Value1,......)})return Variable
create(n:大學{name:“武漢大學”}),(:大學{name:“北京理工大學”})
create (n:Stock{name:'安琪酵母',code:'600298',launchDate:date("2000-08-18")})return n
create(n:Stock{name:'招商銀行',code:'600036',launchDate:date("2002-04-09")}),(:Stock{name:'中科創(chuàng)達',code:'300496',launchDate:date("2015-12-10")}),(:Stock{name:'華工科技',code:'000988',launchDate:date("2000-06-08")}),(:Stock{name:'國信證券',code:'002736',launchDate:date("2014-12-29")})
MATCH(p1:`大學`),(p2:`院系`)Create(p1)-[r:院系]->(p2)
//點擊運行

刪除節(jié)點

//根據(jù)id刪除節(jié)點
MATCH (r)
WHERE id(r) = 6
DELETE r

查詢節(jié)點

MATCH(a:Stock)WHERE a.name = '安琪酵母' RETURN a

Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
隱藏節(jié)點,顯示屬性(關系)

查詢某個標簽的所有節(jié)點

MATCH(a:Stock)  RETURN a

查詢節(jié)點間關系

MATCH(:Stock{name:'安琪酵母'})-[r]->(:Province{name:'湖北'}) RETURN type(r)

獲取該節(jié)點的所有關系類型

MATCH(:Stock{name:'安琪酵母'})-[r]->() RETURN type(r)

刪除節(jié)點(先刪除關系后才可以刪除節(jié)點)

MATCH(a:Stock)WHERE a.name='中科創(chuàng)達' DELETE a

刪除某標簽所有節(jié)點或所有節(jié)點

MATCH(n:Stock)
DELETE n
//
MATCH(n)
DELETE n

刪除節(jié)點間關系,該節(jié)點所有的關系,標簽的所有關系,刪除所有

MATCH(:Stock{name:'安琪酵母'})-[r]->(:Province{name:'湖北'})DELETE r
\\
MATCH(:Stock{name:'安琪酵母'})-[r]->()DELETE r
\\
MATCH(:Stock)-[r]->()DELETE r
\\
MATCH(n)
OPTIONAL MATCH (n)-[r]-()
DELETE n,r

更新

  • 增加節(jié)點屬性MATCH(a:Stock)WHERE a.name='安琪酵母'SET a.abbreviation='AQJM'RETURN a
  • 刪除節(jié)點屬性MATCH(a:Stock)WHERE a.name='安琪酵母'REMOVE a.abbreviation

Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
導入CSV文件(如果包含中文需要使用UTF-8編碼),刪除所有

LOAD CSV WITH HEADERS FROM 'file:///exchange.csv'AS line CREATE(:Exchange{name:line.name,chinesename:line.chinesename,id:line.id})
\\
LOAD CSV WITH HEADERS FROM 'file:///Stocks-exchange.csv'AS line MATCH(from:Stock{cocode:line.stock_code}),(to:Exchange{id:line.exchange_id})MERGE (from)-[r:交易所]->(to)

社區(qū)版下載與安裝

網(wǎng)絡配置

Neo4j支持三種網(wǎng)絡協(xié)議(Protocol),分別是Bolt,HTTP和HTTPS,默認的連接器配置有三種,為了使用這三個端口,需要在Windows防火墻中創(chuàng)建Inbound Rules,允許通過端口7687,7474和7473訪問本機。

計算機防火墻中,tcp連接有三次握手,請求連接,同意連接,建立連接。入站規(guī)則inbound和出站規(guī)則outbound針對請求連接、同意連接的網(wǎng)絡包。
比如:A入站允許B,出站禁止B,那么A可以訪問B而B不能訪問A;A入站禁止B,出站允許B,那么A不能訪問B而B可以訪問A。

安全域與工作模式

Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
安全域為UNtrust不信任區(qū),DMZ隔離區(qū),Trust信任區(qū),Local本地,Management管理。依次安全性增加,安全優(yōu)先級分別為5,50,85,100,100。
報文從低級別的安全區(qū)域向高級別的安全區(qū)域流動時為入方向(Inbound),報文從由高級別的安全區(qū)域向低級別的安全區(qū)域流動時為出方向(Outbound)。
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
交換模式(兩層模式)
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
路由模式(三層模式)
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
混合模式
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記

配置各個網(wǎng)絡協(xié)議的監(jiān)聽地址和接口。Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記

報錯警告

  • 報錯1:無法啟動
    Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
    考慮是因為桌面端和社區(qū)版沖突,端口占用,打不開7474端口。
    停止數(shù)據(jù)庫,關閉桌面端軟件,重新啟動community,成功。
  • 報錯2:無法打開browser
    使用ip地址無法進入http://localhost:7474/,顯示localhost拒絕連接。打開windows功能如下。
    Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
    沒有解決。
    另一方法為進入community安裝路徑/conf/neo4j.conf,打開后在該位置取消注釋,不同版本的代碼不同。同時要保證地址為0.0.0.0,才可以被遠程主機訪問。
    因為設置默認的網(wǎng)絡監(jiān)聽的IP地址,該默認地址用于設置三個網(wǎng)絡協(xié)議(Bolt,HTTP和HTTPs)的監(jiān)聽地址,即設置網(wǎng)絡協(xié)議的屬性:listen_address地址。在默認情況下,Neo4j只允許本地主機(localhost)訪問,要想通過網(wǎng)絡遠程訪問Neo4j數(shù)據(jù)庫,需要修改監(jiān)聽地址為 0.0.0.0,這樣設置之后,就能允許遠程主機的訪問。
    Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記
    Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記

問題解決

  • 報錯3:無法安裝服務
Unmatched argument at index 0: 'install-service'
Did you mean: neo4j windows-service install or neo4j windows-service uninstall or neo4j windows-service?

解決方法在bin目錄下運行 :
neo4j.bat windows-service install
提示安裝成功后可以運行
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記

社區(qū)版基本使用

數(shù)據(jù)庫管理

neo4j start
neo4j stop

Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記

用戶管理

使用bin文件夾下面的cypher-shell實現(xiàn)命令行啟動
Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記

Neo4j 學習筆記1,知識圖譜學習,neo4j,學習,筆記

//添加用戶
CALL dbms.security.createUser(username,password,requirePasswordChange)

數(shù)據(jù)庫備份與恢復

//離線備份,停止neo4j數(shù)據(jù)之后
neo4j-admin dump --database=<database> --to=<destination-path>
//離線恢復
neo4j-admin load --from=<archive-path> --database=<database> --froce

使用過程中的報錯與警告

This query builds a cartesian product between disconnected patterns.
If a part of a query contains multiple disconnected patterns,
this will build a cartesian product between all those parts.
This may produce a large amount of data and slow down query processing.
While occasionally intended, it may often be possible to reformulate the
query that avoids the use of this cross product, perhaps by adding a
relationship between the different parts or by using OPTIONAL MATCH
(identifier is: (q))

如果您MATCH兩個不同的標簽,而它們之間沒有任何關系,那么您將收到此警告。原因是因為如果你這樣做:

MATCH (a:Foo), (b:Bar)
Neo4j 的工作就是找到這兩個節(jié)點的所有可能的組合。因此,對于 a 的第一個匹配,它將為 b 的每個匹配返回一行,對于 a 的第二個匹配,它將再次返回 a b 的每個匹配行,依此類推。因此,您將在結(jié)果中得到 (Foo 節(jié)點數(shù)) x (Bar 節(jié)點數(shù)) 總行數(shù)。隨著數(shù)據(jù)庫的增長,這對性能來說確實很糟糕。

使用Python調(diào)用

urllib & urllib2 & urllib3

urllib3官方文檔
urllib3其他參考文檔
對比urllib和urllib3
對比urllib和urllib2


  1. Neo4j數(shù)據(jù)庫面向開發(fā)人員的工具,允許開發(fā)人員執(zhí)行查詢語句并可視化結(jié)果 ??

  2. cypher shell 是neo4j出的一個終端,可以直接運行cypher命令,也可以執(zhí)行cypher腳本,還可以通過其他終端以運行cypher-shell命令的方式,運行cypher命令 ??

  3. Java DataBase Connectivity,即Java數(shù)據(jù)庫連接API。簡而言之,就是通過Java語言來操作數(shù)據(jù)庫。 ??

  4. ODBC是開放式數(shù)據(jù)庫連接。ODBC也是一個API,充當客戶端應用程序和服務器端數(shù)據(jù)庫之間的接口 ??

  5. Spring Data Neo4j ??

  6. OGM 類似于 ORM,意為 Object Graph Mapping,這樣可以實現(xiàn)一個對象和 Node 的關聯(lián) ??文章來源地址http://www.zghlxwxcb.cn/news/detail-767463.html

到了這里,關于Neo4j 學習筆記1的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 自學筆記——利用python開展Neo4j圖數(shù)據(jù)庫知識圖譜構建和統(tǒng)計分析

    自學筆記——利用python開展Neo4j圖數(shù)據(jù)庫知識圖譜構建和統(tǒng)計分析

    前言: 在上《高級統(tǒng)計學》時,老師提到結(jié)合所學知識點自行設計任務,并利用所學完成。 近期正好在學習python的編程和利用neo4j開展知識圖譜構建,于是在征得老師同意下,嘗試完成任務:“統(tǒng)計近6年社科基金,并構建知識圖譜?!?? 入門小白自學筆記,請高手勿噴。

    2024年02月16日
    瀏覽(24)
  • 知識圖譜基本工具Neo4j使用筆記 三 :Py2neo 基本增刪改查使用

    每天掌握一點,創(chuàng)建 --修改–查詢–刪除 知識圖譜基本工具Neo4j使用筆記 一 :入門基本操作 Python操作api py2neo 是一個Python庫,用于連接和操作Neo4j圖數(shù)據(jù)庫。它提供了一組API,可讓用戶在Python中輕松地 創(chuàng)建 、 查詢 和 操縱圖形數(shù)據(jù) 。 py2neo允許用戶使用 Python 代碼 創(chuàng)建節(jié)點

    2024年02月11日
    瀏覽(28)
  • 醫(yī)療知識圖譜 neo4j

    醫(yī)療知識圖譜 neo4j

    開源項目: https://github.com/liuhuanyong/QASystemOnMedicalKG pip install pyahocorasick pip install py2neo 需要改的點: 1.改連接的方式 2.改讀文件的方式 MedicalGraph 運行: build_medicalgraph.py 時間很長,幾個小時 關閉neo4j客戶端 導入文件 文件見網(wǎng)盤 1.首先通過ahocorasick提取出,屬于哪種疾病

    2024年02月09日
    瀏覽(23)
  • 學科知識圖譜學習平臺項目 :技術棧Java、Neo4j、MySQL等超詳細教學

    學科知識圖譜學習平臺項目 :技術棧Java、Neo4j、MySQL等超詳細教學

    項目設計集合(人工智能方向):助力新人快速實戰(zhàn)掌握技能、自主完成項目設計升級,提升自身的硬實力(不僅限NLP、知識圖譜、計算機視覺等領域) :匯總有意義的項目設計集合,助力新人快速實戰(zhàn)掌握技能,助力用戶更好利用 CSDN 平臺,自主完成項目設計升級,提升自

    2024年02月10日
    瀏覽(19)
  • Neo4j簡單構建知識圖譜實例

    Neo4j簡單構建知識圖譜實例

    目錄 ?一、需要兩組數(shù)據(jù) 二、提取所需專題數(shù)據(jù) 三、利用結(jié)巴分詞將專題數(shù)據(jù)分詞 四、連接并繪制知識圖譜 五、消除重復節(jié)點及重復關系 六、結(jié)果展示 Ps:在使用Neo4j前,需要先在該安裝路徑文件下cmd運行,輸入neo4j console 即可啟動,可根據(jù)關閉時輸入neo4j stop,如下圖所示

    2023年04月12日
    瀏覽(18)
  • 知識圖譜構建: Neo4j 常見實例應用

    知識圖譜構建: Neo4j 常見實例應用

    社交網(wǎng)絡圖:存儲用戶之間的關系和聯(lián)系,如朋友關系、粉絲關系等。 產(chǎn)品推薦系統(tǒng):利用用戶的歷史購買記錄和評分數(shù)據(jù),推薦相似的產(chǎn)品。 客戶關系管理:存儲企業(yè)和客戶之間的聯(lián)系,包括聯(lián)系信息、交易記錄等。 知識圖譜:存儲各種實體之間的關系,如人物、事件、

    2024年02月10日
    瀏覽(34)
  • 基于neo4j的寵物知識圖譜問答系統(tǒng)

    基于neo4j的寵物知識圖譜問答系統(tǒng)

    在當前數(shù)字化的時代,人工智能技術的迅速發(fā)展為信息檢索和數(shù)據(jù)處理帶來了革命性的變化。特別是在寵物領域,一個智能的寵物關系圖譜問答系統(tǒng)能夠為寵物愛好者提供全面、精準的信息服務。本文將詳細介紹一個基于Python、Django、Flask、Neo4j以及py2neo等技術棧實現(xiàn)的寵物關

    2024年02月20日
    瀏覽(56)
  • 再相逢【知識圖譜】中文醫(yī)學知識圖譜CMeKG,中文產(chǎn)科醫(yī)學知識圖譜COKG | 附:圖數(shù)據(jù)庫Neo4j下載安裝教學(遇到問題并解決) + Neo4j基本操作

    ? 無論結(jié)果如何,請相信那些你努力游向岸的日子都有它的意義。 ? ?? 作者主頁 : 追光者♂ ?? ???????? ?? 個人簡介 : 計算機專業(yè)碩士研究生 ??、 2022年CSDN博客之星人工智能領域TOP4 ??、 阿里云社區(qū)特邀專家博主 ??、 CSDN-人工智能領域新星創(chuàng)作者 ??、 預期20

    2024年02月14日
    瀏覽(22)
  • Springboot集成neo4j實現(xiàn)知識圖譜關系圖

    Springboot集成neo4j實現(xiàn)知識圖譜關系圖

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 使用neo4j來完成人員關系 公司項目有一個功能需要將各個人員關系列出,在參加評選的時候,進行展示和篩選 neo4j是高性能的NOSQL圖形數(shù)據(jù)庫,在neo4j中,社區(qū)版本只能使用一個database。在neo4j中不存在表的

    2024年02月02日
    瀏覽(19)
  • 知識圖譜實戰(zhàn)(03):python操作neo4j實戰(zhàn)

    Neo4j 提供了一個Python版本的驅(qū)動包,用來連接Neo4j數(shù)據(jù)庫,從而完成圖數(shù)據(jù)庫的增刪改查操作。 1、安裝指定版本的驅(qū)動包(我們這里采用Neo4.x版本,同neo4j安裝包保持一致即可) $ pip install neo4j==4.4.8? --upgrade

    2024年02月03日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包