如何将 JSON 上传到 AWS CloudSearch

neu*_*t47 1 amazon-web-services amazon-cloudsearch

看来我错过了一些非常简单的事情,但我无法弄清楚这里有什么问题。我想上传接下来的 JSON 文件:

[{
    "name": "Mark"
}]
Run Code Online (Sandbox Code Playgroud)

创建索引字段后name在此输入图像描述

然后我选择Upload Documents一个仪表板页面: 在此输入图像描述

然后我有一个错误:

Your upload includes 1 document containing the following fields: content content_encoding content_type resourcename
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我究竟做错了什么?

Mic*_*ger 5

我目前正在尝试使用它,并且遇到了同样的问题。

尝试这个 :

1/ 创建 JSON 批处理以将数据添加到搜索域

例如 :

[
  {
    "type": "add",
    "id": "uniqueid:1",
    "fields": {
        "name": "jack",
    }
  },
  {
    "type": "add",
    "id": "uniqueid:2",
    "fields": {
        "name": "pierre",
    }
  },
  {
    "type": "add",
    "id": "uniqueid:3",
    "fields": {
        "name": "bob",
    }
  }
]
Run Code Online (Sandbox Code Playgroud)

2/ 现在转到您的域仪表板并单击“上传文档”:上传此 JSON 批次

3/转到“运行测试搜索”并尝试查找“bob”,例如:您应该拥有您的 bob 数据!

有关批次的文档:https://docs.aws.amazon.com/cloudsearch/latest/developerguide/preparing-data.html

要将数据上传到您的搜索域,您需要遵守此批处理格式,请查看文档和指南:)

您也可以使用一个用于触发 lambda 函数的存储桶来执行此操作,其想法是:当您在存储桶中上传文件时,启动 lambda 函数来读取该文件并创建一个批处理文件来添加新的文件数据到您的索引。当您删除文件时:您将删除索引中的数据!

如果您需要有关 lambda 函数的帮助,请查看本教程:https://medium.com/devopslinks/build-your-own-document-search-engine-using-amazon-web-services-82d5b165d96c

希望能帮助到你 !