前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >0805-CDH5中的Parquet迁移至CDP中兼容性验证

0805-CDH5中的Parquet迁移至CDP中兼容性验证

作者头像
Fayson
发布2020-08-20 22:11:53
6480
发布2020-08-20 22:11:53
举报
文章被收录于专栏:Hadoop实操Hadoop实操

文档编写目的

因为CDH5中的Parquet版本为1.5,而CDP7中的Parquet版本为1.10,我们在从CDH5升级到CDP7后,无论是原地升级还是迁移升级,都可能会碰到一个问题,以前在CDH5中使用Hive/Impala生成的低版本Parquet文件还能继续在CDP7中使用吗。本文主要描述将CDH5中的Parquet文件传输到CDP7环境中,使用CDP7中的Hive,Impala,Spark确认能否继续访问这些文件。

  • 测试环境

1.集群环境:CDH5.16.2/CDP7.1.1

2.系统环境:Redhat7.6

验证步骤

2.1在CDH5中生成Parquet1.5文件

2.1.1集群版本验证

查看集群Hadoop版本

代码语言:javascript
复制
hadoop version

打开CM页面点击支持点击关于

2.1.2Impala建表测试

打开Hue选择 Impala,创建Parquet表

执行数据插入

代码语言:javascript
复制
INSERT into test1.hive_data_parquet VALUES ('1','0814','深圳','cloudera');
INSERT into test1.hive_data_parquet VALUES ('2','0814','深圳','cloudera');
INSERT into test1.hive_data_parquet VALUES ('3','0814','深圳','cloudera');
INSERT into test1.hive_data_parquet VALUES ('4','0814','深圳','cloudera');
INSERT into test1.hive_data_parquet VALUES ('5','0814','深圳','cloudera');
INSERT into test1.hive_data_parquet VALUES ('6','0814','深圳','cloudera');
INSERT into test1.hive_data_parquet VALUES ('7','0814','深圳','cloudera');
INSERT into test1.hive_data_parquet VALUES ('8','0814','深圳','cloudera');
INSERT into test1.hive_data_parquet VALUES ('9','0814','深圳','cloudera');
INSERT into test1.hive_data_parquet VALUES ('10','0814','深圳','cloudera');

查询数据是否插入成功

代码语言:javascript
复制
SELECT * FROM test1.hive_data_parquet;

2.1.3使用CDH5中的Spark SQL读取Parquet表

在客户端访问spark-shell,并输入查询语句。

代码语言:javascript
复制
spark2-shell
spark.sql("SELECT * FROM test1.hive_data_parquet").show

查询成功

2.2将Parquet表从CDH5迁移到CDP

2.2.1集群数据迁移

正常采用hadoop distcp命令,这里由于都开启了kerberos,需要配置互信,过程太长,采用hdfs get put scp命令代替

源端执行get命令

代码语言:javascript
复制
hdfs dfs -get /tmp/hivedata_parquet /tmp/
ll /tmp/hivedata_parquet/
代码语言:javascript
复制
scp -r /tmp/hivedata_parquet root@192.168.0.156:/tmp/  

目标端验证传输成功

代码语言:javascript
复制
ll /tmp/hivedata_parquet/
代码语言:javascript
复制
hdfs dfs -put/tmp/hivedata_parquet /tmp/hdfs dfs -ls/tmp/hivedata_parquet

2.2.2 在CDP中建立Impala表

代码语言:javascript
复制
create external table test1.hive_data_parquet(
id string,
collectiondate string,
collectionaddress string,
textch string
)
STORED AS parquet
location '/tmp/hivedata_parquet';

2.3 在CDP7中进行测试

2.3.1 集群版本验证

2.3.2 Impala查询测试

代码语言:javascript
复制
SELECT * from test1.hive_data_parquet;

2.3.3 在CDP7中使用Spark SQL读取Parquet1.5的表

代码语言:javascript
复制
spark-shellspark.sql("SELECT * FROM test1.hive_data_parquet").show
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hadoop实操 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
专用宿主机
专用宿主机(CVM Dedicated Host,CDH)提供用户独享的物理服务器资源,满足您资源独享、资源物理隔离、安全、合规需求。专用宿主机搭载了腾讯云虚拟化系统,购买之后,您可在其上灵活创建、管理多个自定义规格的云服务器实例,自主规划物理资源的使用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档