在之前的博客介绍了不同方式将textfile的hive表数据加载到orc表中,本篇介绍不同数据加载方式,对trafodion访问orc表的性能影响;
hive orc表数据加载: http://blog.itpub.net/69985104/viewspace-2758770/
hive reduce计算:
http://blog.itpub.net/69985104/viewspace-2758770/
hive orc行组索引: http://blog.itpub.net/69985104/viewspace-2758737/
CREATE TABLE orders2 ( O_ORDERKEY int , O_CUSTKEY int , O_ORDERSTATUS char(1) , O_TOTALPRICE decimal(15,2) , O_ORDERDATE date , O_ORDERPRIORITY char(15) , O_CLERK char(15) , O_SHIPPRIORITY int , O_COMMENT varchar(79) )row format delimited fields terminated by '|' ;
CREATE TABLE orders_orc_idx_f1 (
O_ORDERKEY int ,
O_CUSTKEY int ,
O_ORDERSTATUS char(1) ,
O_TOTALPRICE decimal(15,2) ,
O_ORDERDATE date ,
O_ORDERPRIORITY char(15) ,
O_CLERK char(15) ,
O_SHIPPRIORITY int ,
O_COMMENT varchar(79)
)STORED AS ORC TBLPROPERTIES('orc.create.index'='true'); -- 行组索引表
CREATE TABLE orders_orc_nidx_f1 (
O_ORDERKEY int ,
O_CUSTKEY int ,
O_ORDERSTATUS char(1) ,
O_TOTALPRICE decimal(15,2) ,
O_ORDERDATE date ,
O_ORDERPRIORITY char(15) ,
O_CLERK char(15) ,
O_SHIPPRIORITY int ,
O_COMMENT varchar(79)
)STORED AS ORC TBLPROPERTIES('orc.create.index'='false'); -- 非行组索引表
hive客户端分别指定order by、distribute by、sort by、 distribute by+sort by、cluster by或者通过trafodion访问hive表进行数据加载
select * from hive.hive.orders_orc_idx_f1 where o_orderkey = 100; -- 精确查询语句 select max(O_ORDERKEY),O_ORDERSTATUS from hive.hive.orders_orc_idx_f1 group by 2; -- 分析场景查询语句
hive客户端数据加载:
1、精确查询场景下,
带行组索引的orc表性能优于不带行组索引的orc表;
2、带有行组索引的orc表,底层有1个文件还是28个文件,trafci对精确查询影响不大,因为都只扫描了10000条数据;
3、带有行组索引的orc表,底层有1个文件还是28个文件,trafci对分析场景查询有影响,查询是全表扫描,但28个文件的查询性能好与1个文件,因为全表扫描时,hdfs多个文件并发比单个文件的并发高;
4、hive客户端,指定distribute、sort或者两者组合插入,hdfs都是26个文件,指定order by插入,hdfs生成1个数据文件;trafci客户端指定order by插入是按照28个esp生成28个数据文件;
5、按照分组列O_ORDERSTATUS指定distribute、sort、distribute+sort插入,trafci对分析场景查询性能影响不大,都是全表扫描;
但是插入时指定distribute的性能比未指定distribute的性能差;因为O_ORDERSTATUS指定distribute插入数据时,O_ORDERSTATUS数据UEC低与reduce数,不能均匀分布到hdfs下个各个数据文件,某些数据文件插入是分配过多数据造成数据插入性能比较差;
trafci客户端数据加载:
1、 精确查询场景下, 带行组索引的orc表与 不带行组索引的orc表性能一致;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69985104/viewspace-2758830/ ,如需转载,请注明出处,否则将追究法律责任。