使用 CloudSearch 和 DynamoDB 进行全文搜索

问题描述

我正在 AWS 上构建 Web 应用程序。所需的功能之一是为用户提供全文搜索功能。出于这个原因,我已将 dynamodb 流配置为触发 lambda,每当在 dynamodb 中创建/更新新记录时,它都会创建/更新 cloudsearch 索引。

假设我有一个产品记录,其中包含我想运行全文搜索的字段,即

description,name,tags

但是,产品记录包含其他字段(一些元数据),即版本、制造商、添加日期等,这些字段也应该提供给用户。 目前我已经将 API 网关配置为将调用直接代理到我的 cloudsearch 域,以便用户可以根据需要查询产品域。 但是现在我想知道这是否是正确的方法用户需要对上述3个字段进行全文搜索,但是一旦找到相关记录,用户还需要获取产品元数据。 我目前没有在 Cloudsearch 中索引元数据字段,所以我不知道最好的方法是什么:

  1. 索引 cloudsearch 中的所有字段并返回 cloudsearch 中的所有内容(对我来说似乎效率低下)
  2. 仅索引 cloudsearch 中的相关字段(id、description、name、tags),创建一个 lambda,将查询传递给 cloudsearch,检索相关记录,然后通过 id 从 dynamodb 检索完整记录

我真的不确定最好的方法是什么,想法?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)