我在红移有一个数据仓库。红移星团是2 nodes ra3.xlplus (4 vCPU, 32GB Memory)
。
我有相对较小的维度-最大的一个有1M记录。事实表将包含大约10M条记录。
根据我到目前为止检查过的博客,答案和视频,下面可能是DISTKEY和SORTKEY的正确组合吗?
对于所有维度-Dist style -all(因为数据少)
SORT KEY -维度的代理键
对于所有事实表-Dist style -键
DIST KEY -最重要的dim表的代理键在我的BI查询中经常加入。
SORT KEY -Dim_Date_ID因为这是用在where子句中。
谁能帮忙确认一下这是不是正确的组合?
我选中的参考链接This and This
谢谢!
圣彼得堡
你是正确的。总的来说:
- 将
DISTKEY
设置为JOIN
中最常用的列 - 将
SORTKEY
设置为WHERE
中最常用的列
如果表很小,那么DISTKEY ALL
就可以了——它会在所有节点之间复制表,从而减少跨节点的数据传输。
最好在所有被join的表上使用相同的DISTKEY
。这样,数据就分布在同一个节点上。