Menambahkan data ke database sumber RDS cluster dan menanyakannya - Layanan Basis Data Relasional Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menambahkan data ke database sumber RDS cluster dan menanyakannya

Untuk menyelesaikan pembuatan integrasi nol-ETL yang mereplikasi data dari Amazon RDS Amazon Redshift, Anda harus membuat database di tujuan target.

Untuk koneksi dengan Amazon Redshift, sambungkan ke klaster atau grup kerja Amazon Redshift Anda dan buat database dengan referensi ke pengenal integrasi Anda. Kemudian, Anda dapat menambahkan data ke basis data RDS sumber Anda cluster dan melihatnya direplikasi di Amazon Redshift atau. Amazon SageMaker

Membuat database target

Sebelum Anda dapat mulai mereplikasi data ke Amazon Redshift, setelah Anda membuat integrasi, Anda harus membuat database di gudang data target Anda. Database ini harus menyertakan referensi ke identifier 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 database sumber

Setelah Anda mengkonfigurasi integrasi Anda, Anda dapat menambahkan beberapa data ke database RDS cluster yang ingin Anda replikasi ke gudang data Anda.

catatan

Ada perbedaan antara tipe data di Amazon RDS Aurora dan gudang analitik target. Untuk tabel pemetaan jenis data, lihat Perbedaan jenis data antara basis data RDS dan Amazon Redshift.

Pertama, sambungkan ke database sumber menggunakan klien MySQL pilihan Anda. Untuk petunjuk, lihat Menghubungkan ke instans MySQL DB Anda.

Kemudian, buat tabel dan masukkan urutan data sampel.

penting

Pastikan tabel memiliki kunci primer. Jika tidak, tabel tidak dapat direplikasi ke gudang data target.

Contoh berikut menggunakan utilitas MySQL Workbench.

CREATE DATABASE my_db; USE my_db; CREATE TABLE books_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 INTO books_table VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');

Menanyakan data Amazon RDS Anda di Amazon Redshift

Setelah Anda menambahkan data ke database RDS cluster, itu direplikasi ke database tujuan dan siap untuk ditanyakan.

Untuk mengueri data yang direplikasi
  1. Buka konsol Amazon Redshift dan pilih Editor kueri v2 dari panel navigasi kiri.

  2. 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.

  3. Gunakan pernyataan SELECT untuk menanyakan data Anda. Dalam contoh ini, Anda dapat menjalankan perintah berikut untuk memilih semua data dari tabel yang Anda buat di basis data RDS sumber DB cluster:

    SELECT * from my_db."books_table";
    Jalankan pernyataan SELECT dalam editor kueri. Hasilnya adalah satu baris data sampel yang ditambahkan ke database Amazon RDS.
    • my_db adalah nama skema basis data RDS.

    • books_table adalah nama tabel RDS.

Anda juga dapat menanyakan data menggunakan klien baris perintah. Misalnya:

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 jenis data antara basis data RDS dan Amazon Redshift

Tabel berikut menunjukkan pemetaan RDS untuk tabel MySQL menunjukkan pemetaan tipe data Aurora MySQL . Amazon RDS saat ini hanya mendukung jenis data ini untuk integrasi nol-ETL.

Jika tabel di database sumber Anda menyertakan tipe data yang tidak didukung, tabel tidak sinkron dan tidak dapat dikonsumsi oleh target tujuan. Streaming dari sumber ke target berlanjut, tetapi tabel dengan jenis data yang tidak didukung tidak tersedia. Untuk memperbaiki tabel dan membuatnya tersedia di tujuan target, Anda harus secara manual mengembalikan perubahan yang melanggar dan kemudian menyegarkan integrasi dengan menjalankanALTER DATABASE...INTEGRATION REFRESH.

catatan

Anda tidak dapat menyegarkan integrasi nol-ETL dengan lakehouse. Amazon SageMaker Sebagai gantinya, hapus dan coba buat integrasi lagi.

RDS for MySQL

Jenis data RDS for MySQL Tipe data target Deskripsi Batasan
INT INTEGER Bilangan bulat empat byte bertanda Tidak ada
SMALLINT SMALLINT Bilangan bulat dua byte bertanda Tidak ada
TINYINT SMALLINT Bilangan bulat dua byte bertanda Tidak ada
MEDIUMINT INTEGER Bilangan bulat empat byte bertanda Tidak ada
BIGINT BIGINT Bilangan bulat delapan byte bertanda Tidak ada
INT UNSIGNED BIGINT Bilangan bulat delapan byte bertanda Tidak ada
TINYINT UNSIGNED SMALLINT Bilangan bulat dua byte bertanda Tidak ada
MEDIUMINT UNSIGNED INTEGER Bilangan bulat empat byte bertanda Tidak ada
BIGINT UNSIGNED DECIMAL(20,0) Numerik persis dari presisi yang dapat dipilih Tidak ada
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/NYATA REAL Angka floating-point presisi tunggal Tidak ada
FLOAT4/NYATA TIDAK DITANDATANGANI REAL Angka floating-point presisi tunggal Tidak ada
DOUBLE/REAL/FLOAT8 DOUBLE PRECISION Angka floating-point presisi ganda Tidak ada
DOUBLE/REAL/FLOAT8 TIDAK DITANDATANGANI DOUBLE PRECISION Angka floating-point presisi ganda Tidak ada
BIT(n) VARBYTE(8) Nilai biner dengan panjang variabel Tidak ada
BINER (n) VARBYTE(n) Nilai biner dengan panjang variabel Tidak ada
VARBINER (n) VARBYTE(n) Nilai biner dengan panjang variabel Tidak ada
CHAR(n) VARCHAR(n) Nilai string dengan panjang variabel Tidak ada
VARCHAR(n) VARCHAR(n) Nilai string dengan panjang variabel Tidak ada
TEXT VARCHAR(65535) Nilai string panjang variabel hingga 65.535 karakter Tidak ada
TINYTEXT VARCHAR(255) Nilai string panjang variabel hingga 255 karakter Tidak ada
MEDIUMTEXT VARCHAR(65535) Nilai string panjang variabel hingga 65.535 karakter Tidak ada
LONGTEXT VARCHAR(65535) Nilai string panjang variabel hingga 65.535 karakter Tidak ada
ENUM VARCHAR(1020) Nilai string panjang variabel hingga 1.020 karakter Tidak ada
SET VARCHAR(1020) Nilai string panjang variabel hingga 1.020 karakter Tidak ada
DATE DATE Tanggal kalender (tahun, bulan, hari) Tidak ada
DATETIME TIMESTAMP Tanggal dan waktu (tanpa zona waktu) Tidak ada
TIMESTAMP(p) TIMESTAMP Tanggal dan waktu (tanpa zona waktu) Tidak ada
TIME VARCHAR(18) Nilai string panjang variabel hingga 18 karakter Tidak ada
YEAR VARCHAR(4) Nilai string panjang variabel hingga 4 karakter Tidak ada
JSON SUPER Data atau dokumen semi-terstruktur sebagai nilai Tidak ada