提问人:Selvakumar Ponnusamy 提问时间:1/26/2017 最后编辑:Jasmel PcSelvakumar Ponnusamy 更新时间:5/12/2023 访问量:30166
Elastic Search 中的多租户
Multi tenancy in Elastic Search
问:
我们计划为我们的多租户应用程序引入 Elastic search(AWS)。我们有以下选择,
- 每个租户使用一个索引
- 每个租户使用一种类型
- 所有租户共享一个具有自定义路由的索引
根据这篇博客 https://www.elastic.co/blog/found-multi-tenancy 第一个选项会导致内存问题。但不清楚其他选项。
似乎如果我们使用第三种选择,那么就没有数据隔离。不确定安全性。
我相信第二种选择会是更好的选择,因为数据将被隔离。
帮助我确定使用多租户进行弹性搜索的最佳选择。
请注意,我们将利用 AWS 基础设施。
答:
我们现在正在考虑同样的问题,Elasticsearch 的以下文章非常有帮助。
从这里开始: https://www.elastic.co/guide/en/elasticsearch/guide/current/scale.html
并通读每篇后续文章,直到你点击这篇文章:https://www.elastic.co/guide/en/elasticsearch/guide/current/finite-scale.html
以下两个让我大开眼界:
https://www.elastic.co/guide/en/elasticsearch/guide/current/faking-it.html https://www.elastic.co/guide/en/elasticsearch/guide/current/one-big-user.html
基本要点:
- 每个客户的别名
- 分片路由
- 现在,您可以为大客户创建索引,为小客户创建共享索引,并且它们看起来都是单独的索引
评论
这是一个非常重要的链接,在这里不一一提及:http://www.bigeng.io/elasticsearch-scaling-multitenant/
良好的架构困境,以及出色的性能分析/推理。
顶级域名;它们具有围绕分片分配筛选构建的索引组,以在集群中的节点之间隔离负载
评论
总结所有答案和文章,
使用共享索引 使用别名的自定义路由
1.1) 特殊情况:大客户端可以有专用索引,只有在需要时。
参考:
用例 => https://www.elastic.co/blog/found-multi-tenancy
怎么做 => https://www.elastic.co/guide/en/elasticsearch/guide/current/faking-it.html
评论