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に変換されます。