Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menambahkan data ke sumber cluster Aurora DB dan menanyakannya di Amazon Redshift
Untuk menyelesaikan pembuatan ETL integrasi nol yang mereplikasi data dari Aurora ke Amazon Redshift, Anda harus membuat database tujuan di Amazon Redshift.
Pertama, hubungkan ke klaster atau grup kerja Amazon Redshift Anda dan buat basis data dengan referensi ke pengidentifikasi integrasi Anda. Kemudian, Anda dapat menambahkan data ke sumber Anda Aurora DB cluster dan melihatnya direplikasi di Amazon Redshift.
Topik
Membuat database tujuan di Amazon Redshift
Sebelum Anda dapat mulai mereplikasi data ke Amazon Redshift, setelah Anda membuat integrasi, Anda harus membuat basis data tujuan di gudang data target Anda. Basis data tujuan ini harus menyertakan referensi ke pengidentifikasi integrasi. Anda dapat menggunakan konsol Amazon Redshift atau Editor kueri v2 untuk membuat basis data.
Untuk petunjuk cara membuat basis data tujuan, lihat Membuat basis data tujuan di Amazon Redshift.
Menambahkan data ke sumber DB cluster
Setelah mengonfigurasi integrasi, Anda dapat menambahkan beberapa data ke cluster Aurora DB yang ingin Anda replikasi ke gudang data Amazon Redshift Anda.
catatan
Ada perbedaan antara tipe data di Aurora dan Amazon Redshift. Untuk tabel pemetaan jenis data, lihat Perbedaan tipe data antara database Aurora dan Amazon Redshift.
Pertama, sambungkan ke cluster DB sumber menggunakan SQL klien My SQL atau Postgre pilihan Anda. Untuk petunjuk, silakan lihat Menghubungkan ke klaster DB Amazon Aurora.
Kemudian, buat tabel dan masukkan urutan data sampel.
penting
Pastikan tabel memiliki kunci primer. Jika tidak, tabel tidak dapat direplikasi ke gudang data target.
SQLUtilitas pg_dump dan pg_restore Postgre awalnya membuat tabel tanpa kunci utama dan kemudian menambahkannya setelahnya. Jika Anda menggunakan salah satu utilitas ini, sebaiknya buat skema terlebih dahulu, lalu muat data dalam perintah terpisah.
Saya SQL
Contoh berikut menggunakan utilitas My SQL Workbench
CREATE DATABASE
my_db
; USEmy_db
; CREATE TABLEbooks_table
(ID int NOT NULL, Title VARCHAR(50) NOT NULL, Author VARCHAR(50) NOT NULL, Copyright INT NOT NULL, Genre VARCHAR(50) NOT NULL, PRIMARY KEY (ID)); INSERT INTObooks_table
VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');
Postgre SQL
Contoh berikut menggunakan terminal SQL interaktif psql
Postgre. Saat menghubungkan ke klaster, sertakan basis data bernama yang Anda tentukan saat membuat integrasi.
psql -h
mycluster
.cluster-123456789012
.us-east-2.rds.amazonaws.com -p 5432 -Uusername
-dnamed_db
; named_db=> CREATE TABLEbooks_table
(ID int NOT NULL, Title VARCHAR(50) NOT NULL, Author VARCHAR(50) NOT NULL, Copyright INT NOT NULL, Genre VARCHAR(50) NOT NULL, PRIMARY KEY (ID)); named_db=> INSERT INTObooks_table
VALUES (1, "The Shining", "Stephen King", 1977, "Supernatural fiction");
Menanyakan data Aurora Anda di Amazon Redshift
Setelah Anda menambahkan data ke cluster Aurora DB, itu direplikasi ke Amazon Redshift dan siap untuk ditanyakan.
Untuk mengueri data yang direplikasi
-
Buka konsol Amazon Redshift dan pilih Editor kueri v2 dari panel navigasi kiri.
-
Hubungkan ke klaster atau grup kerja Anda dan pilih basis data tujuan Anda (yang Anda buat dari integrasi) dari menu dropdown (destination_database dalam contoh ini). Untuk petunjuk cara membuat basis data tujuan, lihat Membuat basis data tujuan di Amazon Redshift.
-
Gunakan SELECT pernyataan untuk menanyakan data Anda. Dalam contoh ini, Anda dapat menjalankan perintah berikut untuk memilih semua data dari tabel yang Anda buat di sumber Aurora DB cluster:
SELECT * from
my_db
."books_table
";-
adalah nama skema database Aurora. Opsi ini hanya diperlukan untuk SQL database Saya.my_db
-
adalah nama tabel Aurora.books_table
-
Anda juga dapat menanyakan data menggunakan klien baris perintah. Sebagai contoh:
destination_database=# select * from
my_db
."books_table
"; ID | Title | Author | Copyright | Genre | txn_seq | txn_id ----+–------------+---------------+-------------+------------------------+----------+--------+ 1 | The Shining | Stephen King | 1977 | Supernatural fiction | 2 | 12192
catatan
Untuk kepekaan huruf besar/kecil, gunakan tanda kutip ganda (" ") untuk nama skema, tabel, dan kolom. Untuk informasi selengkapnya, lihat enable_case_sensitive_identifier.
Perbedaan tipe data antara database Aurora dan Amazon Redshift
menunjukkan pemetaan tipe data Aurora My SQL atau Aurora SQL Postgre ke tipe data Amazon Redshift yang sesuai. Amazon Aurora saat ini hanya mendukung tipe data ini untuk integrasi nol. ETL
Jika tabel di cluster DB sumber Anda menyertakan tipe data yang tidak didukung, tabel akan tidak sinkron dan tidak dapat dikonsumsi oleh target Amazon Redshift. Streaming dari sumber ke target berlanjut, tetapi tabel dengan jenis data yang tidak didukung tidak tersedia. Untuk memperbaiki tabel dan membuatnya tersedia di Amazon Redshift, Anda harus mengembalikan perubahan yang melanggar secara manual, lalu menyegarkan integrasi dengan menjalankan ALTER DATABASE...INTEGRATION
REFRESH
.
Topik
SQL
tipe data saya SQL | Jenis data Amazon Redshift | Deskripsi | Batasan |
---|---|---|---|
INT | INTEGER | Bilangan bulat empat byte bertanda | |
SMALLINT | SMALLINT | Bilangan bulat dua byte bertanda | |
TINYINT | SMALLINT | Bilangan bulat dua byte bertanda | |
MEDIUMINT | INTEGER | Bilangan bulat empat byte bertanda | |
BIGINT | BIGINT | Bilangan bulat delapan byte bertanda | |
INT UNSIGNED | BIGINT | Bilangan bulat delapan byte bertanda | |
TINYINT UNSIGNED | SMALLINT | Bilangan bulat dua byte bertanda | |
MEDIUMINT UNSIGNED | INTEGER | Bilangan bulat empat byte bertanda | |
BIGINT UNSIGNED | DECIMAL(20,0) | Numerik persis dari presisi yang dapat dipilih | |
DECIMAL(p, s) = NUMERIC (p, s) | DECIMAL(p, s) | Numerik persis dari presisi yang dapat dipilih |
Presisi lebih besar dari 38 dan penskalaan lebih besar dari 37 tidak didukung |
DECIMAL(p, s) UNSIGNED = NUMERIC (p, s) UNSIGNED | DECIMAL(p, s) | Numerik persis dari presisi yang dapat dipilih |
Presisi lebih besar dari 38 dan penskalaan lebih besar dari 37 tidak didukung |
FLOAT4/REAL | REAL | Angka floating-point presisi tunggal | |
FLOAT4/REAL UNSIGNED | REAL | Angka floating-point presisi tunggal | |
DOUBLE/REAL/FLOAT8 | DOUBLE PRECISION | Angka floating-point presisi ganda | |
DOUBLE/REAL/FLOAT8 UNSIGNED | DOUBLE PRECISION | Angka floating-point presisi ganda | |
BIT(n) | VARBYTE(8) | Nilai biner dengan panjang variabel | |
BINARY(n) | VARBYTE(n) | Nilai biner dengan panjang variabel | |
VARBINARY(n) | VARBYTE(n) | Nilai biner dengan panjang variabel | |
CHAR(n) | VARCHAR(n) | Nilai string dengan panjang variabel | |
VARCHAR(n) | VARCHAR(n) | Nilai string dengan panjang variabel | |
TEXT | VARCHAR(65535) | Nilai string dengan panjang variabel hingga 65535 byte | |
TINYTEXT | VARCHAR(255) | Nilai string dengan panjang variabel hingga 255 byte | |
MEDIUMTEXT | VARCHAR(65535) | Nilai string dengan panjang variabel hingga 65535 byte | |
LONGTEXT | VARCHAR(65535) | Nilai string dengan panjang variabel hingga 65535 byte | |
ENUM | VARCHAR(1020) | Nilai string dengan panjang variabel hingga 1020 byte | |
SET | VARCHAR(1020) | Nilai string dengan panjang variabel hingga 1020 byte | |
DATE | DATE | Tanggal kalender (tahun, bulan, hari) | |
DATETIME | TIMESTAMP | Tanggal dan waktu (tanpa zona waktu) | |
TIMESTAMP(p) | TIMESTAMP | Tanggal dan waktu (tanpa zona waktu) | |
TIME | VARCHAR(18) | Nilai string dengan panjang variabel hingga 18 byte | |
YEAR | VARCHAR(4) | Nilai string dengan panjang variabel hingga 4 byte | |
JSON | SUPER | Data atau dokumen semi-terstruktur sebagai nilai |
Aurora Postgre SQL
ETLIntegrasi nol untuk Aurora SQL Postgre tidak mendukung tipe data khusus atau tipe data yang dibuat oleh ekstensi.
penting
ETLIntegrasi nol dengan fitur Amazon Redshift untuk Aurora SQL Postgre sedang dalam rilis pratinjau. Dokumentasi dan fitur dapat berubah. Anda dapat menggunakan fitur ini hanya dalam lingkungan pengujian, bukan dalam lingkungan produksi. Untuk syarat dan ketentuan pratinjau, lihat Beta dan Pratinjau dalam Persyaratan Layanan AWS
Tipe data Aurora Postgre SQL | Jenis data Amazon Redshift | Deskripsi | Batasan |
---|---|---|---|
bigint | BIGINT | Bilangan bulat delapan byte bertanda | |
bigserial | BIGINT | Bilangan bulat delapan byte bertanda | |
bit(n) | VARBYTE(n) | Nilai biner dengan panjang variabel | |
bit varying(n) | VARBYTE(n) | Nilai biner dengan panjang variabel | |
bit | VARBYTE(1024000) | Nilai string dengan panjang variabel hingga 1.024.000 byte | |
boolean | BOOLEAN | Boolean logis (true/false) | |
bytea | VARBYTE(1024000) | Nilai string dengan panjang variabel hingga 1.024.000 byte | |
character(n) | CHAR(n) | String karakter dengan panjang tetap | |
character varying(n) | VARCHAR(65535) | Nilai string dengan panjang variabel | |
date | DATE | Tanggal kalender (tahun, bulan, hari) |
|
double precision | DOUBLE PRECISION | Angka floating-point presisi ganda | Nilai subnormal tidak didukung |
integer | INTEGER | Bilangan bulat empat byte bertanda | |
money | DECIMAL(20,3) | Jumlah mata uang | |
numeric(p,s) | DECIMAL(p, s) | Nilai string dengan panjang variabel |
|
real | REAL | Angka floating-point presisi tunggal | |
smallint | SMALLINT | Bilangan bulat dua byte bertanda | |
smallserial | SMALLINT | Bilangan bulat dua byte bertanda | |
serial | INTEGER | Bilangan bulat empat byte bertanda | |
text | VARCHAR(65535) | Nilai string dengan panjang variabel hingga 65.535 byte | |
time [ (p) ] [ without time zone ] | VARCHAR(19) | Nilai string dengan panjang variabel hingga 19 byte | Nilai Infinity dan -Infinity tidak didukung |
time [(p)] with time zone | VARCHAR(22) | Nilai string dengan panjang variabel hingga 22 byte |
|
timestamp [(p)] [without timezone] | TIMESTAMP | Tanggal dan waktu (tanpa zona waktu) |
|
timestamp [(p)] with time zone | TIMESTAMPTZ | Tanggal dan waktu (dengan zona waktu) |
|