Neo4j是什麼? 一次讓你了解Neo4j架構、資料庫、應用功能、優點 Posted On 2022 年 2 月 15 日 Neo4j 簡介 大數據時代來臨,當數據量龐大且數據關係複雜時,若使用傳統的 SQL 資料庫儲存需要大量的表格,花費大量的時間寫程式描述數據間的關係。 因此若遇到複雜關聯、龐大的資料,可以使用 Neo4j 開源的圖形數據庫 ( Graph DB ) 不但可以靈活存取也可以達到快速查詢的功能。 Neo4j 介紹 相較於傳統的 SQL 以行、列、資料表格的方式儲存,Neo4j 是以 Graph DB ( 圖形數據庫 ) 的儲存方式藉由許多的 nodes (節點)、relations (關係)、properties (屬性)、label (標籤) 所組合而成。 Graph DB 有三大模型 : 1.Property Graphs 2.Hypergraphs 3.Triple Stores Neo4j 就是Property Graphs的類型,而 Hypergraphs 適用於大量多對多關係的情境,Triple Stores 則是使用 W3C 的 RDF(資源描述框架)。 Neo4j 是什麼 Neo4j 是一個 NoSQL 非關聯性資料庫,將結構性資料儲存於網絡而不是表格中,目前大體上分為 4 個種類:NoSQL 非關聯性資料庫例子鍵-值資料庫Hadoop HBase記憶體資料庫Redis文件資料庫Mongodb圖形資料庫Neo4j Neo4j 架構 單機 Standalone: 適合快速開發與測試環境。 因果叢集 Causal clustering 1.Core Server ( 核心伺服器 ): 讀與寫的功能,為 Neo4j 提供安全性單元,交易需要超過半數以上的 Core Server 確認,就可以安全的回傳給應用程式。 2.Read Replicas ( 唯讀伺服器 ): 僅有讀的功能,不參與拓樸決策,因此若損壞僅影響查詢功能。唯獨伺服器為 Neo4j 提供可擴充性的單元,以同步核心伺服器的內容, Neo4j 資料庫 (一)原生圖 ( Native Graph ) 的存儲和處理數據的方式,優化數據關係、提升執行效率,相較關係數據庫的數據快上千倍。(二)資料同樣兼具 ACID 一致性,支援事務型 ( OLTP ) 和分析型 ( OLAP ) 應用。(三)標籤屬性圖模型:運用靈活,並且支援豐富的數據語義描述。 Neo4j 主要應用及功能 Neo4j 在應用上非常廣泛,除了可以查詢社交網路人與人的關係,也可以進行數據關係分析達到零售店商推薦購買清單的功能、在金融產業可以藉由圖形數據庫的特性達到反洗錢的目的。以下舉三個例子說明應用場景:(一)社交網路圖譜Neo4j 可以進行複雜關係的查詢,讓使用者或其資料作為節點,使用者與資料的關係作為結點間的連結。舉例來說,Neo4j 儲存公司、員工資料,便可進行查詢員工與公司的關係、員工與員工的關係、公司與其他類似公司的關係或與員工其他公司的關聯。(二)企業網路圖譜相較於單純的工商資訊查詢,藉由 Neo4j 的企業資訊查詢,可以更全面的了解企業資訊。舉例來說,想了解一家企業的資訊,涵蓋了公司設立資訊、產品資訊、相關聯性資訊等等,利用 Neo4j 就可以查詢到相關聯的關係人資訊,如合作夥伴、客戶、投資人、供應商資料等等,藉由圖資料查詢可以層層挖掘資料,了解其中的複雜關係。(三)金融產業應用:反洗錢的模型與反欺詐多維關聯分析場景 藉由 Neo4j 可以清楚知道有洗錢疑慮的網絡,相關的帳號、交易時間、手機 IMEI 碼等等,再進一步可進行關聯性的分析。 Neo4j 優點分析 高可用與高擴展性:部署一個 Neo4j 伺服器可以承載億個節點和關係,當數據量過多時,可以部署分布式集群擴展儲存。高效能:資料庫會自動將 GraphQL 轉換為單個 Cypher 使開發人員查詢上更為便利。開發介面友善 :Neo4j 對開發人員而言可以快速地建構 API 驅動應用程式,實現完全靈活的服務。 圖/文:簡安琪 專人協助由偉康業務人員為您詳細說明偉康的解決方案,以及相關產業經驗。 聯絡我們 Tags:neo4j, 智能數據 Related Posts Elasticsearch 8.9:RRF混合搜尋,讓向量搜尋及公共搜尋反應時間提升30% Elastic 8.10:改進了 Elastic AI Assistant for Security 的跨集群搜尋和 GA 接觸客戶先從認識科技工具開始:行銷人不可不知的MarTech工具 – CDP客戶資料平台 About The Author naomi