Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Saat Anda mengekspor snapshot DB ke bucket Amazon S3, RDS Amazon mengonversi data ke, mengekspor data, dan menyimpan data dalam format Parket. Untuk informasi selengkapnya tentang Parquet, lihat situs web Apache Parquet
Parquet menyimpan semua data sebagai salah satu jenis primitif berikut:
-
BOOLEAN
-
INT32
-
INT64
-
INT96
-
FLOAT
-
DOUBLE
-
BYTE_ ARRAY — Array byte panjang variabel, juga dikenal sebagai biner
-
FIXED_ LEN _ BYTE _ ARRAY - Array byte dengan panjang tetap yang digunakan saat nilai memiliki ukuran konstan
Jenis data Parquet berjumlah sedikit untuk mengurangi kerumitan membaca dan menulis format. Parquet menyediakan jenis logis untuk memperluas jenis primitif. Jenis logis diimplementasikan sebagai anotasi dengan data di kolom metadata LogicalType
. Anotasi jenis logis menjelaskan cara menginterpretasikan jenis primitif.
Ketika tipe STRING
logis membubuhi keterangan BYTE_ARRAY
tipe, ini menunjukkan bahwa array byte harus ditafsirkan sebagai string karakter yang dikodekan UTF -8. Setelah tugas ekspor selesai, Amazon RDS memberi tahu Anda jika terjadi konversi string. Data dasar yang diekspor selalu sama seperti data dari sumbernya. Namun, karena perbedaan pengkodean di UTF -8, beberapa karakter mungkin tampak berbeda dari sumber ketika dibaca di alat seperti Athena.
Untuk informasi selengkapnya, lihat Parquet logical type definitions
Pemetaan tipe data saya SQL dan MariaDB ke Parket
Tabel berikut menunjukkan pemetaan dari tipe data Saya SQL dan MariaDB ke tipe data Parket saat data dikonversi dan diekspor ke Amazon S3.
Jenis data sumber | Jenis primitif Parquet | Anotasi jenis logis | Catatan konversi |
---|---|---|---|
Jenis data numerik | |||
BIGINT | INT64 | ||
BIGINT UNSIGNED | FIXED_ LEN _ BYTE _ ARRAY (9) | DECIMAL(20,0) | Parket hanya mendukung tipe yang ditandatangani, sehingga pemetaan memerlukan byte tambahan (8 plus 1) untuk menyimpan tipe BIGINT _UNSIGNED. |
BIT | BYTE_ARRAY | ||
DECIMAL | INT32 | DECIMAL(p, s) | Jika nilai sumber kurang dari 2 31, itu disimpan sebagaiINT32. |
INT64 | DECIMAL(p, s) | Jika nilai sumber adalah 2 31 atau lebih besar, tetapi kurang dari 2 63, itu disimpan sebagaiINT64. | |
FIXED_ LEN _ BYTE _ ARRAY (N) | DECIMAL(p, s) | Jika nilai sumber adalah 2 63 atau lebih besar, itu disimpan sebagai FIXED _ LEN _ BYTE _ ARRAY (N). | |
BYTE_ARRAY | STRING | Parquet tidak mendukung presisi Desimal yang lebih besar dari 38. Nilai desimal dikonversi ke string dalam ARRAY tipe BYTE _ dan dikodekan sebagai. UTF8 | |
DOUBLE | DOUBLE | ||
FLOAT | DOUBLE | ||
INT | INT32 | ||
INT UNSIGNED | INT64 | ||
MEDIUMINT | INT32 | ||
MEDIUMINT UNSIGNED | INT64 | ||
NUMERIC | INT32 | DECIMAL(p, s) |
Jika nilai sumber kurang dari 2 31, itu disimpan sebagaiINT32. |
INT64 | DECIMAL(p, s) | Jika nilai sumber adalah 2 31 atau lebih besar, tetapi kurang dari 2 63, itu disimpan sebagaiINT64. | |
FIXED_ LEN _ ARRAY (N) | DECIMAL(p, s) | Jika nilai sumber adalah 2 63 atau lebih besar, itu disimpan sebagai FIXED _ LEN _ BYTE _ ARRAY (N). | |
BYTE_ARRAY | STRING | Parquet tidak mendukung presisi Numerik yang lebih besar dari 38. Nilai Numerik ini dikonversi ke string dalam ARRAY tipe BYTE _ dan dikodekan sebagai. UTF8 | |
SMALLINT | INT32 | ||
SMALLINT UNSIGNED | INT32 | ||
TINYINT | INT32 | ||
TINYINT UNSIGNED | INT32 | ||
Jenis data string | |||
BINARY | BYTE_ARRAY | ||
BLOB | BYTE_ARRAY | ||
CHAR | BYTE_ARRAY | ||
ENUM | BYTE_ARRAY | STRING | |
LINESTRING | BYTE_ARRAY | ||
LONGBLOB | BYTE_ARRAY | ||
LONGTEXT | BYTE_ARRAY | STRING | |
MEDIUMBLOB | BYTE_ARRAY | ||
MEDIUMTEXT | BYTE_ARRAY | STRING | |
MULTILINESTRING | BYTE_ARRAY | ||
SET | BYTE_ARRAY | STRING | |
TEXT | BYTE_ARRAY | STRING | |
TINYBLOB | BYTE_ARRAY | ||
TINYTEXT | BYTE_ARRAY | STRING | |
VARBINARY | BYTE_ARRAY | ||
VARCHAR | BYTE_ARRAY | STRING | |
Jenis data tanggal dan waktu | |||
DATE | BYTE_ARRAY | STRING | Tanggal dikonversi ke string dalam ARRAY tipe BYTE _ dan dikodekan sebagai. UTF8 |
DATETIME | INT64 | TIMESTAMP_MICROS | |
TIME | BYTE_ARRAY | STRING | TIMETipe dikonversi ke string dalam BYTE _ ARRAY dan dikodekan sebagai. UTF8 |
TIMESTAMP | INT64 | TIMESTAMP_MICROS | |
YEAR | INT32 | ||
Jenis data geometris | |||
GEOMETRY | BYTE_ARRAY | ||
GEOMETRYCOLLECTION | BYTE_ARRAY | ||
MULTIPOINT | BYTE_ARRAY | ||
MULTIPOLYGON | BYTE_ARRAY | ||
POINT | BYTE_ARRAY | ||
POLYGON | BYTE_ARRAY | ||
JSONtipe data | |||
JSON | BYTE_ARRAY | STRING |
Pemetaan tipe SQL data Postgre ke Parket
Tabel berikut menunjukkan pemetaan dari tipe data Postgre ke tipe SQL data Parket saat data dikonversi dan diekspor ke Amazon S3.
Tipe data Postgre SQL | Jenis primitif Parquet | Anotasi jenis logis | Catatan pemetaan |
---|---|---|---|
Jenis data numerik | |||
BIGINT | INT64 | ||
BIGSERIAL | INT64 | ||
DECIMAL | BYTE_ARRAY | STRING | DECIMALTipe dikonversi ke string dalam ARRAY tipe BYTE _ dan dikodekan sebagai. UTF8 Konversi ini dimaksudkan untuk menghindari kerumitan akibat presisi data dan nilai data yang bukan berupa angka (NaN). |
DOUBLE PRECISION | DOUBLE | ||
INTEGER | INT32 | ||
MONEY | BYTE_ARRAY | STRING | |
REAL | FLOAT | ||
SERIAL | INT32 | ||
SMALLINT | INT32 | INT_16 | |
SMALLSERIAL | INT32 | INT_16 | |
Jenis data string dan terkait | |||
ARRAY | BYTE_ARRAY | STRING |
Array dikonversi ke string dan dikodekan sebagai BINARY ()UTF8. Konversi ini dimaksudkan untuk menghindari kerumitan akibat presisi data, nilai data yang bukan berupa angka (NaN), dan nilai data waktu. |
BIT | BYTE_ARRAY | STRING | |
BIT VARYING | BYTE_ARRAY | STRING | |
BYTEA | BINARY | ||
CHAR | BYTE_ARRAY | STRING | |
CHAR(N) | BYTE_ARRAY | STRING | |
ENUM | BYTE_ARRAY | STRING | |
NAME | BYTE_ARRAY | STRING | |
TEXT | BYTE_ARRAY | STRING | |
TEXT SEARCH | BYTE_ARRAY | STRING | |
VARCHAR(N) | BYTE_ARRAY | STRING | |
XML | BYTE_ARRAY | STRING | |
Jenis data tanggal dan waktu | |||
DATE | BYTE_ARRAY | STRING | |
INTERVAL | BYTE_ARRAY | STRING | |
TIME | BYTE_ARRAY | STRING | |
TIME WITH TIME ZONE | BYTE_ARRAY | STRING | |
TIMESTAMP | BYTE_ARRAY | STRING | |
TIMESTAMP WITH TIME ZONE | BYTE_ARRAY | STRING | |
Jenis data geometris | |||
BOX | BYTE_ARRAY | STRING | |
CIRCLE | BYTE_ARRAY | STRING | |
LINE | BYTE_ARRAY | STRING | |
LINESEGMENT | BYTE_ARRAY | STRING | |
PATH | BYTE_ARRAY | STRING | |
POINT | BYTE_ARRAY | STRING | |
POLYGON | BYTE_ARRAY | STRING | |
JSONtipe data | |||
JSON | BYTE_ARRAY | STRING | |
JSONB | BYTE_ARRAY | STRING | |
Jenis data lainnya | |||
BOOLEAN | BOOLEAN | ||
CIDR | BYTE_ARRAY | STRING | Jenis data jaringan |
COMPOSITE | BYTE_ARRAY | STRING | |
DOMAIN | BYTE_ARRAY | STRING | |
INET | BYTE_ARRAY | STRING | Jenis data jaringan |
MACADDR | BYTE_ARRAY | STRING | |
OBJECT IDENTIFIER | N/A | ||
PG_ LSN | BYTE_ARRAY | STRING | |
RANGE | BYTE_ARRAY | STRING | |
UUID | BYTE_ARRAY | STRING |