本文介绍使用全文检索功能的前提条件,以及配置基本参数等准备工作。

前提条件

  • 已创建阿里云ElasticSearch实例,创建方法请参见创建阿里云Elasticsearch实例
    说明
    • 购买版本在7.4及以上,建议优先选择7.4版本。
    • 在设置账号密码时,不要带有&字符。
    • 选择磁盘容量大小请参见容量大小指南
  • 已创建图数据库GDB实例,创建方法请参见创建实例
  • 图数据库GDB实例和ElasticSearch实例所属地域和可用区相同。
  • 可选:创建与图数据库GDB实例、ElasticSearch实例所属地域和可用区相同,网络类型相同且使用同一个网络的ECS实例,具体请参见创建ECS实例

配置基本参数

  1. 开启ElasticSearch实例自动创建索引

    关闭自动创建索引将导致图数据库GDB的数据无法正常同步至ElasticSearch实例中。

    1. 登录阿里云Elasticsearch控制台
    2. 在左侧导航栏,单击Elasticsearch实例
    3. 在页面左上角,选择ElasticSearch实例所属资源组和地域。
    4. 单击目标ElasticSearch实例ID或目标ElasticSearch实例所在行操作列的管理
    5. 在左侧导航栏,单击配置与管理 > ES集群配置
    6. 单击YAML文件配置区域右侧的修改配置
    7. YAML文件配置面板,将自动创建索引设置为允许自动创建索引

      其他配置请参见修改配置

    8. 单击确定
  2. 修改ElasticSearch实例中场景化配置模板
    1. 登录阿里云Elasticsearch控制台
    2. 在左侧导航栏,单击Elasticsearch实例
    3. 在页面左上角,选择ElasticSearch实例所属资源组和地域。
    4. 单击目标ElasticSearch实例ID或目标ElasticSearch实例所在行操作列的管理
    5. 在左侧导航栏,单击配置与管理 > ES集群配置
    6. 单击场景化配置区域的索引模板配置(场景化配置模板为通用场景)。
    7. 索引模板配置面板的当前配置输入框中,执行如下操作。
      • settings后添加以下参数:模板化场景配置
        说明 如果当前配置为空,请先单击一键应用模板,然后在settings后添加参数。
        "number_of_shards": "3"  //ElasticSearch实例的数据节点数
        "number_of_replicas": "1"
        说明 您可以在ElasticSearch实例的基本信息页面查看数据节点数。
      • refresh_interval设置为1s。refresh_interval

        其他配置请参见索引模板配置

    8. 单击提交
  3. 可选:选择以下任意一种方法配置ElasticSearch实例基本参数(能够有效的防止触发ElasticSearch熔断机制)。
    • 发送curl请求配置参数
      1. 登录ECS实例,具体请参见连接方式概述ECS远程连接操作指南
      2. 执行如下命令,发送curl配置参数。
        curl -u elastic:${your-es-password} -XPUT "http://${your-es-endpoint}:9200/_cluster/settings" -H 'Content-Type: application/json' -d '{
          "persistent" : {
            "indices.breaker.fielddata.limit" : "40%",
            "indices.breaker.request.limit" : "40%",
            "indices.breaker.total.limit" : "70%"
          }
        }'
        说明
        • ${your-es-endpoint}:请替换为ElasticSearch实例的域名。
        • ${your-es-password}:请替换为ElasticSearch实例的密码。
    • 在Kibana控制台配置参数
      1. 登录Kibana控制台,具体请参见登录Kibana控制台
      2. 执行如下命令,配置参数。
        PUT /_cluster/settings {
        "persistent" : {
          "indices.breaker.fielddata.limit" : "40%",
          "indices.breaker.request.limit" : "40%",
          "indices.breaker.total.limit" : "70%"
          }
        }