快速入门

更新时间:
复制为 MD 格式

本教程专为初次接触阿里云 OpenSearch-开源兼容版的开发者设计,指导其高效完成从实例创建到数据检索的完整学习流程。

学习内容

  • 创建并配置一个OpenSearch-开源兼容版实例。

  • 通过Dashboards进行数据建模。

    DashboardsOpenSearch-开源兼容版的核心组件之一,能够让用户通过直观的图形化方式探索、分析和展示存储在OpenSearch-开源兼容版中的数据。为方便用户使用,Dashboards已内置在OpenSearch-开源兼容版控制台,无需手动安装。

  • 插入样本数据并执行多种检索操作。

完成本教程后,可掌握OpenSearch-开源兼容版最基础的实例管理、索引创建、数据读写和搜索能力。

费用

2025.12.30起,OpenSearch-开源兼容版正式开始邀测,期间免费使用。

操作步骤

步骤一:创建OpenSearch-开源兼容版实例

  1. 登录OpenSearch-开源兼容版控制台选择目标地域,单击创建实例,关键参数配置如下,其他参数默认即可。

    参数

    说明

    服务关联角色

    授权 OpenSearch-开源兼容版可在您的 VPC 内创建网卡、终端节点等资源。

    地域和可用区

    • 地域:选择已创建VPCvSwitch的地域。

    • 可用区:公测阶段仅支持单可用区。

    专有网络虚拟交换机

    选择已创建的VPC和虚拟交换机,如未找到可用VPC,请参见创建专有网络与交换机进行创建。

    数据节点规格

    当前支持 4 核 8GB 和 4 核 16GB 两种配置。如需更高规格,请联系技术支持。

    数据节点是存储索引数据的节点,主要对文档进行增删改查、聚合等操作。

    实例名称

    自定义。

    登录名

    默认为admin且不可修改,用于连接OpenSearch-开源兼容版实例。

    登录密码

    自定义,后续用于连接OpenSearch-开源兼容版实例。

  2. 单击立即购买,等待约10分钟直至实例状态变为正常即可进入下一步操作。

步骤二:配置并登录Dashboards

Dashboards公网访问地址默认开启,需要将待访问设备的IP地址加入白名单才能访问。

公网访问鉴权方式:首先需登录您的阿里云账号,然后使用OpenSearch-开源兼容版的访问信息(用户名固定为 admin 及其对应密码)进行二次登录验证。

  1. 在实例列表单击实例ID进入实例基本信息页面,在左侧导航栏单击 配置与管理 > 可视化控制,在OpenSearch Dashboards页面单击修改配置

  2. 找到Dashboards公网访问白名单并单击修改

    获取待访问设备IP

    您可以参照以下场景,获取待访问设备的IP地址。

    场景

    需获取的IP地址

    获取方式

    在本地设备中通过公网地址访问Dashboards。

    本地设备公网IP。

    说明

    如果您的本地设备处在家庭网络或公司局域网中,需要添加局域网的公网出口IP地址。

    通过curl ipinfo.io/ip查询本地设备公网IP。

    ECS实例中通过公网地址访问Dashboards。

    ECSES在不同专有网络中时,可通过ECS公网地址访问Dashboards,此时需获取ECS的公网IP并添加到ES公网白名单中。

    登录ECS控制台,在实例列表查看实例的公网IP地址。

    添加公网白名单

    获取待访问设备IP并将其添加至Dashboards公网白名单中。

    1. 单击default分组右侧的配置,在弹出的对话框中添加IP白名单。

      配置类别

      格式和示例值

      重要注意事项

      IPv4地址格式

      • 单个IP:192.168.0.1

      • 网段:192.168.0.0/24,建议将零散的IP合并为IP

      单个集群最多可配置300IP或者IP网段,多个IP或者IP网段之间用英文逗号隔开,且逗号前后不能有空格。

      • 公网默认地址:127.0.0.1,表示禁止所有IPv4地址访问。

      • 0.0.0.0/0:允许所有IPv4访问。

        重要
        • 强烈建议不要配置 0.0.0.0/0,存在高危风险。

        • 部分集群和地域不支持 0.0.0.0/0,请以界面或者报错提示为准。

    2. 配置完成后,单击确认

  3. 返回OpenSearch Dashboards页面,单击公网入口,在Dashboards登录页面,输入用户名和密码,单击Log in

    image

    • 用户名:固定为admin。

    • 密码:创建实例时设置的密码。

  4. 成功登录即可进入Dashboards控制台进行数据探索,单击Dev tools进入开发控制台,执行GET /查询集群信息。

    image

    结果验证:返回信息包含版本号、集群名称等信息的JSON对象,则表示连接正常。

步骤三:创建索引

Dashboards的开发工具中执行Restful API为理财产品数据创建索引(Mapping)product_info

PUT /product_info
{
  "settings": {
    "number_of_shards": 5,
    "number_of_replicas": 1
  },
  "mappings": {
      "properties": {
        "productName": {
          "type": "text",
          "analyzer": "ik_smart"
        },
        "annual_rate":{
          "type":"keyword"
        },
        "describe": {
          "type": "text",
          "analyzer": "ik_smart"
        }
    }
  }
}

核心参数说明:

settings:定义索引分片配置,如定义5个主分片,每个主分片1个副本。
mappings:定义索引字段。如定义索引文件中有productNameannual_ratedescribe3个字段。text类型字段支持分词和模糊搜索,keyword类型字段用于精确值匹配,更多字段类型请参见Field data types

结果验证:返回结果含"acknowledged": true"shards_acknowledged": true表示索引创建成功。

步骤四:插入数据

执行以下代码批量插入测试数据:

POST /product_info/_bulk
{"index":{}}
{"productName":"理财产品A","annual_rate":"3.2200%","describe":"180天定期理财,最低20000起投,收益稳定,可以自助选择消息推送"}
{"index":{}}
{"productName":"理财产品B","annual_rate":"3.1100%","describe":"90天定投产品,最低10000起投,每天收益到账消息推送"}
{"index":{}}
{"productName":"理财产品C","annual_rate":"3.3500%","describe":"270天定投产品,最低40000起投,每天收益立即到账消息推送"}
{"index":{}}
{"productName":"理财产品D","annual_rate":"3.1200%","describe":"90天定投产品,最低12000起投,每天收益到账消息推送"}
{"index":{}}
{"productName":"理财产品E","annual_rate":"3.0100%","describe":"30天定投产品推荐,最低8000起投,每天收益会消息推送"}
{"index":{}}
{"productName":"理财产品F","annual_rate":"2.7500%","describe":"热门短期产品,3天短期,无须任何手续费用,最低500起投,通过短信提示获取收益消息"}

结果验证:返回结果含"errors": false表示数据插入成功。

步骤五:检索数据

全文检索(模糊匹配)

查询describe包含“每天收益到账”的理财产品:

GET /product_info/_search
{
  "query": {
    "match": {
      "describe": "每天收益到账消息推送"
    }
  }
}

结果验证:返回结果按相关性评分排序,评分越高的结果越靠前。

按条件检索(精确匹配)

查询annual_rate(年化利率)在3.00%~3.13%之间的理财产品:

GET /product_info/_search
{
  "query": {
    "range": {
      "annual_rate": {
        "gte": "3.0000%",
        "lte": "3.1300%"
      }
    }
  }
}

结果验证:精确匹配数值范围,返回符合条件的结果。

清理资源与后续学习

删除数据并释放ES实例

  1. 执行如下代码,删除本文创建的测试索引。

    DELETE /product_info

    返回结果如下:image

  2. 在实例列表待释放实例右侧的操作列中,单击更多 > 释放实例,确认无误后单击确认释放实例。

    重要

    释放实例会永久删除该实例及其包含的所有数据,此操作不可逆,需谨慎操作。