Hive数据导出为csv、tsv文件的几种方法

这篇具有很好参考价值的文章主要介绍了Hive数据导出为csv、tsv文件的几种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Hive数据导出csv,tsv
  • 第一种(推荐)
hadoop fs -cat hdfs_path/* |tr "\t" "," > file_path/file_name.csv
  • PS:
    • ‘|tr “\t” “,”’ 将数据分隔符 制表符 替换为 “,”.
    • hive在hdfs中存储可能是\001分割,替换\t即可.
    • 数据中包含","会导致.csv文件不能正确解析.这时建议改为.tsv文件(制表符分割).
    • hdfs中== 空值 采用 \N 存储,可以使用 |tr -d “\\\N” 变为正确的 空值 ==.
    • 导出数据中没有分区字段,可以在hive表中添加一个分区字段.
  • 第二种(不建议)
insert into(或overwrite) local directory 'path' row format delimited fields terminated by ',' select * from db_name.table_name;

PS:使用overwrite时一定要小心,会重写覆盖整个文件夹。

  • 第三种(不建议)
hive -e "set hive.cli.print.header=true; select * from db_name.table_name8" | sed 's/[\t]/,/g'  > file_name.csv

PS:这种会把Hive启动日志放入数据中,最后也没找到办法去除这些日志。文章来源地址https://www.toymoban.com/news/detail-615725.html

  • 总结:第二、三种方式是网络上比较容易查到的方式,但用起来不是很好,这里记录一下弊端与解决方法。csv,tsv不包含字段名称与对应信息,这点还是很不好的(不过这次也够用了)。查了一下hive导出成json需要编写udf函数。

到了这里,关于Hive数据导出为csv、tsv文件的几种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 一百三十三、Hive——Hive外部表加载含有JSON格式字段的CSV文件数据

    在Hive的ODS层建外部表,然后加载HDFS中的CSV文件数据 注意 :CSV文件中含有未解析的JSON格式的字段数据,并且JSON字段中还有逗号 JSON数据的字段track_data只显示一部分数据,因为JSON格式数据里面也含有逗号 [{\\\"id\\\":\\\"14\\\",\\\"length\\\":5.0,\\\"height\\\":3.0,\\\"posX\\\":63.0,\\\"posY\\\":37.0,\\\"acs\\\":99.0,\\\"angle\\\":83.0,\\\"alti

    2024年02月16日
    浏览(48)
  • Hive基础知识(十一):Hive的数据导出方法示例

    1)将查询的结果导出到本地 2)将查询的结果格式化导出到本地(加上一个以“,”隔开数据的格式) 3)将查询的结果导出到 HDFS 上(没有 local) 基本语法:(hive -f/-e 执行语句或者脚本 file) 导出的数据中有两个数据源,其中除了主信息之外,还包括记录主数据信息的元数据

    2024年01月22日
    浏览(40)
  • hive anti join 的几种写法

    t_a 表的记录如下 c1 | :———— | a | b | c | 生成 SQL 如下: t_b 表的记录如下 c1 b m 生成 SQL 如下: 我们要在t_a 中出现,而不在 t_b中出现的记录。 结果需要为: c1 a c 写法1 — 使用not in 写法2 —使用 left join 关联上的去掉 这种写法不容易读懂。 注意 left join 中 b.c1 is null 不能谓

    2024年02月09日
    浏览(44)
  • Hive的几种排序方式、区别,使用场景

    Hive 支持两种主要的排序方式: ORDER BY 和 SORT BY 。除此之外,还有 DISTRIBUTE BY 和 CLUSTER BY 语句,它们也在排序和数据分布方面发挥作用。 1. ORDER BY ORDER BY 在 Hive 中用于对查询结果进行全局排序,确保结果集是全局有序的。但是,使用 ORDER BY 时,Hive 会将所有数据集中到一个

    2024年02月02日
    浏览(42)
  • 使用Python创建faker实例生成csv大数据测试文件并导入Hive数仓

    这段Python代码用于生成模拟的个人信息数据,并将数据保存为CSV文件。 导入必要的模块: csv :用于处理CSV文件的模块。 random :用于生成随机数。 faker :用于生成模拟数据的库。 定义生成数据所需的基本信息: file_base_path :生成的CSV文件的基本路径。 rows_per_file :每个C

    2024年02月07日
    浏览(36)
  • Hive数据导出的四种方法

    hive数据仓库有多种数据导出方法,我在本篇文章中介绍下面的四种方法供大家参考: Insert语句导出、Hadoop命令导出、Hive shell命令导出、Export语句导出。 Hive支持将select查询的结果导出成文件存放在文件系统中。语法格式如下; 注意: 导出操作是一个OVERWRITE覆盖操作,慎重

    2024年01月17日
    浏览(42)
  • 前端常用的上传下载文件的几种方式,直接上传、下载文件,读取.xlsx文件数据,导出.xlsx数据

    1.1根据文件流Blob进行下载 1.2根据下载文件链接直接进行下载 html

    2024年02月12日
    浏览(46)
  • Hive学习:Hive导入字段带逗号和换行符的CSV文件

    比如上面这行数据,字段\\\"600,000,000,00\\\"带多个逗号,这个可以用hive中内置的语句来解决,使用OpenCSVSerde来解析CSV格式的数据,并指定了CSV文件中使用的分隔符、引号字符和转义字符 ‘separatorChar’ = ‘,’:指定CSV文件中使用的分隔符为逗号(,) ‘quoteChar’ = ‘\\\"’:指定CSV文件中

    2024年02月11日
    浏览(54)
  • 【实用技巧】将本地csv文件导入到hive中

    step1:在hive中创建表test01,并使用命令\\\"show create table 表名\\\",得到该表存放的hdfs文件路径(数据入库时需要用到) step2:使用vim创建文件a.csv,并存入数据。例如: step3:进入HDFS下的hadoop下的bin目录,并将a.csv文件放在该目录下 step4:执行命令 命令格式:./hdfs dfs -put  数据存放

    2024年02月12日
    浏览(41)
  • Postman如何导出接口的几种方法?

    本文主要介绍了Postman如何导出接口的几种方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 我的文章还是一贯的作风, 简确用风格 (简单确实有用),你们可叫我 职场新人救星 !好的废话不多说,今天这篇文章讲的是如何用

    2024年02月05日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包