Scala 如何从spark更有效地重命名hdfs中的文件?
我有450K个JSON,我想根据某些规则在hdfs中重命名它们。为了简单起见,我只在它们的每一个上添加了一个后缀Scala 如何从spark更有效地重命名hdfs中的文件?,scala,apache-spark,hdfs,Scala,Apache Spark,Hdfs,我有450K个JSON,我想根据某些规则在hdfs中重命名它们。为了简单起见,我只在它们的每一个上添加了一个后缀.finished。 A使用以下代码成功地完成了此操作: import org.apache.hadoop.fs._ val hdfs = FileSystem.get(sc.hadoopConfiguration) val files = hdfs.listStatus(new Path(pathToJson)) val originalPath = files.map(_.get
.finished
。
A使用以下代码成功地完成了此操作:
import org.apache.hadoop.fs._
val hdfs = FileSystem.get(sc.hadoopConfiguration)
val files = hdfs.listStatus(new Path(pathToJson))
val originalPath = files.map(_.getPath())
for(i <- originalPath.indices)
{
hdfs.rename(originalPath(i), originalPath(i).suffix(".finished"))
}
导入org.apache.hadoop.fs_
val hdfs=FileSystem.get(sc.hadoopConfiguration)
val files=hdfs.listStatus(新路径(pathToJson))
val originalPath=files.map(u.getPath())
对于(i<P>OrthalPoad.PAR),(E= >HDFS)重命名(E,E后缀(“完成”))如果您有两个数组,例如:
originalPath
和newPath
,您将如何执行此操作?因此,我想对两个数组应用重命名功能。我尝试了使用zip和您的解决方案,但都不起作用。我找到了在这种情况下如何执行此操作的方法,现在只需要大约5分钟。我认为区别在于由par
功能生成。