使用 Amazon Dynamodb 进行不区分大小写的查询
Posted
技术标签:
【中文标题】使用 Amazon Dynamodb 进行不区分大小写的查询【英文标题】:Case-insensitive queries with Amazon Dynamo DB 【发布时间】:2013-11-08 14:01:04 【问题描述】:在 DynamoDB 中,字符串值区分大小写。在我的应用程序中,用户可以在数据库中搜索个人资料名称。但是,如果他们搜索“alan”,则搜索结果中不会返回“Alan”。如何允许用户指定不区分大小写的搜索来检索好的结果?
仅供参考:我将 DynamoDB 与 Node.js 和 Express 结合使用,AngularJS 在前端。对 db 的扫描请求的脚本位于 Express route js 文件中;解释用户请求并发送到服务器的代码位于 AngularJS 控制器中。
【问题讨论】:
【参考方案1】:您可以使用 Lambda 函数将您的 DynamoDB 表连接到 AWS ElasticSearch,以便将表中的更新流式传输以进行索引。 ElasticSearch 允许全文和不区分大小写的查找,因此它正是您要查找的内容。这是 AWS 解决方案架构师的 example architecture。 AWS 实验室还提供完成相同任务的DynamoDB Logstash plugin。
【讨论】:
以上是关于使用 Amazon Dynamodb 进行不区分大小写的查询的主要内容,如果未能解决你的问题,请参考以下文章
Amazon Elastic MapReduce - 从 S3 到 DynamoDB 的大量插入非常慢