hadoop - 如何在 Hadoop 中合并 CSV 文件?
问题描述
我是 Hadoop 框架的新手,我想将 4 个 CSV 文件合并到一个文件中。
所有 4 个 CSV 文件都有相同的标题,顺序也相同。
解决方案
我不认为 PigSTORE
提供这样的功能。
您可以使用 Spark 的coalesce(1)
功能,但是几乎没有理由这样做,因为几乎所有 Hadoop 处理工具都喜欢读取目录,而不是文件。
无论如何,理想情况下,您不应该将原始 CSV 存储在 Hadoop 中很长时间,而是将其转换为 ORC 或 Parquet 作为列数据。特别是如果您已经开始阅读 CSV - 不要再次输出 CSV。
如果想法是生成一个 CSV 以供以后下载,那么我建议使用 Hive + Beeline 来做到这一点
这会将结果存储到本地文件系统中的文件中。
beeline -u 'jdbc:hive2://[databaseaddress]' --outputformat=csv2 -f yourSQlFile.sql > theFileWhereToStoreTheData.csv
推荐阅读
- c# - 单元测试 ASP.NET Core MVC 控制器失败
- docker - gitlab 无法升级连接:找不到容器(“构建”)
- javascript - iOS 上的 Webview 不支持在 HTML 之外加载 javascript 文件
- java - 如何在 Spring Boot 中获取 json 格式的选择数据
- php - 多个查询输出到单个表中
- python - 按日期分组,使用两个函数并将它们按交替顺序排列
- python - 检查 s3 对象并通知它们是否在存储桶中超过 1 小时
- pytorch - 如何获得 Huggingface Transformer 模型预测 [零样本分类] 的 SHAP 值?
- python - DataFrame 到多级列数据框
- git-bash - Windows 10 (x64) git bash 不响应任何标准输出