Il n'y a pas de solution prête à l'emploi pour votre problème, d'abord vous trouvez le dernier fichier puis le chargez.
Java Exemple:
/**
* Function to get latest file in directory
*/
public static String latestFileInDir(String dir) throws IOException, InterruptedException {
//Replace hadoop home
String command = "<HADOOP_HOME>/bin/hadoop fs -ls -R " + dir + " | awk -F\" \" '{print $6\" \"$7\" \"$8}' | sort -nr | head -1";
ProcessBuilder pb = new ProcessBuilder("/bin/sh", "-c", command);
String op = null;
Process process = pb.start();
int errCode = process.waitFor();
if (errCode == 0) {
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
op = br.readLine();
}
return op;
}
Obtenez le dernier répertoire et la charge
rdd= sc.textfile(latestFileInDir("/home/sathya/location/"));
Si cela répond à votre question, vous pouvez accepter comme une réponse et fermer le sujet. qui sera également utile pour les autres –
Son fonctionnement, merci – sathiyarajan
Merci d'avoir accepté comme réponse :) –