学科分类
目录
Hadoop技术栈

MySQL表数据导入Hive

如果Hadoop集群中部署了Hive服务,并且在Sqoop服务的sqoop-env.sh文件中配置了Hive的安装路径,那么也可以通过Sqoop工具将MySQL表数据导入Hive表中。

将MySQL表数据导入到Hive文件系统中,具体指令示例如下。

$ sqoop import \

--connect jdbc:mysql://hadoop01:3306/userdb \

--username root \

--password 123456 \

--table emp_add \

**--hive-table itcast.emp_add_sp** \

**--create-hive-table** \

**--hive-import** \

--num-mappers 1

上述指令中,“--hive-table itcast.emp_add_sp”用于指定上传到Hive上的目标地址为itcast数据仓库的emp_add_sp表中,这里必须提前创建对应的itcast数据仓库;“--create-hive-table”用于指定自动创建指定的目标Hive表(即emp_add_sp表),如果表已存在,则执行失败;“--hive-import”用于将对应的MySQL表(即emp_add表)导入Hive中进行数据映射。

执行上述指令后,可以连接到Hive客户端查看Hive数据仓库表数据,结果如图1所示。

img

图1 查看导入Hive表数据

从图1看出,Sqoop成功将MySQL表数据导入了Hive中,也可在HDFS UI界面查看,如图2所示。

img

图2 Hive表文件路径

从图2可以看出,Hive表数据是一个MapReduce的结果文件,从命名可以看出,本次MapReduce作业只进行了Map阶段。

点击此处
隐藏目录