版本:
2.1.4-rc03
问题描述:
我建表的时候使用AGGREGATE key
,分桶的时候使用DISTRIBUTED BY random BUCKETS auto
加载数据时,发现相同key的数据有时没有被聚合
建表:
create table test_agg_random
(
user_id varchar(30) ,
small_1 smallint min
) AGGREGATE key(user_id)
DISTRIBUTED BY random BUCKETS auto
properties (
"replication_num" = "1"
);
加载:
insert into test_agg_random (user_id, small_1) values (171880641998004128, 1);
insert into test_agg_random (user_id, small_1) values (171880641998004128, 2);
insert into test_agg_random (user_id, small_1) values (171880641998004128, 3);
insert into test_agg_random (user_id, small_1) values (171880641998004128, 4);
insert into test_agg_random (user_id, small_1) values (171880641998004128, 5);
insert into test_agg_random (user_id, small_1) values (171880641998004128, 6);
insert into test_agg_random (user_id, small_1) values (171880641998004128, 7);
insert into test_agg_random (user_id, small_1) values (171880641998004128, 8);
查询结果:
select * from test_agg_random;
171880641998004128 3
171880641998004128 1
171880641998004128 7
171880641998004128 8
171880641998004128 2
171880641998004128 4
171880641998004128 6
换成hash分桶结果就正常了:
create table test_agg_hash
(
user_id varchar(30) ,
small_1 smallint min
) AGGREGATE key(user_id)
DISTRIBUTED BY hash(user_id) BUCKETS auto
properties (
"replication_num" = "1"
);
我的问题:
我有尝试使用unique key + random
分桶建表,会报错说不允许这样用;
我想知道AGGREGATE key + random
分桶建表是否也是不允许的使用方式,为什么和unique key + random
分桶的行为不一样?
有没有办法能让我AGGREGATE key + random
分桶的数据正常聚合?