我想知道尝试搜索数据的优缺点(基本上是在一组有限的字段上进行全文搜索)。
我的数据目前在DynamoDB中,我意识到这不太适合……
Dynamodb最适合键值插入和检索。
它不支持搜索功能,如果您尝试使用O(n)的某些条件进行扫描,并且由于消耗大量读取容量而导致扫描成本非常高。
现在来选择
如果用例不是全文搜索而只是键值匹配,则可以尝试提出 复合材料的关键 ,但它会有缺点
一个。之后无法更改架构,如果您需要搜索新字段,可能需要付出巨大努力。
湾设计这种密钥是很棘手的,因为很少有密钥总是很热,并且可能导致热分区。
理想的解决方案是使用弹性搜索或solr索引。你可以让一个lambda函数监听dynamodb流,进行转换并将数据放入elasticsearch中。但它会有局限性
一个。 Elasticsearch集群是 昂贵 。