更新时间:2022-06-13 GMT+08:00
选择分布方式
复制表(Replication)方式将表中的全量数据在集群的每一个DN实例上保留一份。主要适用于记录集较小的表。这种存储方式的优点是每个DN上都有此表的全量数据,在join操作中可以避免数据重分布操作,从而减小网络开销,同时减少了plan segment(每个plan segment都会起对应的线程);缺点是每个DN都保留了表的完整数据,造成数据的冗余。一般情况下只有较小的维度表才会定义为Replication表。
哈希(Hash)表将表中某一个或几个字段进行hash运算后,生成对应的hash值,根据DN实例与哈希值的映射关系获得该元组的目标存储位置。对于Hash分布表,在读/写数据时可以利用各个节点的IO资源,大大提升表的读/写速度。一般情况下大表定义为Hash表。
策略 |
描述 |
适用场景 |
---|---|---|
Hash |
表数据通过hash方式散列到集群中的所有DN实例上。 |
数据量较大的事实表。 |
Replication |
集群中每一个DN实例上都有一份全量表数据。 |
小表、维度表。 |
如图1所示,复制表如图中的表T1,哈希表如图中的表T2。
父主题: 审视和修改表定义