【无标题】hyperdrive表根据rowkey预分region

9 篇文章 0 订阅
2 篇文章 0 订阅
文章讲述了如何在创建Hive表时利用Hyperdrive的splitkey功能进行数据预分区。对于struct类型的rowkey,每个splitkey需按照字段顺序指定JSON格式的值,而原始类型的rowkey则直接用双引号包裹并以逗号分隔。示例中展示了针对struct和原始类型rowkey的splitkey配置方法。
摘要由CSDN通过智能技术生成
⼀、创建 hyperdrive表时候添加 split key
创建表的时候在 tblproperties中使⽤hyperdrive.table.splitkey配置项指定split key
1. 对于struct类型row key, 每个split key都是⼀个Row key对应的⼀个JSON格式的值。在值中的 {}符号是需要转义的。
⽐如:
{"name":"张三","age":51,"birth":"2004-12-11"}
指定多个split key需要使⽤逗号隔开。
注意:
1) struct类型值中的每个字段顺序都是需要和表中schema的顺序对⻬的。
2) struct类型的值可以指定前缀, 后缀可以省略。
2. 对于原始类型的row key, 每个split key需要使⽤双引号,在值中的 符号是需要转义的。 多个split key使⽤逗号相隔
示例
1. struct row key预分region
drop table if exists split_key_test;
create table split_key_test(
key struct<name:string,birth:date>,
name string,
age int,
birth date
)
row format delimited collection items terminated by '|'
stored by 'io.transwarp.hyperdrive.HyperdriveStorageHandler'
with serdeproperties('hbase.columns.mapping'=':key,f:a1,f:a2,f:a3',
'hyperdrive.structstring.length.default'='10'
)
tblproperties('COMPRESSION'='SNAPPY',
'hyperdrive.table.splitkey'='
{"name":"1000","age":51,"birth":"2004-12-11"},
{"name":"2000","age":51,"birth":"2004-12-11"},
{"name":"3000","age":51,"birth":"2004-12-11"},
{"name":"4000","age":51,"birth":"2004-12-11"},
{"name":"5000","age":51,"birth":"2004-12-11"},
{"name":"6000","age":51,"birth":"2004-12-11"},
{"name":"7000","age":51,"birth":"2004-12-11"},
{"name":"8000","age":51,"birth":"2004-12-11"},
{"name":"9000","age":51,"birth":"2004-12-11"}');
 
原始类型key预分region
 
drop table if exists split_key_test;
create table split_key_test (
key bigint,
sv0 bigint
)
stored by 'io.transwarp.hyperdrive.HyperdriveStorageHandler'
tblproperties('COMPRESSION'='SNAPPY',
'hyperdrive.table.splitkey'='"10000","20000","30000","40000","50000"');
 
 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值