【Node.js24.x】DecompressionStream::DecompressionStream()関数の使い方
DecompressionStream関数の使い方について、初心者にもわかりやすく解説します。
基本的な使い方
DecompressionStream関数は、Web Streams APIの一部として、圧縮されたデータをリアルタイムで解凍(展開)する機能を提供するコンストラクタ関数です。この関数を呼び出すことで、圧縮データを徐々に読み込み、解凍されたデータを徐々に書き出すためのストリームオブジェクトを生成できます。
通常、大量のデータや、ネットワーク経由で送られてくるデータは、転送効率のために圧縮されています。DecompressionStreamを使用すると、このような圧縮データをメモリ上に全て読み込んでから解凍するのではなく、データが流れてくる傍らで少しずつ処理できます。これにより、メモリ使用量を抑えつつ、高速かつ効率的なデータ処理が可能になります。
このストリームは、主にgzipやdeflateといった標準的なzlib形式で圧縮されたデータを扱うために設計されています。ReadableStream.prototype.pipeThrough()メソッドなどを利用して、圧縮データを含むReadableStreamと連結することで、自動的にデータを解凍し、解凍済みのデータを別のWritableStreamへ流し込むことができます。
システムエンジニアを目指す初心者の方にとっては、大量のログファイルやネットワーク通信で圧縮されたコンテンツを扱う際に、非常に役立つ基本的なツールとなります。Node.jsの組み込み機能としてバージョン24以降で利用可能ですので、外部ライブラリを追加することなく、すぐに利用を開始できます。
構文(syntax)
1const decompressionStream = new DecompressionStream('gzip');
引数(parameters)
format
- format: string: 圧縮解除するデータのフォーマット(例: 'gzip', 'deflate')を指定します。
戻り値(return)
DecompressionStream
このコンストラクタは、指定された圧縮アルゴリズム(例: 'gzip', 'deflate')を使用してデータを解凍するためのDecompressionStreamオブジェクトを新しく作成して返します。