1.doris准备
创建catalog
CREATE CATALOG IF NOT EXISTS hive PROPERTIES (
"type"="hms",
"hive.metastore.uris" = "thrift://192.168.2.37:9083",
"hadoop.username" = "root",
"fs.defaultFS" = "hdfs://192.168.2.37:8020"
);
进入catalog
switch hive;
hive中创建新表是看不到的,需要doris中执行:REFRESH CATALOG hive;
然后show tables;即可看到
2.性能测试
2.1 hive里创建的表
CREATE TABLE `test_poc` (
`id` int ,
`name` string ,
`op_time` timestamp ,
`col1` date ,
`col2` string ,
`col3` int ,
`col4` string ,
`col5` string ,
`col6` string ,
`col7` string ,
`col8` string ,
`col9` string ,
`col10` string ,
`col11` string ,
`col12` string ,
`col13` string ,
`col14` string ,
`col15` string ,
`col16` string ,
`col17` string ,
`col18` string ,
`col19` string ,
`col20` string ,
`col21` string ,
`col22` string ,
`col23` string ,
`col24` string ,
`col25` string ,
`col26` string ,
`col27` string ,
`col28` string ,
`col29` string ,
`col30` string ,
`col31` string ,
`col32` string ,
`col33` string ,
`col34` string ,
`col35` string ,
`col36` string ,
`col37` string ,
`col38` string ,
`col39` string ,
`col40` string ,
`col41` string ,
`col42` string ,
`col43` string ,
`col44` string ,
`col45` string ,
`col46` string ,
`col47` string ,
`col48` string ,
`col49` string ,
`col50` string ,
`col51` string ,
`col52` string ,
`col53` string ,
`col54` string ,
`col55` string ,
`col56` string ,
`col57` string ,
`col58` string ,
`col59` string ,
`col60` string ,
`col61` string ,
`col62` string ,
`col63` string ,
`col64` string ,
`col65` string ,
`col66` string ,
`col67` string ,
`col68` string ,
`col69` string ,
`col70` string ,
`col71` string ,
`col72` string ,
`col73` string ,
`col74` string ,
`col75` string ,
`col76` string ,
`col77` string ,
`col78` string ,
`col79` string ,
`col80` string ,
`col81` string ,
`col82` string ,
`col83` string ,
`col84` string ,
`col85` string ,
`col86` string ,
`col87` string ,
`col88` string ,
`col89` string ,
`col90` string ,
`col91` string ,
`col92` string ,
`col93` string ,
`col94` string ,
`col95` string ,
`col96` string ,
`col97` string ,
`col98` string ,
`col99` string ,
`zcbus_source_optype` string ,
`zcbus_source_optime` timestamp ,
`zcbus_target_optime` timestamp
);
测试结果
mysql> insert into hive.test.test_poc select * from clhtest.test_poc;
Query OK, 2864755 rows affected (43.41 sec)
{'status':'COMMITTED', 'txnId':'14398879'}
mysql> insert into hive.test.test_poc select * from clhtest.test_poc;
Query OK, 2864755 rows affected (28.84 sec)
{'status':'COMMITTED', 'txnId':'14398880'}
mysql> insert into hive.test.test_poc select * from clhtest.test_poc;
Query OK, 2864755 rows affected (30.79 sec)
{'status':'COMMITTED', 'txnId':'14398881'}
同样的数据直接推动hdfs性能
mysql> SELECT * FROM test_poc
-> INTO OUTFILE "hdfs://192.168.2.37:8020/user/hive/warehouse/test.db/test_poc/result_"
-> FORMAT AS PARQUET
-> PROPERTIES
-> (
-> "fs.defaultFS" = "hdfs://192.168.2.37:8020",
-> "hadoop.username" = "root"
-> );
+------------+-----------+------------+---------------------------------------------------------------------------------------------------------+
| FileNumber | TotalRows | FileSize | URL |
+------------+-----------+------------+---------------------------------------------------------------------------------------------------------+
| 4 | 2864755 | 3429542951 | hdfs://192.168.2.37:8020/user/hive/warehouse/test.db/test_poc/result_a0456d8b54a4343-892580b49f3cb635_* |
+------------+-----------+------------+---------------------------------------------------------------------------------------------------------+
1 row in set (1 min 44.77 sec)
mysql> SELECT * FROM test_poc
-> INTO OUTFILE "hdfs://192.168.2.37:8020/user/hive/warehouse/test.db/test_poc/result_"
-> FORMAT AS PARQUET
-> PROPERTIES
-> (
-> "fs.defaultFS" = "hdfs://192.168.2.37:8020",
-> "hadoop.username" = "root"
-> );
+------------+-----------+------------+----------------------------------------------------------------------------------------------------------+
| FileNumber | TotalRows | FileSize | URL |
+------------+-----------+------------+----------------------------------------------------------------------------------------------------------+
| 4 | 2864755 | 3382046011 | hdfs://192.168.2.37:8020/user/hive/warehouse/test.db/test_poc/result_f16cfc0784e64aed-ae15e28262240d64_* |
+------------+-----------+------------+----------------------------------------------------------------------------------------------------------+
1 row in set (1 min 33.05 sec)
mysql> SELECT * FROM test_poc
-> INTO OUTFILE "hdfs://192.168.2.37:8020/user/hive/warehouse/test.db/test_poc/result_"
-> FORMAT AS PARQUET
-> PROPERTIES
-> (
-> "fs.defaultFS" = "hdfs://192.168.2.37:8020",
-> "hadoop.username" = "root"
-> );
+------------+-----------+------------+----------------------------------------------------------------------------------------------------------+
| FileNumber | TotalRows | FileSize | URL |
+------------+-----------+------------+----------------------------------------------------------------------------------------------------------+
| 4 | 2864755 | 3367945087 | hdfs://192.168.2.37:8020/user/hive/warehouse/test.db/test_poc/result_3292b02503c34aef-9f1e608180049949_* |
+------------+-----------+------------+----------------------------------------------------------------------------------------------------------+
1 row in set (1 min 50.66 sec)
2.2 doris里建表(parquet格式)
CREATE TABLE `test_poc_parquet` (
`id` int ,
`name` varchar(200) ,
`op_time` datetime ,
`col1` date ,
`col2` char(80) ,
`col3` int NULL,
`col4` varchar(120) ,
`col5` varchar(120) ,
`col6` varchar(120) ,
`col7` varchar(120) ,
`col8` varchar(120) ,
`col9` varchar(120) ,
`col10` varchar(120) ,
`col11` varchar(120) ,
`col12` varchar(120) ,
`col13` varchar(120) ,
`col14` varchar(120) ,
`col15` varchar(120) ,
`col16` varchar(120) ,
`col17` varchar(120) ,
`col18` varchar(120) ,
`col19` varchar(120) ,
`col20` varchar(120) ,
`col21` varchar(120) ,
`col22` varchar(120) ,
`col23` varchar(120) ,
`col24` varchar(120) ,
`col25` varchar(120) ,
`col26` varchar(120) ,
`col27` varchar(120) ,
`col28` varchar(120) ,
`col29` varchar(120) ,
`col30` varchar(120) ,
`col31` varchar(120) ,
`col32` varchar(120) ,
`col33` varchar(120) ,
`col34` varchar(120) ,
`col35` varchar(120) ,
`col36` varchar(120) ,
`col37` varchar(120) ,
`col38` varchar(120) ,
`col39` varchar(120) ,
`col40` varchar(120) ,
`col41` varchar(120) ,
`col42` varchar(120) ,
`col43` varchar(120) ,
`col44` varchar(120) ,
`col45` varchar(120) ,
`col46` varchar(120) ,
`col47` varchar(120) ,
`col48` varchar(120) ,
`col49` varchar(120) ,
`col50` varchar(128) ,
`col51` varchar(128) ,
`col52` varchar(128) ,
`col53` varchar(128) ,
`col54` varchar(128) ,
`col55` varchar(128) ,
`col56` varchar(128) ,
`col57` varchar(128) ,
`col58` varchar(128) ,
`col59` varchar(128) ,
`col60` varchar(128) ,
`col61` varchar(128) ,
`col62` varchar(128) ,
`col63` varchar(128) ,
`col64` varchar(128) ,
`col65` varchar(128) ,
`col66` varchar(128) ,
`col67` varchar(128) ,
`col68` varchar(128) ,
`col69` varchar(128) ,
`col70` varchar(128) ,
`col71` varchar(128) ,
`col72` varchar(128) ,
`col73` varchar(128) ,
`col74` varchar(128) ,
`col75` varchar(128) ,
`col76` varchar(128) ,
`col77` varchar(128) ,
`col78` varchar(128) ,
`col79` varchar(128) ,
`col80` varchar(128) ,
`col81` varchar(128) ,
`col82` varchar(128) ,
`col83` varchar(128) ,
`col84` varchar(128) ,
`col85` varchar(128) ,
`col86` varchar(128) ,
`col87` varchar(128) ,
`col88` varchar(128) ,
`col89` varchar(128) ,
`col90` varchar(128) ,
`col91` varchar(128) ,
`col92` varchar(128) ,
`col93` varchar(128) ,
`col94` varchar(128) ,
`col95` varchar(128) ,
`col96` varchar(128) ,
`col97` varchar(128) ,
`col98` varchar(128) ,
`col99` varchar(128) ,
`zcbus_source_optype` varchar(40) ,
`zcbus_source_optime` datetime ,
`zcbus_target_optime` datetime
) ENGINE=hive
PROPERTIES (
'file_format'='parquet'
);
测试结果
mysql> insert into hive.test.test_poc_parquet select * from clhtest.test_poc;
Query OK, 2864755 rows affected (49.54 sec)
{'status':'COMMITTED', 'txnId':'14398883'}
mysql> insert into hive.test.test_poc_parquet select * from clhtest.test_poc;
Query OK, 2864755 rows affected (40.29 sec)
{'status':'COMMITTED', 'txnId':'14398884'}
mysql> insert into hive.test.test_poc_parquet select * from clhtest.test_poc;
Query OK, 2864755 rows affected (40.33 sec)
{'status':'COMMITTED', 'txnId':'14398885'}
2.3 doris里建表(orc格式)
CREATE TABLE `test_poc_orc` (
`id` int ,
`name` varchar(200) ,
`op_time` datetime ,
`col1` date ,
`col2` char(80) ,
`col3` int NULL,
`col4` varchar(120) ,
`col5` varchar(120) ,
`col6` varchar(120) ,
`col7` varchar(120) ,
`col8` varchar(120) ,
`col9` varchar(120) ,
`col10` varchar(120) ,
`col11` varchar(120) ,
`col12` varchar(120) ,
`col13` varchar(120) ,
`col14` varchar(120) ,
`col15` varchar(120) ,
`col16` varchar(120) ,
`col17` varchar(120) ,
`col18` varchar(120) ,
`col19` varchar(120) ,
`col20` varchar(120) ,
`col21` varchar(120) ,
`col22` varchar(120) ,
`col23` varchar(120) ,
`col24` varchar(120) ,
`col25` varchar(120) ,
`col26` varchar(120) ,
`col27` varchar(120) ,
`col28` varchar(120) ,
`col29` varchar(120) ,
`col30` varchar(120) ,
`col31` varchar(120) ,
`col32` varchar(120) ,
`col33` varchar(120) ,
`col34` varchar(120) ,
`col35` varchar(120) ,
`col36` varchar(120) ,
`col37` varchar(120) ,
`col38` varchar(120) ,
`col39` varchar(120) ,
`col40` varchar(120) ,
`col41` varchar(120) ,
`col42` varchar(120) ,
`col43` varchar(120) ,
`col44` varchar(120) ,
`col45` varchar(120) ,
`col46` varchar(120) ,
`col47` varchar(120) ,
`col48` varchar(120) ,
`col49` varchar(120) ,
`col50` varchar(128) ,
`col51` varchar(128) ,
`col52` varchar(128) ,
`col53` varchar(128) ,
`col54` varchar(128) ,
`col55` varchar(128) ,
`col56` varchar(128) ,
`col57` varchar(128) ,
`col58` varchar(128) ,
`col59` varchar(128) ,
`col60` varchar(128) ,
`col61` varchar(128) ,
`col62` varchar(128) ,
`col63` varchar(128) ,
`col64` varchar(128) ,
`col65` varchar(128) ,
`col66` varchar(128) ,
`col67` varchar(128) ,
`col68` varchar(128) ,
`col69` varchar(128) ,
`col70` varchar(128) ,
`col71` varchar(128) ,
`col72` varchar(128) ,
`col73` varchar(128) ,
`col74` varchar(128) ,
`col75` varchar(128) ,
`col76` varchar(128) ,
`col77` varchar(128) ,
`col78` varchar(128) ,
`col79` varchar(128) ,
`col80` varchar(128) ,
`col81` varchar(128) ,
`col82` varchar(128) ,
`col83` varchar(128) ,
`col84` varchar(128) ,
`col85` varchar(128) ,
`col86` varchar(128) ,
`col87` varchar(128) ,
`col88` varchar(128) ,
`col89` varchar(128) ,
`col90` varchar(128) ,
`col91` varchar(128) ,
`col92` varchar(128) ,
`col93` varchar(128) ,
`col94` varchar(128) ,
`col95` varchar(128) ,
`col96` varchar(128) ,
`col97` varchar(128) ,
`col98` varchar(128) ,
`col99` varchar(128) ,
`zcbus_source_optype` varchar(40) ,
`zcbus_source_optime` datetime ,
`zcbus_target_optime` datetime
) ENGINE=hive
PROPERTIES (
'file_format'='orc'
);
测试结果
mysql> insert into hive.test.test_poc_orc select * from clhtest.test_poc;
Query OK, 2864755 rows affected (1 min 11.41 sec)
{'status':'COMMITTED', 'txnId':'14398890'}
mysql> insert into hive.test.test_poc_orc select * from clhtest.test_poc;
Query OK, 2864755 rows affected (1 min 4.29 sec)
{'status':'COMMITTED', 'txnId':'14398891'}
mysql> insert into hive.test.test_poc_orc select * from clhtest.test_poc;
Query OK, 2864755 rows affected (1 min 3.92 sec)
{'status':'COMMITTED', 'txnId':'14398892'}
2.4 doris里建表(text格式)
CREATE TABLE `test_poc_text` (
`id` int ,
`name` varchar(200) ,
`op_time` datetime ,
`col1` date ,
`col2` char(80) ,
`col3` int NULL,
`col4` varchar(120) ,
`col5` varchar(120) ,
`col6` varchar(120) ,
`col7` varchar(120) ,
`col8` varchar(120) ,
`col9` varchar(120) ,
`col10` varchar(120) ,
`col11` varchar(120) ,
`col12` varchar(120) ,
`col13` varchar(120) ,
`col14` varchar(120) ,
`col15` varchar(120) ,
`col16` varchar(120) ,
`col17` varchar(120) ,
`col18` varchar(120) ,
`col19` varchar(120) ,
`col20` varchar(120) ,
`col21` varchar(120) ,
`col22` varchar(120) ,
`col23` varchar(120) ,
`col24` varchar(120) ,
`col25` varchar(120) ,
`col26` varchar(120) ,
`col27` varchar(120) ,
`col28` varchar(120) ,
`col29` varchar(120) ,
`col30` varchar(120) ,
`col31` varchar(120) ,
`col32` varchar(120) ,
`col33` varchar(120) ,
`col34` varchar(120) ,
`col35` varchar(120) ,
`col36` varchar(120) ,
`col37` varchar(120) ,
`col38` varchar(120) ,
`col39` varchar(120) ,
`col40` varchar(120) ,
`col41` varchar(120) ,
`col42` varchar(120) ,
`col43` varchar(120) ,
`col44` varchar(120) ,
`col45` varchar(120) ,
`col46` varchar(120) ,
`col47` varchar(120) ,
`col48` varchar(120) ,
`col49` varchar(120) ,
`col50` varchar(128) ,
`col51` varchar(128) ,
`col52` varchar(128) ,
`col53` varchar(128) ,
`col54` varchar(128) ,
`col55` varchar(128) ,
`col56` varchar(128) ,
`col57` varchar(128) ,
`col58` varchar(128) ,
`col59` varchar(128) ,
`col60` varchar(128) ,
`col61` varchar(128) ,
`col62` varchar(128) ,
`col63` varchar(128) ,
`col64` varchar(128) ,
`col65` varchar(128) ,
`col66` varchar(128) ,
`col67` varchar(128) ,
`col68` varchar(128) ,
`col69` varchar(128) ,
`col70` varchar(128) ,
`col71` varchar(128) ,
`col72` varchar(128) ,
`col73` varchar(128) ,
`col74` varchar(128) ,
`col75` varchar(128) ,
`col76` varchar(128) ,
`col77` varchar(128) ,
`col78` varchar(128) ,
`col79` varchar(128) ,
`col80` varchar(128) ,
`col81` varchar(128) ,
`col82` varchar(128) ,
`col83` varchar(128) ,
`col84` varchar(128) ,
`col85` varchar(128) ,
`col86` varchar(128) ,
`col87` varchar(128) ,
`col88` varchar(128) ,
`col89` varchar(128) ,
`col90` varchar(128) ,
`col91` varchar(128) ,
`col92` varchar(128) ,
`col93` varchar(128) ,
`col94` varchar(128) ,
`col95` varchar(128) ,
`col96` varchar(128) ,
`col97` varchar(128) ,
`col98` varchar(128) ,
`col99` varchar(128) ,
`zcbus_source_optype` varchar(40) ,
`zcbus_source_optime` datetime ,
`zcbus_target_optime` datetime
) ENGINE=hive
PROPERTIES (
'file_format'='text'
);
测试结果
mysql> insert into hive.test.test_poc_text select * from clhtest.test_poc;
Query OK, 2864755 rows affected (34.11 sec)
{'status':'COMMITTED', 'txnId':'14398894'}
mysql> insert into hive.test.test_poc_text select * from clhtest.test_poc;
Query OK, 2864755 rows affected (25.71 sec)
{'status':'COMMITTED', 'txnId':'14398895'}
mysql> insert into hive.test.test_poc_text select * from clhtest.test_poc;
Query OK, 2864755 rows affected (26.17 sec)
{'status':'COMMITTED', 'txnId':'14398896'}
2.5 doris里创建hive压缩表
CREATE TABLE `test_poc_text_gzip` (
`id` int ,
`name` varchar(200) ,
`op_time` datetime ,
`col1` date ,
`col2` char(80) ,
`col3` int NULL,
`col4` varchar(120) ,
`col5` varchar(120) ,
`col6` varchar(120) ,
`col7` varchar(120) ,
`col8` varchar(120) ,
`col9` varchar(120) ,
`col10` varchar(120) ,
`col11` varchar(120) ,
`col12` varchar(120) ,
`col13` varchar(120) ,
`col14` varchar(120) ,
`col15` varchar(120) ,
`col16` varchar(120) ,
`col17` varchar(120) ,
`col18` varchar(120) ,
`col19` varchar(120) ,
`col20` varchar(120) ,
`col21` varchar(120) ,
`col22` varchar(120) ,
`col23` varchar(120) ,
`col24` varchar(120) ,
`col25` varchar(120) ,
`col26` varchar(120) ,
`col27` varchar(120) ,
`col28` varchar(120) ,
`col29` varchar(120) ,
`col30` varchar(120) ,
`col31` varchar(120) ,
`col32` varchar(120) ,
`col33` varchar(120) ,
`col34` varchar(120) ,
`col35` varchar(120) ,
`col36` varchar(120) ,
`col37` varchar(120) ,
`col38` varchar(120) ,
`col39` varchar(120) ,
`col40` varchar(120) ,
`col41` varchar(120) ,
`col42` varchar(120) ,
`col43` varchar(120) ,
`col44` varchar(120) ,
`col45` varchar(120) ,
`col46` varchar(120) ,
`col47` varchar(120) ,
`col48` varchar(120) ,
`col49` varchar(120) ,
`col50` varchar(128) ,
`col51` varchar(128) ,
`col52` varchar(128) ,
`col53` varchar(128) ,
`col54` varchar(128) ,
`col55` varchar(128) ,
`col56` varchar(128) ,
`col57` varchar(128) ,
`col58` varchar(128) ,
`col59` varchar(128) ,
`col60` varchar(128) ,
`col61` varchar(128) ,
`col62` varchar(128) ,
`col63` varchar(128) ,
`col64` varchar(128) ,
`col65` varchar(128) ,
`col66` varchar(128) ,
`col67` varchar(128) ,
`col68` varchar(128) ,
`col69` varchar(128) ,
`col70` varchar(128) ,
`col71` varchar(128) ,
`col72` varchar(128) ,
`col73` varchar(128) ,
`col74` varchar(128) ,
`col75` varchar(128) ,
`col76` varchar(128) ,
`col77` varchar(128) ,
`col78` varchar(128) ,
`col79` varchar(128) ,
`col80` varchar(128) ,
`col81` varchar(128) ,
`col82` varchar(128) ,
`col83` varchar(128) ,
`col84` varchar(128) ,
`col85` varchar(128) ,
`col86` varchar(128) ,
`col87` varchar(128) ,
`col88` varchar(128) ,
`col89` varchar(128) ,
`col90` varchar(128) ,
`col91` varchar(128) ,
`col92` varchar(128) ,
`col93` varchar(128) ,
`col94` varchar(128) ,
`col95` varchar(128) ,
`col96` varchar(128) ,
`col97` varchar(128) ,
`col98` varchar(128) ,
`col99` varchar(128) ,
`zcbus_source_optype` varchar(40) ,
`zcbus_source_optime` datetime ,
`zcbus_target_optime` datetime
) ENGINE=hive
PROPERTIES (
'file_format'='text',
'compression'='gzip'
);
测试结果
mysql> insert into hive.test.test_poc_text_gzip select * from clhtest.test_poc;
Query OK, 2864755 rows affected (2 min 42.84 sec)
{'status':'COMMITTED', 'txnId':'14398898'}
mysql> insert into hive.test.test_poc_text_gzip select * from clhtest.test_poc;
Query OK, 2864755 rows affected (2 min 37.92 sec)
{'status':'COMMITTED', 'txnId':'14398899'}
文档更新时间: 2025-03-12 22:59 作者:wangyanjie