以不区分大小写的方式搜索SimpleDB

时间:2011-04-01 08:57:55

标签: search amazon-simpledb

由于Amazon SimpleDB不提供不区分大小写的查询,因此在simpleDB中对属性进行不区分大小写搜索的最佳方法是什么?

可以做的一件事是包含一个单独的属性,它是每个字符串的小写版本,然后使用'like'查询但它会涉及大量重复。是否有任何优雅的方法来做同样的事情?

修改
我首先尝试保留一个单独的属性,即要搜索的文本的小写版本,然后使用'like'查询,但'like'对于我正在构建的东西来说并不是非常快,而且还有添加冗余数据的想法并且应用程序的复杂性并不酷。所以我整合了elasticsearch,到目前为止工作得非常好+这样可以更好地控制搜索。

2 个答案:

答案 0 :(得分:2)

我听说some people advocate the separate attribute idea并且我同意这可能是最好的解决方案。我想,在应用程序代码中留下如此多的功能只是其中一个缺点。

答案 1 :(得分:0)

您可以创建一个完整的单独域,它是真实数据的小写镜像。此搜索域还可以包含其他优化。

然后尝试让两个DBS保持同步。您经常可以折腾搜索域并重建它。当您提出新的搜索策略时,您还可以重建搜索域。