将数据摄取到 OpenSearch 中
有多种方法可以将数据摄取到 OpenSearch 中
- 摄取单个文档。更多信息请参见 索引文档。
- 批量索引多个文档。更多信息请参见 批量索引。
- 使用 Data Prepper——一个 OpenSearch 服务器端数据收集器,可用于丰富数据以进行下游分析和可视化。更多信息请参见 Data Prepper。
- 使用其他摄取工具。更多信息请参见 OpenSearch 工具。
批量索引
要批量索引文档,可以使用 批量 API。例如,如果要将多个文档索引到 students
索引中,请发送以下请求:
POST _bulk
{ "create": { "_index": "students", "_id": "2" } }
{ "name": "Jonathan Powers", "gpa": 3.85, "grad_year": 2025 }
{ "create": { "_index": "students", "_id": "3" } }
{ "name": "Jane Doe", "gpa": 3.52, "grad_year": 2024 }
使用示例数据进行实验
OpenSearch 提供了一个虚构的电子商务数据集,您可以使用它来试验 REST API 请求和 OpenSearch Dashboards 可视化。您可以通过下载相应的数据集和映射文件来创建索引并定义字段映射。
创建示例索引
按照以下步骤创建示例索引并定义文档字段的字段映射:
-
下载 ecommerce-field_mappings.json。此文件定义了您将使用的示例数据的 映射。
要使用 cURL,请发送以下请求:
curl -O https://raw.githubusercontent.com/opensearch-project/documentation-website/3.1/assets/examples/ecommerce-field_mappings.json
要使用 wget,请发送以下请求:
wget https://raw.githubusercontent.com/opensearch-project/documentation-website/3.1/assets/examples/ecommerce-field_mappings.json
-
下载 ecommerce.ndjson。此文件包含格式化的索引数据,可由批量 API 摄取。
要使用 cURL,请发送以下请求:
curl -O https://raw.githubusercontent.com/opensearch-project/documentation-website/3.1/assets/examples/ecommerce.ndjson
要使用 wget,请发送以下请求:
wget https://raw.githubusercontent.com/opensearch-project/documentation-website/3.1/assets/examples/ecommerce.ndjson
- 定义映射文件中提供的字段映射
curl -H "Content-Type: application/json" -X PUT "https://:9200/ecommerce" -ku admin:<custom-admin-password> --data-binary "@ecommerce-field_mappings.json"
-
使用批量 API 上传文档
curl -H "Content-Type: application/x-ndjson" -X PUT "https://:9200/ecommerce/_bulk" -ku admin:<custom-admin-password> --data-binary "@ecommerce.ndjson"
查询数据
使用搜索 API 查询数据。以下查询搜索 customer_first_name
为 Sonya
的文档:
GET ecommerce/_search
{
"query": {
"match": {
"customer_first_name": "Sonya"
}
}
}
可视化数据
要了解如何使用 OpenSearch Dashboards 可视化数据,请参见 OpenSearch Dashboards 快速入门指南。
延伸阅读
- 有关 Data Prepper 的信息,请参见 Data Prepper。
- 有关摄取工具的信息,请参见 OpenSearch 工具。
- 有关 OpenSearch Dashboards 的信息,请参见 OpenSearch Dashboards 快速入门指南。
- 有关批量索引的信息,请参见 批量 API。
后续步骤
- 请参见 搜索数据 以了解搜索选项。