hadoopのHDFSに保存されたgz圧縮ファイルの閲覧

gz圧縮ファイルは、HadoopのHDFS上にアップロードし、その後HadoopコマンドラインツールまたはHadoop APIを使ってgzファイルの中身を確認できます。

  1. Hadoop のコマンドラインツールを使用する:
  1. Hadoop fs -cat コマンドを使用してgzファイルの内容を表示できます。たとえば、
hadoop fs -cat /path/to/gz_file.gz
  1. Hadoop APIを使用する:
  1. 以下の Java プログラム コードのように、Hadoop の Filesystem API を使用して gz ファイルの内容を読み込むことができます。
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class HdfsGzFileReader {
public static void main(String[] args) throws IOException {
String hdfsPath = "hdfs://localhost:9000/path/to/gz_file.gz";
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(conf);
Path filePath = new Path(hdfsPath);
InputStream in = fs.open(filePath);
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
fs.close();
}
}

gz ファイルは圧縮ファイルなので、圧縮した中身を直接参照することができませんのでご注意ください。ここでは、gzファイルを展開して中身を表示します。もし、gzファイルが極めて大きい場合には、別の方法で処理する必要があるかもしれません。

bannerAds