TigerGraph圖數據庫創建一個圖Schema

以開發版的TigerGraph圖數據庫爲例。

若沒有多圖權限的話,若TigerGraph中已經有其他圖數據,則會執行Drop ALL命令。以下是在gsql環境下執行。

第一步:創建Vertex

命令如下:CREATE VERTEX Person(PRIMARY_ID name STRING, name STRING, gender STRING)

    CREATE VERTEX關鍵字用來創建頂點類型,Person是自定義頂點類名,每個頂點必須有一個PRIMARY_ID標識符,可以理解爲SQL中的主鍵約束,標識同類型頂點的不同實例,即每個人都必須有唯一標識符,可爲屬性中的一個也可單獨設置類型,如STRING,後邊是自定義屬性,創建成功後都可使用ls命令查看:

第二步:創建Edge

創建一條Friendship無向 邊,命令:CREATE UNDIRECTED EDGE Friendship(FROM Person, TO Person)

    CREATE … EDGE關鍵字用來創建邊,中間加UNDIRECTED表示無向邊,加DIRECTED表示有向邊,FROM和TO表示邊的src和dst。使用ls命令查看:

    在創建有向邊時要加上“WITH REVERSE_EDGE=”,這樣是爲了逆向訪問。如 a->b 這個有向邊,若沒有逆向邊則只能從a訪問到b,而不能從b訪問到a,若不需要逆向訪問,則可不添加逆向邊。

注意:gadmin status –v graph顯示的邊個數和原始數據的記錄數目可能不一致。原因:無向邊需要雙向訪問,存儲時其實時兩條邊,有向邊,若有逆向邊也是兩條邊,若沒有逆向邊則只有一條。

第三步:創建Graph

創建social圖,命令:CREATE GRAPH Social (Person, Friendship)

    CREATE GRAPH關鍵字用來創建一個子圖,圖中包含頂點Person和邊Friendship。若圖中還需要其他頂點和邊,都可加入裏面,也可使用CREATE GRAPH Social(*),默認把存在的頂點和邊類型都加入進去,創建圖時TigerGraph(TG)需要把相關信息推送到GSE、GPE、RESTPP等服務。使用ls命令查看:

至此,在TigerGraph的gsql shell情況下創建一個graph Schema完成。

注意:

創建多圖(multigraph)必須是商業版本並且有多圖權限。在schema.gsql中加入多個命令

CREATE GRAPH ×××Graph(×××,×××)即可,在子圖中需要包含的節點類型和邊類型放在括號中。

以下使用TigerGraph的GraphStudio工具創建圖模型

GraphStudio的默認TCP/IP端口14240。

注意:

(1)只有超級管理員才能再設計圖模型頁面中編輯圖模型;

(2)若不止一個圖,則超級管理員只能編輯圖的視覺元素;

(3)不管是gsql shell還是通過GraphStudio創建的圖模型,開發版的只能有存在一個圖。

添加Vertex

選擇左邊的“Design Schema”界面,點擊左上端的“add vertex type”的“+”按鈕。

至此,添加Vertex類成功。

添加Edge類

添加Edge類:添加或編輯Edge時,需要初始點和目標點。點擊左上角的“Add edge type”按鈕,當“Add edge type”按鈕出現灰色狀態後,點擊初始頂點,然後在該頂點的旁邊提示“Select the target vertex to create an edge”,然後點擊目標頂點,若當前界面之後一種頂點,則在剛纔的初始頂點上點擊(只有一種類型的頂點時,初始頂點類型也是目標頂點類型),彈出界面:

創建的Vertex、Edge所組成的Graph:

創建Vertex、Edge和Graph後還需要發佈Graph模型。

點擊“publish schema”即可,等待幾分鐘。

至此,創建Vertex、Edge和Graph完成。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章