我正在尝试 postgres-addon citus。到目前为止,我已经设置了一个包含一个协调器和三个工作节点的集群。
现在我想为其中一个工作节点设置辅助节点。到目前为止,我已经设置了从该工作节点到第四个(备用)节点的流复制。
我现在是否必须使用add_node和 noderole“辅助”将备用节点添加为辅助节点?
citus_add_secondary_node更好,因为您必须使用该命令定义合适的主节点?
或者,设置一个带有 citus 扩展的新数据库就足够了,并且add_node/ secondary会将该节点转变为包含来自工作线程的所有数据的辅助节点?
我使用以下命令获得了辅助节点的正确组 ID:
select * from pg_dist_node;
Run Code Online (Sandbox Code Playgroud) 是否可以使用 PostgreSQL 中的 citus 扩展来创建复制到每个工作节点的临时表(如引用表)?
当我像这样运行 SQL 时:
DROP TABLE IF EXISTS mypoint;
CREATE TEMP TABLE mypoint (mpoint geometry primary key);
SELECT create_reference_table('mypoint');
Run Code Online (Sandbox Code Playgroud)
我收到错误:
Run Code Online (Sandbox Code Playgroud)ERROR: unacceptable schema name "pg_temp_6" DETAIL: The prefix "pg_" is reserved for system schemas. CONTEXT: while executing command on mynode01:5432 SQL state: 42939
我问这个问题的原因是因为之后有更多的 SQL 命令,我需要在临时表和分布式表之间进行联接(citus 扩展不允许这样做)。