我需要创建一个大文件,通过合并分散在Azure Blob存储中包含的多个子文件夹中的多个文件,还需要进行转换,每个文件包含单个元素的JSON数组,所以最终文件,将包含 JSON 元素数组。
最终目的是在 Hadoop 和 MapReduce 作业中处理该大文件。
原始文件的布局类似于:
folder
- month-01
- day-01
- files...
- month-02
- day-02
- files...
最佳答案
我根据你的描述做了测试,请按照我的步骤操作。
我的模拟数据:
test1.json
位于文件夹:date/day1
test2.json
位于文件夹:date/day2
源数据集
,将文件格式设置为对象数组
,文件路径为根路径
。
Sink DataSet
,将文件格式设置为Array of Objects
,将文件路径设置为要存储最终数据的文件。
创建复制事件
并将复制行为
设置为合并文件
。
执行结果:
我测试的目的地仍然是Azure Blob Storage,你可以引用这个link了解 Hadoop 支持 Azure Blob 存储。
关于json - azure 数据工厂: how to merge all files of a folder into one file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56550727/