在microsoft azure的data lake存储帐户中写回输出文件夹中的文件时更改文件名

x6yk4ghg  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(309)

如果你能帮我解决我的问题,那就太有帮助了。
在我的项目需求中,我必须在microsoftazure(基于云的平台)的datalake存储中存储具有特定名称的文件。在对hdinsight cluster中加载的文件创建的Dataframe执行任何转换或操作后,当我将Dataframe写入任何特定文件夹时,它将以名称“part-00000-x”存储,即以hadoop格式存储。
但是,由于我有大量的文件,所以我不能进入为每个文件创建的文件夹中,每次根据我的要求重命名相同的文件。
那么,你能帮帮我吗?
注意:在存储文件后,我们可以将文件复制到另一个文件夹,在复制时,我们可以给出任何我们想要的名称。但我不想要这个解决方案。我想在处理后将文件写回我的存储器(datalakestore)时为它提供一个特定的名称。

wwwo4jvm

wwwo4jvm1#

您可以提供multipleoutputformat类的子类来控制文件名的模式,但这需要使用java,因为您不能使用流api编写outputFormat。
另一种选择可能是使用azure存储客户机进行合并,并在作业结束后重命名输出文件。

相关问题