バイナリファイルデータソース
Spark 3.0 以降、Spark はバイナリファイルデータソースをサポートしており、バイナリファイルを読み込み、各ファイルをその生のコンテンツとメタデータを含む単一のレコードに変換します。以下の列と、場合によってはパーティション列を持つ DataFrame が生成されます。
path: StringTypemodificationTime: TimestampTypelength: LongTypecontent: BinaryType
すべてのバイナリファイルを読み込むには、データソースの format を binaryFile に指定する必要があります。パーティション検出の動作を維持しながら、指定された glob パターンに一致するパスを持つファイルを読み込むには、一般的なデータソースオプション pathGlobFilter を使用できます。たとえば、次のコードは入力ディレクトリからすべての PNG ファイルを読み込みます。
spark.read.format("binaryFile").option("pathGlobFilter", "*.png").load("/path/to/data")spark.read.format("binaryFile").option("pathGlobFilter", "*.png").load("/path/to/data")spark.read().format("binaryFile").option("pathGlobFilter", "*.png").load("/path/to/data");read.df("/path/to/data", source = "binaryFile", pathGlobFilter = "*.png")バイナリファイルデータソースは、DataFrame を元のファイルに書き戻すことをサポートしていません。