fluss数据分桶的策略有哪些?

提问者:Rae 问题分类:大数据
fluss数据分桶的策略有哪些?
2 个回答
箫声断ツ何处莫凭栏
箫声断ツ何处莫凭栏
在flush中关于不同表的策略使用情况如下:
1、主键表仅允许使用哈希桶策略。
2、日志表默认使用粘性桶策略,但也可以使用其他两种桶策略。
发布于:3个月前 (01-17) IP属地:四川省
深海少女心
深海少女心
在创建Fluss表时,可以通过为表设置'bucket.num' = ''属性来指定桶的数量。目前,Fluss支持三种桶策略:
1、哈希桶策略(Hash Bucketing)
哈希桶策略在OLAP场景中很常见。其优势在于它可以非常均匀地分布在多个节点上,充分利用分布式计算的能力,并且具有良好的扩展性(调整桶或集群的规模)以应对海量数据。
用法:通过为表设置'bucket.key' = 'col1, col2'属性来指定哈希桶策略的桶键。对于主键表,默认使用主键(不包括分区键)作为桶键。
2、粘性桶策略(Sticky Bucketing)
粘性桶策略使得在向日志表写入记录时能够实现较大的批次并减少延迟。发送一批次后,粘性桶会改变。随着时间推移,记录会在所有桶之间均匀分布。粘性桶策略是日志表的默认桶策略。这一点非常重要,因为日志表使用Apache Arrow作为底层数据格式,这对于大批量数据处理来说是高效的。
用法:通过为表设置'client.writer.bucket.no-key-assigner'='sticky'属性来启用此策略。主键表不支持该策略。
3、轮询桶策略(Round-Robin Bucketing)
轮询桶策略是一种简单的策略,在写入每条记录之前随机选择一个桶。这种策略适用于数据分布相对均匀、数据没有倾斜的场景。
用法:通过为表设置'client.writer.bucket.no-key-assigner'='round_robin'属性来启用此策略。主键表不支持该策略。
发布于:3个月前 (01-17) IP属地:四川省
我来回答