Oracle NoSQLからParquetデータ型へのマッピング
Oracle NoSQLデータ型とParquetデータ型のマッピングについて説明します。
| NoSQL型 | Parquet型 |
|---|---|
| BOOLEAN | BOOLEAN |
| INTEGER | INT32 |
| LONG | INT64 |
| FLOAT | DOUBLE |
| DOUBLE | DOUBLE |
| BINARY | BINARY |
| FIXED_BINARY | BINARY |
| STRING | BINARY(STRING) |
| ENUM | BINARY(STRING)
または BINARY(ENUM)、論理ENUMが構成されている場合 |
| UUID | BINARY(STRING)
または FIXED_BINARY(16)、論理UUIDが構成されている場合 |
| TIMESTAMP(p) | INT64(TIMESTAMP(p)) |
| NUMBER | DOUBLE |
| field_name ARRAY(T) | |
| field_name MAP(T) | |
| field_name RECORD(K₁ T₁ N₁, Kٖ₂ T₂ N₂, ....)
説明: K = キー名 T = 型 N = Null可能かどうか |
|
| JSON | BINARY(STRING)
または BINARY(JSON)、論理JSONが構成されている場合 |
ノート:
NoSQL Number型をParquet Double型に変換する場合、値がDoubleで表現できない場合、精度が若干失われる可能性があります。値が大きすぎてDoubleとして表現できない場合、Double.NEGATIVE_INFINITYまたはDouble.POSITIVE_INFINITYに変換されます。