在 lightdb 中如何创建分布式表

发布时间 2023-06-25 16:26:10作者: winter-loo

通过这篇文章,我搭建了一个单机分布式集群。在该集群内,可以通过下面这条 sql 语句将普通的带有主键的表改为分布式表:

-- 'id' 为表 'test_table' 的主键
select create_distributed_table('test_table', 'id');

但上面的做法,每次都需要先创建一张表,然后再执行上面的 sql 语句将其改为分布式表。有没有一种方法默认创建的就是分布式表呢?
本篇文章介绍的一个 GUC 参数 lightdb_arch_mode 就刚好回答了上面的问题。

lightdb_arch_mode

该参数有两个值:dist/classic.
当取值为 dist 模式时,就表示后续 create table 创建的带有主键的表将自动成为分布式表。请注意:

  1. 该参数需要 lightdb 数据库启用了 canopy 插件才能生效
  2. 该参数是会话级别参数,当会话退出重连后,该参数又恢复默认值 classic.

详情请看操作实录