例如,如果我有5台服务器(A,B,C,D,E)
我们可以设置复制因子为3的数据吗? (例如,一次写入ABC,其他记录转到ABD,其他记录转到ABE,依此类推),因此当节点C出现硬件故障时,仍然存在一些记录。
我们是否还可以添加新节点,然后在不停机的情况下平衡存储的数据到新节点?
答案 0 :(得分:4)
是的,它可以做到这一点,但不是你想的那样。您所描述的将是NoSQL设置。 Postgres-XL是一个MPP数据库。
创建表格时,您可以定义表格" DISTRIBUTED BY"选项可以是复制,循环,散列,模数等。您需要查看每个选项的详细信息。您还可以将表空间定义为定义的节点。
您的设置类似
注意:重要的是要指出,因为我刚刚发现Postgres-XL没有HA或故障转移支持。这意味着如果单个节点发生故障,数据库将关闭并需要手动干预。更糟糕的是,如果您使用循环,散列,模数共享选项,如果您在单个节点上丢失了磁盘,则完全丢失了数据库。
您可以拥有镜像每个节点的节点,但这会使您需要的节点数量翻倍,但仍然无法进行故障转移。您必须手动将其配置为使用备用节点并重新启动它。