Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 是否可以将分布式列值分配给特定的Postgres XL节点?_Postgresql_Multi Tenant_Sharding_Postgres Xl - Fatal编程技术网

Postgresql 是否可以将分布式列值分配给特定的Postgres XL节点?

Postgresql 是否可以将分布式列值分配给特定的Postgres XL节点?,postgresql,multi-tenant,sharding,postgres-xl,Postgresql,Multi Tenant,Sharding,Postgres Xl,我们希望能够使用分布式表,其中一些节点将有多个租户,而其他节点可能只有一个或两个(例如,单独放置一个大规模、高流量租户,但将多个小租户分组在一起) 我看到通过散列和模的选项分发,我认为这不符合这个要求。还有其他的createtable选项(专门分布和DISTSTYLE,如下所示),但我似乎找不到关于这些选项含义的文档或详细信息。我看到一篇文章引用了一个自定义分发函数,但我找不到任何其他引用 问题: 是否有方法使用分布式或DISTSTYLE选项或通过其他方式将分发列值显式分配给节点? 自定义分发功

我们希望能够使用分布式表,其中一些节点将有多个租户,而其他节点可能只有一个或两个(例如,单独放置一个大规模、高流量租户,但将多个小租户分组在一起)

我看到通过散列和模的选项分发,我认为这不符合这个要求。还有其他的createtable选项(专门分布和DISTSTYLE,如下所示),但我似乎找不到关于这些选项含义的文档或详细信息。我看到一篇文章引用了一个自定义分发函数,但我找不到任何其他引用

问题: 是否有方法使用分布式或DISTSTYLE选项或通过其他方式将分发列值显式分配给节点? 自定义分发功能是否可用或在路线图上? (额外问题:是否有关于分布式或分布式样式的详细链接?)


如果按租户对表进行分区,然后将分区分配给节点组?因此,您的租户将使用位于其数据节点上的分区?这将使你的生活在许多不同的方面更加艰难,我看不到任何好处。这也使得修改或扩展集群几乎不可能,因为Postgres XL不会控制数据的放置。
...
[ 
  DISTRIBUTE BY { REPLICATION | ROUNDROBIN | { [HASH | MODULO ] ( column_name ) } } |
  DISTRIBUTED { { BY ( column_name ) } | { RANDOMLY } |
  DISTSTYLE { EVEN | KEY | ALL } DISTKEY ( column_name )
]