Таким образом, у меня есть искорка, которая работает каждый час. Работа обрабатывает файлы
из HDFS. Так что мне нужно знать, есть ли эффективный способ отслеживать те файлы в HDFS, которые уже обработаны. Файлы не могут быть перемещены / удалены / переименованы
Я пытался сохранить все имена файлов на карте вместе с их последним измененным временем и где-то сохранить последнюю запись карты (Say / user / xyz -> 159283742893472 - моя последняя запись на карте) и так, когда задание начинается снова, я могу использовать сохраненные данные и обрабатывать только те, которые находятся за пределами 159283742893472 (159283742893472 - это время в миллисекундах)
FileStatus[] fileStatusArray = fileSystem.listStatus(newPath(path));
for (FileStatus fileStatus : fileStatusArray) {
long modificationTime =fileStatus.getModificationTime();
filesMap.put(fileStatus.getPath().getName(), modificationTime);
}
Ожидается, что во избежание повторной обработки уже обработанных файлов