本文介绍使用curl命令将数据文件从对象存储OSS的Bucket中导入至图数据库GDB实例、查看导入任务和取消导入任务的方法。

前提条件

操作步骤

  1. 在客户端执行如下命令,将存储至对象存储OSS的Bucket中的数据文件导入至图数据库GDB实例。
    curl -i -u <username>:<password> -X POST \
      -H 'Content-Type: application/json' \
      http://<mygdb-endpoint>:<port>/loader -d '
      {
        "source" : "oss://<bucket>/air-routes/<filename>",
        "ramRoleArn" : "<arninfo>",
      }'
    说明
    • <username>:请替换为图数据库GDB实例的账号名称。
    • <password>:请替换为图数据库GDB实例的账号密码。
    • <mygdb-endpoint>:请替换为图数据库GDB实例的连接地址(内网地址或外网地址)。
    • <port>:请替换为图数据库GDB实例连接地址的端口号(内网端口或外网端口)。
    • <bucket>:请替换为存储数据文件的Bucket的名称。
    • <filename>:请替换为需要导入的数据文件的名称。
    • <arninfo>:请替换为您的阿里云账号中AliyunServiceRoleForGDB角色的ARN信息,具体请参见获取ARN信息
    • 复制时不要在 \ 后加空格
    示例:
    • 导入点文件
      curl -i -u gdb_account:******** -X POST \
        -H 'Content-Type: application/json' \
        http://gds-bp1t4x427r15331915****.graphdb.rds.aliyuncs.com:****/loader -d '
        {
          "source" : "oss://examplebucket/air-routes/air-routes-latest-nodes.csv",
          "ramRoleArn" : "acs:ram::140692647406****:role/aliyunserviceroleforgdb",
        }'
    • 导入边文件
      curl -i -u gdb_account:******** -X POST \
        -H 'Content-Type: application/json' \
        http://gds-bp1t4x427r15331915****.graphdb.rds.aliyuncs.com:****/loader -d '
        {
          "source" : "oss://examplebucket/air-routes/air-routes-latest-edges.csv",
          "ramRoleArn" : "acs:ram::140692647406****:role/aliyunserviceroleforgdb",
        }'
    回显如下类似信息,说明图数据库GDB导入程序检查参数正确,并返回导入任务ID(loadId)。
    {
      "status" : "200 OK",
      "payload" : {
          "loadId" : "552617AF-4F1E-4CD8-9533-A2EC154688DC"
      }
    }
  2. 根据导入任务ID,执行对应命令,查看导入任务状态或取消导入任务。
    • 查看导入任务状态
      curl -u <username>:<password> -X GET 'http://<mygdb-endpoint>:<port>/loader/<loadId>'
      说明
      • <username>:请替换为图数据库GDB实例的账号名称。
      • <password>:请替换为图数据库GDB实例的账号密码。
      • <mygdb-endpoint>:请替换为图数据库GDB实例的连接地址(内网地址或外网地址)。
      • <port>:请替换为图数据库GDB实例连接地址的端口号(内网端口或外网端口)。
      • <loadId>:请替换为1中返回的导入任务ID。
      示例:
      curl -u gdb_account:******** -X GET 'http://gds-bp1t4x427r15331915****.graphdb.rds.aliyuncs.com:****/loader/552617AF-4F1E-4CD8-9533-A2EC154688DC'

      如果回显信息中包含错误信息,具体请参见错误信息列表

    • 取消导入任务
      注意
      • 取消正在后台执行的任务会阻塞等待任务停止再返回。
      • 任务中已经导入至图数据库GDB实例的点数据或边数据不会回滚,将保留在图数据库GDB实例中。
      curl -u <username>:<password> -X DELETE 'http://<mygdb-endpoint>:<port>/loader/<loadId>'
      说明
      • <username>:请替换为图数据库GDB实例的账号名称。
      • <password>:请替换为图数据库GDB实例的账号密码。
      • <mygdb-endpoint>:请替换为图数据库GDB实例的连接地址(内网地址或外网地址)。
      • <port>:请替换为图数据库GDB实例连接地址的端口号(内网端口或外网端口)。
      • <loadId>:请替换为1中返回的导入任务ID。
      示例:
      curl -u gdb_account:******** -X DELETE 'http://gds-bp1t4x427r15331915****.graphdb.rds.aliyuncs.com:****/loader/552617AF-4F1E-4CD8-9533-A2EC154688DC'