bur*_*zum 156 database search elasticsearch
我有一个使用MVC模式开发的应用程序,我想现在索引它的多个模型,这意味着每个模型都有不同的数据结构.
是否更好地使用多个索引,每个模型一个或每个模型在同一索引中有一个类型?我认为这两种方式都需要不同的搜索查询.我刚刚开始这个.
如果数据集很小或很大,两个概念之间是否存在绩效差异?
如果有人可以为我推荐一些好的样本数据,我会自己测试第二个问题.
Jon*_*Moo 179
这两种方法都有不同的含义.
假设您正在使用Elasticsearch的默认设置,为每个模型设置1个索引将显着增加分片数量,因为1个索引将使用5个分片,5个数据模型将使用25个分片; 虽然在1个索引中有5个对象类型仍然会使用5个分片.
将每个数据模型作为索引的含义:
将每个数据模型作为索引中的对象类型的含义:
如果你问的是什么数据太多而不是小数据?通常,它取决于处理器速度和硬件的RAM,存储在Elasticsearch映射中的每个变量中的数据量以及查询要求; 在查询中使用多个方面会大大减慢您的响应时间.没有直截了当的答案,你必须根据你的需要进行基准测试.
Dan*_*ack 42
尽管当时乔纳森的答案是正确的,但世界已经发展,现在看来ElasticSearch背后的人们有一个长期计划来放弃对多种类型的支持:
我们想要去的地方:我们希望从Elasticsearch中删除类型的概念,同时仍然支持父/子.
因此,对于新项目,每个索引仅使用一种类型将使ElasticSearch 6.x的最终升级变得更加容易.
小智 13
乔纳森的回答很棒.我想补充一些其他要点:
| 归档时间: |
|
| 查看次数: |
42374 次 |
| 最近记录: |