如何在不使用sqoop的情况下将行从mysql复制到hive

tcbh2hod  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(306)

我必须将整个mysql表从那里复制到hive。我不能用sqoop。
我找到了一种从mysql获取整个数据集的方法,并且,逐行(循环到数据集中)、复制到hive中。。。
但是它是一个非常慢的方法(在我的集群中,50k行需要几个小时)
这是一种类似于“插入mysql从配置单元选择*”的方式吗?
谢谢你,马可

tzxcd3kk

tzxcd3kk1#

为什么不使用sqlplus执行查询并将数据加载到文件中,然后将该文件放入hdfs

sqlplus -s user/password@dbname <<EOF
set feedback off trimspool on 
spool file_name.txt;
select * from table_name;
spool off;
exit;
EOF

一旦你把你的数据输入到文件\u name.txt中,你就可以直接把数据输入到hdfs中

hadoop fs -put file_name.txt /myhdfsfolder/

相关问题