hadoop - 将 Hive 表导出到 hdfs 中的 csv/tsv
问题描述
我使用以下代码以 csv/tsv 格式将表从 hive 导出到 hdfs。
INSERT OVERWRITE DIRECTORY '/user/xyz/dem_data/science_data'
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n'
STORED AS TEXTFILE
SELECT *
FROM science_data;
当我在 hdfs 中查看复制的文件时,我看到很多这样的字符
??=%??0nother episod?/aAj%?is ?a???$of J horse!de9?amA?se0(
我不确定出了什么问题。我是否需要对此进行某种编码才能获得干净的文本。实际文件有干净的文本。
解决方案
请使用下面给出的命令尝试使用本地目录:
INSERT OVERWRITE LOCAL DIRECTORY '/home/cloudera/Desktop/xyz/science_data' ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' STORED AS TEXTFILE select * from table_name;
推荐阅读
- python - 使用 joblib 共享 pandas 数据框以进行不同的分类过程
- javascript - React 本机深度链接不在堆栈导航中导航
- reactjs - Redux-Thunk 抛出与 dispatch action type 相关的错误
- docker - Docker/Docker compose 随机停止我的容器
- android - 如何在android xml中制作加载动画
- bdd - python Bdd测试用例
- sql - 在clickhouse中使用限制前向填充缺失值
- python - 为什么我的 GAN 只产生灰色图像而没有任何进展?
- typescript - 打字稿ORM设置默认实体值不起作用
- filter - RankX 在组的子集中