Templates 如何处理环境之间不同的键空间定义?
我想问卡桑德拉一个与代码相关的问题。 在dev/qa中,我们有一个单节点cassandra集群 在stage/prod环境中,集群中有多个节点。 相同的集群名称、相同的键空间名称,但需要不同的复制因子 每个人如何管理他们的代码库?下面的一个例子是,当我需要将脚本部署到dev/qa时,我们选择了一个SimpleStregy repl因子。 当我们需要进入阶段/产品部署时。。我们现在需要使用repl因子为3的网络拓扑策略 现在,我被迫部署不同的脚本,或者在脚本中注释掉一行,另一行: 两个版本:Templates 如何处理环境之间不同的键空间定义?,templates,cassandra,environments,Templates,Cassandra,Environments,我想问卡桑德拉一个与代码相关的问题。 在dev/qa中,我们有一个单节点cassandra集群 在stage/prod环境中,集群中有多个节点。 相同的集群名称、相同的键空间名称,但需要不同的复制因子 每个人如何管理他们的代码库?下面的一个例子是,当我需要将脚本部署到dev/qa时,我们选择了一个SimpleStregy repl因子。 当我们需要进入阶段/产品部署时。。我们现在需要使用repl因子为3的网络拓扑策略 现在,我被迫部署不同的脚本,或者在脚本中注释掉一行,另一行: 两个版本: 创
- 创建_keyspace_tables.dev.cql
- 创建_keyspace_tables.stg.cql
更新:我现在了解到cassandra/datastax enterprise实际上允许我使用NetworkTopologyStrategy创建一个KeySACE,即使是使用单个节点。这样,我可以保持键空间代码不变,而不必以这种方式分叉“创建代码”。有人能证实这一行为吗?更新一下:我现在了解到cassandra/datastax enterprise实际上允许我使用NetworkTopologyStrategy创建一个KeySAP,即使只有一个节点。这样,我可以保持键空间代码不变,而不必以这种方式分叉“创建代码”。有人能证实这种行为吗?
-- dev/qa
-- CREATE KEYSPACE IF NOT EXISTS mykeyspace WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
-- stage/prod
-- CREATE KEYSPACE IF NOT EXISTS mykeyspace WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
USE mykeyspace;
CREATE TABLE my_table (
storeNumber text,
businessDate timestamp,