Lendo HDFS e arquivos locais em Java

Eu quero ler os caminhos de arquivo, independentemente de serem HDFS ou locais. Atualmente, passo os caminhos locais com o prefixo file: // e os caminhos HDFS com o prefixo hdfs: // e escrevo um código como o seguinte

Configuration configuration = new Configuration();
FileSystem fileSystem = null;
if (filePath.startsWith("hdfs://")) {
  fileSystem = FileSystem.get(configuration);
} else if (filePath.startsWith("file://")) {
  fileSystem = FileSystem.getLocal(configuration).getRawFileSystem();
}

A partir daqui eu uso a API do FileSystem para ler o arquivo.

Você pode por favor me avisar se há alguma outra maneira melhor do que isso?

questionAnswers(3)

yourAnswerToTheQuestion