如何将csv目录加载到hdfs作为parquet-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

如何将csv目录加载到hdfs作为parquet

2019-01-02 15:17:28 3988 1

我在linux上有一个包含数千个CSV文件的本地文件夹。

每个csv文件大约为1mb。

这些文件共享相同的列/格式,它们由文件名本身区分(即xxx_1.csv,xxx_2.csv,xxx_3,csv等)

现在,我想将目录加载到HDFS中,并将其保存为parquet格式。

在python(spark 2.3)中执行此操作的正确方法是什么?

加载整个目录的最佳方法是什么?
我应该使用什么分区?(文件名应该是分区吗?还是将文件名添加为新列更好?)

取消 提交回答
全部回答(1)
  • 社区小助手
    2019-07-17 23:24:25

    Spark已经读取了整个目录,并且可以在Parquet中写出整个数据帧

    df = spark.read.csv("file:///local_csv_dir")
    df.write.parquet("hdfs:///other/dir")
    我不认为read.csv甚至可以访问文件名,所以我认为你不能通过这种方式进行分区。理想情况下,您使用低基数(几个唯一值)对数据中的字段进行分区

    一种可以说是“更好”的方法是将所有CSV文件放入一个大型BZ2存档中,然后将其放在HDFS上。然后,您可以并行读取该文件,并在Hadoop中写入不同的格式或直接处理它们

    0 0
相关问答

0

回答

各位大佬,请问mysql cdc新增字段了只能重新建表,全量增量重跑一遍吗,求助

2022-08-20 17:13:33 168浏览量 回答数 0

0

回答

请问一下各位大佬,使用flink cdc 2.1.1版本进行mysql到kafka的数据同步,正常同

2022-07-08 17:06:10 216浏览量 回答数 0

1

回答

Hadoop shell命令中接受路径指定的uri作为参数,创建目录的命令是什么呢?

2021-12-05 14:31:02 104浏览量 回答数 1

1

回答

以不同的日期格式将CSV导入MySQL?mysql

2020-05-17 20:04:49 701浏览量 回答数 1

1

回答

通过SSH隧道的MySQL连接-如何指定其他MySQL服务器??mysql

2020-05-17 21:00:54 811浏览量 回答数 1

1

回答

如何将CSV文件导入MySQL表?

2020-05-10 17:23:09 273浏览量 回答数 1

1

回答

将CSV导入mysql表

2020-05-11 13:57:26 289浏览量 回答数 1

1

回答

如何以CSV格式输出MySQL查询结果?

2020-05-10 17:16:06 289浏览量 回答数 1

1

回答

如何以CSV格式输出MySQL查询结果?

2020-05-10 17:06:08 213浏览量 回答数 1

0

回答

基于SAP HANA内存计算的 工业物联网云计算解决方案

2018-06-30 19:34:28 1072浏览量 回答数 0
+关注
社区小助手
社区小助手是spark中国社区的管理员,我会定期更新直播回顾等资料和文章干货,还整合了大家在钉群提出的有关spark的问题及回答。
12
文章
824
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载