2017-03-02 118 views
0

我目前正在调查Xamarin移动应用程序的各种数据存储选项:带有SQL后端(MySql或Postgres)或DynamoDb的RESTFul服务;都在AWS上。DynamoDb中的高效字符串搜索

我更喜欢使用DynamoDb,因为它是“完全托管”的,随着工作负载的增加,它更容易扩展。

我目前试图解决的使用案例是使用DynamoDb选项:应用程序广泛使用大型产品目录(40000条记录),产品在用户输入时按名称和说明进行过滤。 DynamoDb中唯一可以想到的解决方案是查询整个记录集,并使用mapreduce删除不需要的记录,但此方法的问题在于需要更高的读取容量,因为整个表必须迭代通过一个小的结果集。 (这在REST SQL选项中是微不足道的)

我读过关于将数据推入类似CloudSearch或ElasticSearch的内容;我还没有在Xamarin商店中找到支持此功能的AWS组件。

有谁知道索引和搜索DynamoDb中的字符串的有效机制?

在此先感谢

回答

0

好吧,我经过一番研究,我想我已经找到了解决办法。

我可以利用AWS Streams和Lambda函数来填充CloundSearch;这确实意味着当从数据层请求数据时,我的代码将不得不有点智能。