Cassandra-键空间级别多租户

时间:2019-04-17 07:43:33

标签: cassandra

我正在开发多租户应用程序,目前我们确实有基于行键的多租户,并且与我们的合作一直很好。

最近,我们有一个要求,我们希望为每个租户分配存储空间,因此我们计划为每个租户分配单独的密钥空间,以保存租户特定的数据。

当我们确认拥有密钥空间/租户的选择时,我们遇到了很多帖子,说这可能会影响性能,也没有真正找到有人说我们已经实现了密钥空间级别多租户。

我们的集群将容纳大约2k个租户。因此,一个集群中将有2k个键空间,其中每个键空间将具有大约10个列族。 此设计可能会对性能产生什么影响?

1 个答案:

答案 0 :(得分:1)

拥有20,000张桌子可能会在许多方面给您带来麻烦,

  1. 紧凑会很慢,而且经常会失败。
  2. 维修服务将运行很长时间且时间无法预测。
  3. 内存需求很高,可能会导致JVM Heap出现问题。

除了那些之外,还有其他一些问题-例如将来,如果根本上需要进行架构更改,那么在生产中将很难实现。

保持逻辑分离可能是一个更好的主意-例如,不是每个租户都创建密钥空间,而是创建固定数量的密钥空间(受控的和较小的数目),并且如果真的需要在同一个密钥空间中有多个租户(以某种方式关联)从行级移开。

https://docs.datastax.com/en/dse-planning/doc/planning/planningAntiPatterns.html-这说明了反模式中的表格过多。