kubernetes - SolrCloud 时间路由别名架构
问题描述
这是围绕构建 SolrCloud Time Routed Alias 应用程序架构的一个更广泛的问题。我正在使用 SolrCloud 定期摄取时间序列数据,并让 SolrCloud 在 Kubernetes 集群中运行。每次我们向集群添加新 Pod 时,都会连接一个 Solr 节点。每个 pod 都有一个持久卷声明,所以这也是我们扩展存储的方式。
由于我正在尝试使用 Time Routed Aliases,它会创建一个具有抢先计算的新集合,并且当前根据 pod 中有多少可用磁盘空间将它们放置在 Solr pod 中,因此将为分片放置选择新的 pod每当引入新的 Pod 时。
但是,我想设计一个解决方案,通过将分片分布在较旧的 pod 中,我们可以避免热点Solr 节点,同时仍然保持 SolrCloud 架构,该架构随着每天摄取数据的大小而增长。
根据https://solr.apache.org/guide/8_6/solrcloud-autoscaling-policy-preferences.html中的可用策略,我不确定集合/集群级别的最佳配置是什么
我目前正在以每周间隔创建集合,我的用例涉及搜索至少2 周前的数据。因为摄取的数据将被放置在较新的 pod 中,所以我面向客户端的应用程序每次都会轰炸较新的 pod。
每个集合的复制因子为 2,numShards 参数为 2。
为了避免热点,我应该在集合/别名/集群级别上使用什么级别的配置?
解决方案
推荐阅读
- python - Django 正则表达式字段查找 - 按查询集中每个项目的匹配数排序
- windowsiot - Windows IoT 中的凭据管理器
- video-capture - Camstudio 仍然是一个活跃的项目吗?
- php - 检查版本字符串是否更新的函数(例如 1.2.5 > 1.1.10)
- python - 在 Python 3.6 中使用 json 加载会产生“ascii 编解码器无法编码字符”错误
- ruby-on-rails-3 - Select2 I18n 占位符导轨
- docker - 在ups中使用docker部署生产服务器是个好主意吗?
- node.js - 将多个 Nodejs 应用程序配置到 nginx conf
- ruby-on-rails - 如何将类添加到 Rails 中的 simple_form 输入包装器?
- mysql - SQL使用下一个序列值创建表格式:'for'附近的语法不正确