一、Hg介紹
http://localhost:8080
8080端口爲restful api接口
http://localhost:8088/
8088端口爲hg的可視化組件端口
1、Hg中的圖概念
- 圖類似於普通數據庫的數據庫概念
- 每種標籤類似於數據表
- 一個圖包含了所有數據
- 所有具有相同關係相同scheam的數據可以放到一個圖中
- Hg中創建圖不像普通數據庫一樣cerate database test_db
- 需要修改配置文件然後初始化存儲數據庫
查看有哪些圖
http://localhost:8080/graphs
2、圖的構成
常見的圖數據表示模型有兩種,分別是RDF(Resource Description Framework)模型和屬性圖(Property Graph)模型。
Hg採用Property Graph。
一張圖有頂點和邊以及關係構成 頂點都有自己的屬性
3、如何構成一張圖
先進行圖、頂點與關係的劃分
以官網案例,假設是人物關係圖譜
我們可以看到圖上有角色與 角色之間關係 還有角色與地點之間關係構成
如下:
基本數據構造示例
https://hugegraph.github.io/hugegraph-doc/language/hugegraph-example.html
二、Hg提供的使用語法
Restful與Gremlin Gremlin類似於sql 圖數據庫通用語法
http://localhost:8088
此可視化界面使用Gremlin語法進行crud 可進行數據的測試等
因爲目前hg只支持java client所以Gremlin在代碼中有一定的限制
如果用python操作圖數據庫需要使用restful api,restful也可以直接發送Gremlin語法
1、Restful
- 構建圖結構
- 增加數據
- 查詢(內置算法,不同場景)
https://hugegraph.github.io/hugegraph-doc/clients/hugegraph-api.html
2、Gremlin
http://tinkerpop.apache.org/docs/current/tutorials/getting-started/
三、其他功能
1、備份恢復
Hg提供了圖備份與回覆功能,可將數據導出爲json
2、數據導入
提供loader工具直接從數據源導入構建圖
目前支持的數據源包括:
- 本地磁盤文件或目錄,支持壓縮文件
- HDFS 文件或目錄,支持壓縮文件
- 部分關係型數據庫,如 MySQL
使用 HugeGraph-Loader 的基本流程分爲以下幾步:
- 編寫圖模型(schema)
- 準備數據文件
- 編寫輸入源映射(source)
- 執行導入過程
https://hugegraph.github.io/hugegraph-doc/quickstart/hugegraph-loader.html
關於 schema 的詳細說明請參考
https://hugegraph.github.io/hugegraph-doc/clients/hugegraph-client.html