全部產品
Search
文件中心

AnalyticDB:圖分析引擎

更新時間:Apr 30, 2025

AnalyticDB for PostgreSQL以外掛程式形式整合了圖分析引擎功能,並支援使用Cypher查詢語言對圖資料進行高效查詢與操作。圖分析引擎在處理高度互聯的資料集時表現出色,廣泛應用於社交網路、欺詐檢測、Recommendation Engine、知識圖譜以及網路/IT 營運等情境。例如,在典型的社交網路中,引入圖查詢能力,可以快速解決複雜社交關係分析的問題,顯著提升查詢效率與靈活性。

什麼是圖

圖的基本組成元素是節點和邊,其中節點表示事物或實體,邊則描述節點之間的關聯關係。

如上圖所示,左側的節點表示各類實體,包括產品A、公司A、員工A、員工 E 以及員工E的朋友A。邊則用於表示這些節點之間的關聯關係,例如:公司與員工之間的僱傭關係、人員之間的朋友關係,以及產品與員工之間的研發關係。此外,節點和邊還可以附加屬性,以進一步豐富資訊表達。例如,可以在節點上新增人員的工號,或在邊上記錄就職的起始時間等。這種帶有屬性的圖稱為屬性圖。

通過圖的方式,我們能夠以抽象且直觀的形式描述實體及其關聯關係。圖模型支援多樣化的節點類型、邊類型及屬性,因此具備極強的表達能力,非常適合用來處理高度互聯的資料情境。

圖分析引擎的元素

元素名稱

描述

圖(Graph)

圖是一種由節點和邊組成的資料結構,表示實體及其之間的關聯關係。以社交網路為例,它是一個典型的圖結構。其中每個人可以表示為一個節點,而人與人之間的關係(如朋友、家人、同事等)則通過邊來體現。

節點(Node)

節點是圖分析引擎中的核心元素,表示資料庫中的實體。每個節點可以被附加標籤,用來儲存與該實體相關的資訊詳情。例如,在社交網路中,節點可以代表使用者、公司或組織等實體,而標籤則可以包括使用者的年齡、公司的名稱或組織的地址等資訊。

邊(Edge)

邊用於串連節點的關係,能夠通過標籤(如權重、方向等)描述關係的特性。例如,在社交網路中,邊可以表示使用者之間的關注、好友或粉絲等關係,而權重可以反映關係的強度(如互動頻率),方向則標明關係的指向性(如“關注”是從一個使用者指向另一個使用者)。

標籤(Label)

標籤是用於對節點或邊進行分類和標識的一種屬性,能夠為資料賦予語義化資訊,從而提升查詢和理解效率。例如,在社交網路中,節點的標籤可以用來區分不同的實體類型,如“人”(Person)或“公司”(Company),而邊的標籤則可以描述關係的性質,如“認識”(Knows)或“工作於”(WorkIn)。

屬性圖

如果節點包含標籤(用於儲存實體的詳細資料)或邊包含標籤(用於描述關係的具體特徵),這種圖結構被稱為屬性圖。

模式

在Cypher語言中,查詢以模式為核心,即通過定義模式來匹配目標的圖結構。一旦找到或建立與模式相匹配的結構,其結果便可用於進一步的資料處理或分析。

優勢

與傳統關係型資料庫的表結構相比,AnalyticDB for PostgreSQL提供的圖結構在資料建模和操作上更為靈活。它通過節點和邊來構建資料,並以點為核心進行資料訪問和操作,支援圖資料的增刪查改。

例如,在圖資料操作中,一個節點可以通過其所有“出邊”(從該節點出發串連到其他節點的邊)快速存取與其直接關聯的鄰接節點。這種基於點和邊的操作方式,能直觀表達實體間的複雜關聯關係,因此可高效處理高度互聯的資料情境。

區別

圖分析引擎

關係型資料庫

側重點

側重資料實體及其關聯關係。

側重資料的嚴格分類儲存(即資料結構集合的定義),且表需預先定義固定結構。

靈活性

靈活性高。當資料變動較大時,僅需添加新的節點、邊以及屬性,並為其指定相應的類型即可完成更新。

靈活性較低。當資料變動較大時,需要調整表結構或建立多個新表,這將帶來較高的資料結構修改成本。

直觀性和複雜性

使用圖的方式來表達現實世界的關係更加直接和自然。資料分析和查詢可以直接基於點與邊的拓撲結構進行。通過直觀的串連關係即可快速定位所需的資料,極大地簡化了複雜關係的處理過程。

需要先建立實體表,再建立關係表,並通過複雜的映射將資料關聯起來,這一過程對抽象思維要求較高。