更新时间:2022-08-09 GMT+08:00

新建索引

功能介绍

根据给定的indexName,IndexType等信息创建索引。目前支持索引:复合索引。

  • 复合索引有全局点索引(GlobalCompositeVertexIndex)和全局边索引(GlobalCompositeEdgeIndex)。复合索引可在label和property上创建索引,使用索引查询可以加快速度。
  • 全文索引(FullTextIndex)可以实现全文搜索、模糊搜索等功能。由于全文索引的刷新机制,更新数据后立即查询可能查到的是旧数据,建议更新后间隔一秒以上再进行查询。全文索引的使用请查看点过滤查询边过滤查询。您也可以使用cypher语句来执行全文索引,具体请查看cypher操作相关章节。

    目前全文索引特性只在千亿规格版本中支持。

索引特性对比

特性

模糊查询

速度

灵活度

复合索引

不支持

快速

仅限于固定组合属性键

全文索引

支持

比复合慢

可以任意组合属性键

URI

  • URI 格式
    POST /ges/v1.0/{project_id}/graphs/{graph_name}/indices
  • 参数说明
    表1 URI参数说明

    参数

    是否必选

    类型

    说明

    project_id

    String

    项目编号,用于资源隔离。请参考获取项目ID

    graph_name

    String

    图名称。

请求

  • 请求样例(复合索引)
    POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/indices
    {
        "indexName":"ageIndex",
        "indexType": "GlobalCompositeVertexIndex",
    
        "hasLabel": "true",
        "indexProperty": ["age"]
    }

    SERVER_URL:图的访问地址,取值请参考业务面API使用限制

    • Body参数说明
      表2 Body参数说明

      参数

      是否必选

      类型

      说明

      indexName

      String

      索引名称。只能包含字母,数字,-和_。不能包含其他字符。索引名称的长度需在63字符以内。

      indexType

      String

      索引的类型。区分大小写。“GlobalCompositeVertexIndex”为全局的Composite类型的点索引。

      hasLabel(一千亿边)

      Boolean

      是否有label,默认为false。

      • true
      • false

      indexProperty

      否(若hasLabel为false或null,则该项为必选)

      String

      索引的属性列表。

      可以创建索引的属性类型有: integer、 float、 double、 long、 enum、 char array、 string、 date。

      如果属性类型为string或者char array,属性长度建议不要超过40个字节,超出的部分会被截断。

响应

  • 要素说明
    表3 要素说明

    参数

    是否必选

    类型

    说明

    errorMessage

    String

    系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误信息。

    errorCode

    String

    系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误码。

    job_id

    String

    执行该异步任务的jobId。

    说明:
    • 可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API

    jobType

    String

    执行该异步任务的jobType。

    result

    String

    成功时result值为success。

  • 请求成功样例
    Http Status Code: 200
    {
    "jobId": "f99f60f1-bba6-4cde-bd1a-ff4bdd1fd500000168232",
    "jobType": 8
    }
  • 请求失败样例
    Http Status Code: 400
    {
      "errorMessage": "graph [demo] is not found",
      "errorCode": "GES.8603"
    }

返回值

  • 正常

    200

  • 异常
    表4 异常返回值说明

    返回值

    说明

    400 Bad Request

    请求错误。

    401 Unauthorized

    鉴权失败。

    403 Forbidden

    没有操作权限。

    404 Not Found

    找不到资源。

    500 Internal Server Error

    服务内部错误。

    503 Service Unavailable

    服务不可用