gpt4 book ai didi

cluster-computing - memSQL 如何将分区添加到现有的分片表/数据库?

转载 作者:行者123 更新时间:2023-12-04 12:52:33 24 4
gpt4 key购买 nike

将节点(叶节点或聚合器)添加到 memSQL 集群非常简单:我编辑了 memsql_cluster.json 并重新运行 memsql-cluster 设置。问题是向现有表添加分区。这里的要点是向上扩展:需要添加更多行,但已经耗尽了原始集群中的可用内存。

我试过,例如:

mysql> create partition DMP:32 on 'ec2-X-Y-Z.compute-1.amazonaws.com':3306;

ERROR 1773 (HY000): Partition ordinal 32 is out of bounds. It must be in [0, 32).

mysql>

阅读 memsql 文档,我找不到任何更改分区数的 ddl 选项。我不想删除并重新创建这些表。关于如何做到这一点有什么想法吗?

谢谢!

最佳答案

当内存已经耗尽时,您不能向内存数据库中添加更多行。也就是说,您可以横向扩展(即添加更多叶节点)。

您可以向 MemSQL 集群添加更多叶节点,然后运行 ​​rebalance_partitions 以在更大的集群中均匀分布现有分区。这将允许您的每个分区在集群中占用更多空间,从而允许您横向扩展。

如果您只想添加更多分区,您可以使用 mysqldump 导出 MemSQL 模式和数据,重新创建具有更多分区的数据库,然后将模式和数据加载回现在具有更多分区的数据库中。

在此处了解有关 rebalance_partitions 的更多信息: http://docs.memsql.com/docs/latest/ref/REBALANCE_PARTITIONS.html

关于cluster-computing - memSQL 如何将分区添加到现有的分片表/数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22966015/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com