AWS Data Pipeline tidak lagi tersedia untuk pelanggan baru. Pelanggan yang sudah ada AWS Data Pipeline dapat terus menggunakan layanan seperti biasa. Pelajari selengkapnya
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Templat Amazon RDS ke Amazon Redshift
Dua templat berikut menyalin tabel dari MySQL Amazon RDS ke Amazon Redshift menggunakan skrip terjemahan, yang membuat tabel Amazon Redshift menggunakan skema tabel sumber dengan peringatan berikut:
-
Jika kunci distribusi tidak ditentukan, kunci primer pertama dari tabel Amazon RDS ditetapkan sebagai kunci distribusi.
-
Anda tidak dapat melewati kolom yang ada di tabel MySQL Amazon RDS saat Anda melakukan penyalinan ke Amazon Redshift.
-
(Opsional) Anda dapat menyediakan pemetaan tipe data kolom MySQL Amazon RDS ke Amazon Redshift sebagai salah satu parameter dalam templat. Jika ini ditentukan, skrip akan menggunakan ini untuk membuat tabel Amazon Redshift.
Jika mode penyisipan Amazon Redshift Overwrite_Existing
sedang digunakan:
-
Jika kunci distribusi tidak disediakan, kunci primer pada tabel MySQL Amazon RDS akan digunakan.
-
Jika ada kunci primer komposit pada tabel, yang pertama digunakan sebagai kunci distribusi jika kunci distribusi tidak disediakan. Hanya kunci komposit pertama yang ditetapkan sebagai kunci primer di tabel Amazon Redshift.
-
Jika kunci distribusi tidak disediakan dan tidak ada kunci primer pada tabel MySQL Amazon RDS, operasi penyalinan gagal.
Untuk informasi selengkapnya tentang Amazon Redshift, lihat topik berikut:
-
SALINAN Amazon Redshift
-
Gaya distribusi dan contoh DISTKEY
Tabel berikut menjelaskan bagaimana skrip menerjemahkan tipe data:
Tipe Data MySQL | Tipe Data Amazon Redshift | Catatan |
---|---|---|
TINYINT, TINYINT (ukuran) |
SMALLINT |
MySQL: -128 hingga 127. Jumlah digit maksimum dapat ditentukan dalam tanda kurung. Amazon Redshift:. INT2 Bilangan bulat dua byte bertanda |
TINYINT UNSIGNED, TINYINT (ukuran) UNSIGNED |
SMALLINT |
MySQL: 0 hingga 255 UNSIGNED. Jumlah digit maksimum dapat ditentukan dalam tanda kurung. Amazon Redshift:. INT2 Bilangan bulat dua byte bertanda |
SMALLINT, SMALLINT(ukuran) |
SMALLINT |
MySQL: -32768 hingga 32767 normal. Jumlah digit maksimum dapat ditentukan dalam tanda kurung. Amazon Redshift:. INT2 Bilangan bulat dua byte bertanda |
SMALLINT UNSIGNED, SMALLINT(ukuran) UNSIGNED, |
INTEGER |
MySQL: 0 hingga 65535 UNSIGNED*. Jumlah digit maksimum dapat ditentukan dalam tanda kurung Amazon Redshift:. INT4 Bilangan bulat empat byte bertanda |
MEDIUMINT, MEDIUMINT(ukuran) |
INTEGER |
MySQL: 388608 hingga 8388607. Jumlah digit maksimum dapat ditentukan dalam tanda kurung Amazon Redshift:. INT4 Bilangan bulat empat byte bertanda |
MEDIUMINT UNSIGNED, MEDIUMINT(ukuran) UNSIGNED |
INTEGER |
MySQL: 0 hingga 16777215. Jumlah digit maksimum dapat ditentukan dalam tanda kurung Amazon Redshift:. INT4 Bilangan bulat empat byte bertanda |
INT, INT(ukuran) |
INTEGER |
MySQL: 147483648 hingga 2147483647 Amazon Redshift:. INT4 Bilangan bulat empat byte bertanda |
INT UNSIGNED, INT(ukuran) UNSIGNED |
BIGINT |
MySQL: 0 hingga 4294967295 Amazon Redshift:. INT8 Bilangan bulat delapan byte bertanda |
BIGINT BIGINT(ukuran) |
BIGINT |
Amazon Redshift:. INT8 Bilangan bulat delapan byte bertanda |
BIGINT UNSIGNED BIGINT(ukuran) UNSIGNED |
VARCHAR(20*4) |
MySQL: 0 hingga 18446744073709551615 Amazon Redshift: Tidak ada padanan asli, sehingga menggunakan array char. |
FLOAT FLOAT(ukuran,d) FLOAT(ukuran,d) UNSIGNED |
REAL |
Jumlah digit maksimum dapat ditentukan dalam parameter ukuran. Jumlah digit maksimum di sebelah kanan titik desimal ditentukan dalam parameter d. Pergeseran Merah Amazon: FLOAT4 |
DOUBLE(ukuran,d) |
DOUBLE PRECISION |
Jumlah digit maksimum dapat ditentukan dalam parameter ukuran. Jumlah digit maksimum di sebelah kanan titik desimal ditentukan dalam parameter d. Pergeseran Merah Amazon: FLOAT8 |
DECIMAL(ukuran,d) |
DECIMAL(ukuran,d) |
DOUBLE disimpan sebagai string, memungkinkan untuk titik desimal tetap. Jumlah digit maksimum dapat ditentukan dalam parameter ukuran. Jumlah digit maksimum di sebelah kanan titik desimal ditentukan dalam parameter d. Amazon Redshift: Tidak ada padanan asli. |
CHAR(ukuran) |
VARCHAR(ukuran*4) |
Memegang string dengan panjang tetap, yang dapat berisi huruf, angka, dan karakter khusus. Ukuran tetap ditentukan sebagai parameter dalam tanda kurung. Dapat menyimpan hingga 255 karakter. Kanan diisi dengan spasi. Amazon Redshift: Tipe data CHAR tidak mendukung karakter multibyte sehingga VARCHAR digunakan. Jumlah maksimum byte per karakter adalah 4 menurut RFC3629 |
VARCHAR(ukuran) | VARCHAR(ukuran*4) |
Dapat menyimpan hingga 255 karakter. VARCHAR tidak mendukung poin kode UTF-8 yang tidak valid berikut: 0xD800- 0xDFFF, (Urutan byte: ED A0 80- ED BF BF), 0xFDD0- 0xFDEF, 0xFFFE, dan 0xFFFF, (Urutan byte: EF B7 90- EF B7 AF , EF BF BE, dan EF BF BF) |
TINYTEXT | VARCHAR(255*4) | Memegang string dengan panjang maksimum 255 karakter |
TEXT | VARCHAR(max) |
Memegang string dengan panjang maksimum 65.535 karakter. |
MEDIUMTEXT | VARCHAR(max) |
0 hingga 16.777.215 Karakter |
LONGTEXT | VARCHAR(max) | 0 hingga 4.294.967.295 Karakter |
BOOLEAN BOOL TINYINT(1) |
BOOLEAN |
MySQL: Jenis ini adalah sinonim untuk TINYINT(1) |
BINARY[(M)] | varchar(255) |
M adalah 0 hingga 255 byte, TETAP |
VARBINARY(M) | VARCHAR(max) |
0 hingga 65.535 byte |
TINYBLOB | VARCHAR(255) | 0 hingga 255 byte |
BLOB | VARCHAR(max) |
0 hingga 65.535 byte |
MEDIUMBLOB | VARCHAR(max) |
0 hingga 16.777.215 byte |
LONGBLOB | VARCHAR(max) |
0 hingga 4.294.967.295 byte |
ENUM | VARCHAR(255*2) | Batasnya bukan pada panjang string enum literal, melainkan pada definisi tabel untuk jumlah nilai enum. |
SET | VARCHAR(255*2) | Seperti enum. |
DATE | DATE |
(YYYY-MM-DD) "1000-01-01" hingga "9999-12-31" |
TIME | VARCHAR(10*4) |
(hh:mm:ss) "-838:59:59" hingga "838:59:59" |
DATETIME | TIMESTAMP |
(YYYY-MM-DD hh: mm: ss) 1000-01-01 00:00:00" hingga "9999-12-31 23:59:59" |
TIMESTAMP | TIMESTAMP |
(YYYYMMDDhhmmss) 19700101000000 hingga 2037+ |
YEAR | VARCHAR(4*4) |
(YYYY) 1900 hingga 2155 |
kolom SERIAL |
Generasi ID / Atribut ini tidak diperlukan untuk gudang data OLAP karena kolom ini disalin. Kata kunci SERIAL tidak ditambahkan saat menerjemahkan. |
SERIAL sebenarnya adalah entitas bernama SEQUENCE. Ini ada secara independen di sisa tabel Anda. kolom GENERATED BY DEFAULT setara dengan: nama CREATE SEQUENCE; tabel CREATE TABLE( kolom INTEGER NOT NULL DEFAULT nextval(nama) ); |
kolom BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE |
Generasi ID / Atribut ini tidak diperlukan untuk gudang data OLAP karena kolom ini disalin. Jadi kata kunci SERIAL tidak ditambahkan saat menerjemahkan. |
SERIAL sebenarnya adalah entitas bernama SEQUENCE. Ini ada secara independen di sisa tabel Anda. kolom GENERATED BY DEFAULT setara dengan: nama CREATE SEQUENCE; tabel CREATE TABLE( kolom INTEGER NOT NULL DEFAULT nextval(nama) ); |
ZEROFILL | Kata kunci ZEROFILL tidak ditambahkan saat menerjemahkan. |
INT UNSIGNED ZEROFILL NOT NULL ZEROFILL mengisi nilai bidang yang ditampilkan dengan nol hingga lebar tampilan yang ditentukan dalam definisi kolom. Nilai yang lebih panjang dari lebar tampilan tidak terpotong. Perhatikan bahwa penggunaan ZEROFILL juga menyiratkan UNSIGNED. |