説明
BSONEachRowフォーマットは、区切りを挟まずに連続する Binary JSON (BSON) ドキュメントの並びとしてデータを解析します。
各行は単一のドキュメントとしてフォーマットされ、各カラムはカラム名をキーとする単一の BSON ドキュメントフィールドとしてフォーマットされます。
データ型の対応
入力では、BSON 型と ClickHouse 型の間で次の対応が使用されます。
そのほかの BSON 型はサポートされていません。加えて、異なる整数型間の変換も行われます。
たとえば、BSON の
int32 値を ClickHouse に UInt8 として挿入できます。
Int128/UInt128/Int256/UInt256/Decimal128/Decimal256 のような大きな整数や Decimal は、\x00 binary subtype を持つ BSON Binary 値から解析できます。
この場合、このフォーマットはバイナリデータのサイズが想定される値のサイズと一致することを検証します。
このフォーマットは Big-Endian プラットフォームでは正しく動作しません。
使用例
データの挿入
football.bson という名前の BSON ファイルを使用します。
データの読み込み
BSONEachRowフォーマットを使用してデータを読み込みます。