hat*_*lla 1 amazon-web-services elasticsearch amazon-dynamodb
我正在构建一个包含数百万行数据的服务。我们想对其进行良好的搜索。例如。我们可以通过一些字段值进行搜索。该行的结构如下:
{
"field1" : "value1",
"field2" : "value2",
"field3" : {
"field4": "value4",
"field5": "value5"
}
}
Run Code Online (Sandbox Code Playgroud)
此外,field3 的结构有时会随着 field4 的存在而变化,有时不存在。
我们希望对以下字段 field1、field2 和 field 4 进行过滤。我们可以在 dynamodb 中创建索引来做到这一点。但我不确定我们是否可以在 dynamodb 中轻松地在 field4 上创建索引而不压平 json。
现在,我的问题是,我们是否应该使用弹性搜索数据存储,据我所知,它会在文档中的每个字段上创建索引,然后可以在每个字段上进行搜索?是对的吗?或者我们应该使用 dynamodb 或完全其他的数据存储?
请提供一些建议。
如果搜索是您的应用程序的关键要求,那么请使用搜索产品 - 而不是数据库。Dynamodb 对于很多事情都很有用,但即席搜索不是其中之一 - 如果您使用 dynamodb,您最终将运行大量非常昂贵(缓慢)的扫描;这就是 ES 的诞生目的。
| 归档时间: |
|
| 查看次数: |
2819 次 |
| 最近记录: |