本文介紹使用GdbLoader腳本將數(shù)據(jù)文件從對象存儲OSS的Bucket中導(dǎo)入至圖數(shù)據(jù)庫GDB實(shí)例、查看導(dǎo)入任務(wù)和取消導(dǎo)入任務(wù)的方法。
前提條件
- 已創(chuàng)建目標(biāo)圖數(shù)據(jù)庫GDB實(shí)例,創(chuàng)建方法請參見創(chuàng)建主實(shí)例。說明 如果Bucket是在對象存儲控制臺創(chuàng)建,請確保圖數(shù)據(jù)庫GDB實(shí)例和Bucket在同一地域。
- 已將數(shù)據(jù)文件上傳至Bucket中,上傳方法請參見使用OSS控制臺上傳數(shù)據(jù)文件或使用ossutil工具上傳數(shù)據(jù)文件。
- 已在客戶端安裝Python,具體請參見安裝Python。
操作步驟
- 在客戶端下載并安裝GdbLoader.py工具。
- 執(zhí)行如下命令,添加導(dǎo)入任務(wù)。
- 添加導(dǎo)入點(diǎn)文件任務(wù)
python GdbLoader.py --host <mygdb-endpoint> --port <port> --username <username> --password <password> --todo add_task --source oss://<bucket>/air-routes/<nodes.csv> --arn <arninfo>
說明<mygdb-endpoint>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的連接地址(內(nèi)網(wǎng)地址或外網(wǎng)地址)。<port>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例連接地址對應(yīng)的端口號(內(nèi)網(wǎng)端口或外網(wǎng)端口)<username>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的賬號名稱。<password>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的賬號密碼。<bucket>
:請?zhí)鎿Q為存儲數(shù)據(jù)文件的Bucket的名稱。<nodes.csv>
:請?zhí)鎿Q為需要導(dǎo)入的點(diǎn)文件的名稱。<arninfo>
:請?zhí)鎿Q為您的阿里云賬號中AliyunServiceRoleForGDB角色的ARN信息。
示例:python GdbLoader.py --host gds-bp1t4x427r15331915****.graphdb.rds.aliyuncs.com --port **** --username gdb_account --password ******** --todo add_task --source oss://examplebucket/air-routes/air-routes-latest-nodes.csv --arn acs:ram::140692647406****:role/aliyunserviceroleforgdb
- 添加導(dǎo)入邊文件任務(wù)
python GdbLoader.py --host <mygdb-endpoint> --port <port> --username <username> --password <password> --todo add_task --source oss://<bucket>/air-routes/<edges.csv> --arn <arninfo>
說明<mygdb-endpoint>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的連接地址(內(nèi)網(wǎng)地址或外網(wǎng)地址)。<port>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例連接地址對應(yīng)的端口號(內(nèi)網(wǎng)端口或外網(wǎng)端口)<username>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的賬號名稱。<password>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的賬號密碼。<bucket>
:請?zhí)鎿Q為存儲數(shù)據(jù)文件的Bucket的名稱。<edges.csv>
:請?zhí)鎿Q為需要導(dǎo)入的邊文件的名稱。<arninfo>
:請?zhí)鎿Q為您的阿里云賬號中AliyunServiceRoleForGDB角色的ARN信息。
示例:python GdbLoader.py --host gds-bp1t4x427r15331915****.graphdb.rds.aliyuncs.com --port **** --username gdb_account --password ******** --todo add_task --source oss://examplebucket/air-routes/air-routes-latest-edges.csv --arn acs:ram::140692647406****:role/aliyunserviceroleforgdb
回顯如下類似信息,說明圖數(shù)據(jù)庫GDB導(dǎo)入程序檢查參數(shù)正確,并返回導(dǎo)入任務(wù)ID(loadId
)。{ "status" : "200 OK", "payload" : { "loadId" : "552617AF-4F1E-4CD8-9533-A2EC154688DC" } }
- 添加導(dǎo)入點(diǎn)文件任務(wù)
- 根據(jù)導(dǎo)入任務(wù)ID,執(zhí)行對應(yīng)命令,查看導(dǎo)入任務(wù)狀態(tài)或取消導(dǎo)入任務(wù)。
- 查看導(dǎo)入任務(wù)狀態(tài)
python GdbLoader.py --host <mygdb-endpoint> --port <port> --username <username> --password <password> --todo get_task --loaderId <loadId>
說明<mygdb-endpoint>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的連接地址(內(nèi)網(wǎng)地址或外網(wǎng)地址)。<port>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例連接地址對應(yīng)的端口號(內(nèi)網(wǎng)端口或外網(wǎng)端口)<username>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的賬號名稱。<password>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的賬號密碼。<loadId>
:請?zhí)鎿Q為2中返回的導(dǎo)入任務(wù)ID。
示例:python GdbLoader.py --host gds-bp1t4x427r15331915****.graphdb.rds.aliyuncs.com --port **** --username gdb_account --password ******* --todo get_task --loaderId 552617AF-4F1E-4CD8-9533-A2EC154688DC
- 取消導(dǎo)入任務(wù)重要
- 取消正在后臺執(zhí)行的任務(wù)會阻塞等待任務(wù)停止再返回。
- 任務(wù)中已經(jīng)導(dǎo)入至圖數(shù)據(jù)庫GDB實(shí)例的點(diǎn)數(shù)據(jù)或邊數(shù)據(jù)不會回滾,將保留在圖數(shù)據(jù)庫GDB實(shí)例中。
python GdbLoader.py --host <mygdb-endpoint> --port <port> --username <username> --password <password> --todo delete_task --loaderId <loadId>
說明<mygdb-endpoint>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的連接地址(內(nèi)網(wǎng)地址或外網(wǎng)地址)。<port>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例連接地址對應(yīng)的端口號(內(nèi)網(wǎng)端口或外網(wǎng)端口)<username>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的賬號名稱。<password>
:請?zhí)鎿Q為圖數(shù)據(jù)庫GDB實(shí)例的賬號密碼。<loadId>
:請?zhí)鎿Q為2中返回的導(dǎo)入任務(wù)ID。
示例:python GdbLoader.py --host gds-bp1t4x427r15331915****.graphdb.rds.aliyuncs.com --port **** --username gdb_account --password ******* --todo delete_task --loaderId 552617AF-4F1E-4CD8-9533-A2EC154688DC
- 查看導(dǎo)入任務(wù)狀態(tài)