У меня есть каталог ресурсов HDFS и каталог назначения архива в HDFS.В начале каждого запуска моей работы мне нужно переместить (или скопировать, а затем удалить) все файлы деталей, имеющиеся в моем каталоге Source , в мой каталог Archive .
SparkSession spark = SparkSession.builder().getOrCreate();
JavaSparkContext jsc = new JavaSparkContext(spark.sparkContext());
String hdfsSrcDir = "hdfs://clusterName/my/source";
String archiveDir = "hdfs://clusterName/my/archive";
try{
FileSystem fs = FileSystem.get(new URI(hdfsSrcDir ),jsc.hadoopConfiguration());
}
Я не знаю, как действовать дальше.В настоящее время мой fs
объект имеет ссылку только на мою исходную директорию.
Создание fs2
с архивом не поможет, я верю.
Я узнал о FileSystem.rename()
, но в качестве параметров используются имена файлов.Мне нужно переместить /my/source/*
на /my/archive/
.