Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menghubungkan ke gudang data Snowflake dengan AWS Schema Conversion Tool
Anda dapat menggunakan AWS SCT untuk mengonversi skema, objek kode, dan kode aplikasi dari Snowflake ke Amazon Redshift.
Hak istimewa untuk Snowflake sebagai database sumber
Anda dapat membuat peran dengan hak istimewa dan memberikan peran ini nama pengguna dengan menggunakan SECURITYADMIN
peran dan konteks SECURITYADMIN
sesi.
Contoh berikut menciptakan hak istimewa minimal dan memberikannya kepada pengguna. min_privs
create role
role_name
; grant rolerole_name
to role sysadmin; grant usage on databasedb_name
to rolerole_name
; grant usage on schemadb_name
.schema_name
to rolerole_name
; grant usage on warehousedatawarehouse_name
to rolerole_name
; grant monitor on databasedb_name
to rolerole_name
; grant monitor on warehousedatawarehouse_name
to rolerole_name
; grant select on all tables in schemadb_name
.schema_name
to rolerole_name
; grant select on future tables in schemadb_name
.schema_name
to rolerole_name
; grant select on all views in schemadb_name
.schema_name
to rolerole_name
; grant select on future views in schemadb_name
.schema_name
to rolerole_name
; grant select on all external tables in schemadb_name
.schema_name
to rolerole_name
; grant select on future external tables in schemadb_name
.schema_name
to rolerole_name
; grant usage on all sequences in schemadb_name
.schema_name
to rolerole_name
; grant usage on future sequences in schemadb_name
.schema_name
to rolerole_name
; grant usage on all functions in schemadb_name
.schema_name
to rolerole_name
; grant usage on future functions in schemadb_name
.schema_name
to rolerole_name
; grant usage on all procedures in schemadb_name
.schema_name
to rolerole_name
; grant usage on future procedures in schemadb_name
.schema_name
to rolerole_name
; create user min_privs password='real_user_password
' DEFAULT_ROLE =role_name
DEFAULT_WAREHOUSE = 'datawarehouse_name
'; grant rolerole_name
to usermin_privs
;
Pada contoh sebelumnya, ganti placeholder sebagai berikut:
-
Ganti
dengan nama peran dengan hak istimewa hanya-baca.role_name
-
Ganti
dengan nama database sumber.db_name
-
Ganti
dengan nama skema sumber.schema_name
-
Ganti
dengan nama gudang data yang diperlukan.datawarehousename
-
Ganti
dengan nama pengguna yang memiliki hak istimewa minimal.min_privs
DEFAULT_WAREHOUSE
Parameter DEFAULT_ROLE
dan sensitif terhadap kunci.
Mengkonfigurasi akses aman ke Amazon S3
Kebijakan keamanan dan manajemen akses untuk bucket Amazon S3 memungkinkan Snowflake mengakses, membaca data, dan menulis data ke bucket S3. Anda dapat mengonfigurasi akses aman ke bucket Amazon S3 pribadi menggunakan jenis objek SnowflakeSTORAGE INTEGRATION
. Objek integrasi penyimpanan Snowflake mendelegasikan tanggung jawab otentikasi ke identitas Snowflake dan entitas manajemen akses.
Untuk informasi selengkapnya, lihat Mengonfigurasi Integrasi Penyimpanan Snowflake untuk Mengakses Amazon S3 dalam dokumentasi Snowflake
Menghubungkan ke Snowflake sebagai sumber
Gunakan prosedur berikut untuk terhubung ke database sumber Anda dengan file AWS Schema Conversion Tool.
Untuk terhubung ke database sumber Snowflake
-
Di dalam AWS Schema Conversion Tool, pilih Tambahkan sumber.
-
Pilih Snowflake, lalu pilih Berikutnya.
Kotak dialog Tambah sumber muncul.
-
Untuk nama Koneksi, masukkan nama untuk database Anda. AWS SCT menampilkan nama ini di pohon di panel kiri.
-
Gunakan kredensi database dari AWS Secrets Manager atau masukkan secara manual:
-
Untuk menggunakan kredensi database dari Secrets Manager, gunakan petunjuk berikut:
-
Untuk AWS Rahasia, pilih nama rahasianya.
-
Pilih Isi untuk secara otomatis mengisi semua nilai di kotak dialog koneksi database dari Secrets Manager.
Untuk informasi tentang menggunakan kredensil database dari Secrets Manager, lihat. Mengkonfigurasi AWS Secrets Manager di AWS Schema Conversion Tool
-
-
Untuk memasukkan informasi koneksi gudang data sumber Snowflake secara manual, gunakan instruksi berikut:
Parameter Tindakan Nama server Masukkan nama Domain Name System (DNS) atau alamat IP server basis data sumber Anda.
Port server Masukkan port yang digunakan untuk terhubung ke server database sumber Anda.
Basis Data Masukkan nama database Snowflake.
Nama pengguna dan Kata Sandi Masukkan kredensi database untuk terhubung ke server basis data sumber Anda.
AWS SCT menyimpan kata sandi Anda dalam format terenkripsi hanya jika Anda memintanya secara eksplisit.
Gunakan SSL Pilih opsi ini jika Anda ingin menggunakan Secure Sockets Layer (SSL) untuk terhubung ke database Anda. Berikan informasi tambahan berikut, sebagaimana berlaku, pada tab SSL:
-
Jalur kunci pribadi: Lokasi kunci pribadi.
-
Passphrase: Passphrase untuk kunci privat.
Untuk informasi selengkapnya tentang dukungan SSL untuk Snowflake, lihat Mengkonfigurasi opsi keamanan untuk koneksi.
Menyimpan kata sandi AWS SCT membuat brankas aman untuk menyimpan sertifikat SSL dan kata sandi database. Jika Anda mengatur opsi ini, Anda dapat menyimpan kata sandi database. Melakukan ini berarti Anda dapat terhubung dengan cepat ke database tanpa harus memasukkan kata sandi.
Jalur pengemudi kepingan salju Masukkan jalur ke driver yang akan digunakan untuk terhubung ke database sumber. Untuk informasi selengkapnya, lihat Menginstal driver JDBC untuk AWS Schema Conversion Tool.
Jika Anda menyimpan jalur driver di pengaturan proyek global, jalur driver tidak muncul di kotak dialog koneksi. Untuk informasi selengkapnya, lihat Menyimpan jalur driver di pengaturan global.
-
-
-
Pilih Uji Koneksi untuk memverifikasi bahwa AWS SCT dapat terhubung ke database sumber Anda.
-
Pilih Connect untuk terhubung ke database sumber Anda.
Keterbatasan untuk Snowflake sebagai sumber
Berikut ini adalah batasan saat menggunakan Snowflake sebagai sumber untuk: AWS SCT
-
Pengidentifikasi objek harus unik dalam konteks jenis objek dan objek induk:
- Basis Data
-
Pengidentifikasi skema harus unik dalam database.
- Skema
-
Pengidentifikasi objek seperti untuk tabel dan tampilan harus unik dalam skema.
- Tabel/Tampilan
-
Pengidentifikasi kolom harus unik di dalam tabel.
-
Jumlah maksimum tabel untuk tipe node cluster besar dan xlarge adalah 9.900. Untuk tipe node cluster 8xlarge, jumlah maksimum tabel adalah 100.000. Batas tersebut mencakup tabel sementara, baik yang ditentukan pengguna maupun yang dibuat oleh Amazon Redshift selama pemrosesan kueri atau pemeliharaan sistem. Untuk informasi selengkapnya, lihat kuota Amazon Redshift di Panduan Manajemen Cluster Amazon Redshift.
-
Untuk prosedur tersimpan, jumlah maksimum argumen input dan output adalah 32.
Tipe data sumber untuk Snowflake
Berikut ini, Anda dapat menemukan tipe data sumber Snowflake yang didukung saat menggunakan AWS SCT dan pemetaan default ke target Amazon Redshift.
Tipe data kepingan salju | Tipe data Amazon Redshift |
---|---|
ANGKA |
NUMERIK (38) |
NOMOR (p) |
Jika p adalah =< 4, maka SMALLINT Jika p adalah => 5 dan =< 9, maka INTEGER Jika p adalah => 10 dan =< 18, maka BIGINT Jika p adalah => 19 maka NUMERIK (p) |
NOMOR (p, 0) |
Jika p adalah =< 4, maka SMALLINT Jika p adalah => 5 dan =< 9, maka INTEGER Jika p adalah => 10 dan =< 18, maka BIGINT Jika p adalah => 19 maka: NUMERIK (p, 0) |
NOMOR (p, s) |
Jika p adalah => 1 dan =< 38, dan jika s adalah => 1 dan =< 37, maka NUMERIK (p, s) |
FLOAT |
FLOAT |
TEXT Karakter unicode hingga 16.777.216 byte; hingga 4 byte per karakter. |
VARCHAR (MAKS) |
TEKS (p) Karakter unicode hingga 65.535 byte; hingga 4 byte per karakter. |
Jika p adalah =< 65.535 maka, VARCHAR (p) |
TEKS (p) Karakter unicode hingga 16.777.216 byte; hingga 4 byte per karakter. |
Jika p adalah => 65.535 dan =< 16.777.216 maka, VARCHAR (MAX) |
BINARY Karakter single-byte hingga 8.388.608 byte; 1 byte per karakter. |
VARCHAR (MAKS) |
BINER (p) Karakter single-byte hingga 65.535 byte; 1 byte per karakter. |
VARCHAR (p) |
BINER (p) Karakter single-byte hingga 8.388.608 byte; 1 byte per karakter. |
VARCHAR (MAKS) |
BOOLEAN |
BOOLEAN |
DATE |
DATE |
TIME Nilai waktu antara 00:00:00 dan 23:59:59.999 999999. |
VARCHAR(18) |
WAKTU (f) Nilai waktu antara 00:00:00 dan 23:59:59.9 (f). |
VARCHAR (n) — 9+dt-attr-1 |
TIMESTAMP_NTZ |
TIMESTAMP |
STAMP_TZ |
TIMESTAMPTZ |
Pengaturan konversi Snowflake ke Amazon Redshift
Untuk mengedit setelan konversi Snowflake ke Amazon Redshift, pilih Pengaturan AWS SCT di, lalu pilih Pengaturan konversi. Dari daftar atas, pilih Snowflake, lalu pilih Snowflake — Amazon Redshift. AWS SCT menampilkan semua pengaturan yang tersedia untuk konversi Snowflake ke Amazon Redshift.
Pengaturan konversi Snowflake ke Amazon Redshift AWS SCT di menyertakan opsi untuk hal berikut:
-
Untuk membatasi jumlah komentar dengan item tindakan dalam kode yang dikonversi.
Untuk Tambahkan komentar di kode yang dikonversi untuk item tindakan dengan tingkat keparahan yang dipilih dan lebih tinggi, pilih tingkat keparahan item tindakan. AWS SCT menambahkan komentar dalam kode yang dikonversi untuk item tindakan dengan tingkat keparahan yang dipilih dan lebih tinggi.
Misalnya, untuk meminimalkan jumlah komentar dalam kode yang dikonversi, pilih Error only. Untuk menyertakan komentar untuk semua item tindakan dalam kode yang dikonversi, pilih Semua pesan.
-
Untuk mengatur jumlah maksimum tabel yang AWS SCT dapat diterapkan ke cluster Amazon Redshift target Anda.
Untuk Jumlah maksimum tabel untuk klaster Amazon Redshift target, pilih jumlah tabel yang AWS SCT dapat diterapkan ke cluster Amazon Redshift Anda.
Amazon Redshift memiliki kuota yang membatasi tabel penggunaan untuk jenis node cluster yang berbeda. Jika Anda memilih Otomatis, AWS SCT tentukan jumlah tabel yang akan diterapkan ke klaster Amazon Redshift target Anda tergantung pada jenis node. Secara opsional, pilih nilainya secara manual. Untuk informasi selengkapnya, lihat Kuota dan batasan di Amazon Redshift dalam Panduan Manajemen Amazon Redshift.
AWS SCT mengonversi semua tabel sumber Anda, meskipun ini lebih dari yang dapat disimpan oleh cluster Amazon Redshift Anda. AWS SCT menyimpan kode yang dikonversi dalam proyek Anda dan tidak menerapkannya ke database target. Jika Anda mencapai kuota klaster Amazon Redshift untuk tabel saat menerapkan kode yang dikonversi, maka akan AWS SCT menampilkan pesan peringatan. Selain itu, AWS SCT terapkan tabel ke cluster Amazon Redshift target Anda hingga jumlah tabel mencapai batas.
-
Untuk menerapkan kompresi ke kolom tabel Amazon Redshift. Untuk melakukannya, pilih Gunakan pengkodean kompresi.
AWS SCT menetapkan pengkodean kompresi ke kolom secara otomatis menggunakan algoritme Amazon Redshift default. Untuk informasi selengkapnya, lihat Pengkodean kompresi di Panduan Pengembang Database Amazon Redshift.
Secara default, Amazon Redshift tidak menerapkan kompresi ke kolom yang didefinisikan sebagai kunci pengurutan dan distribusi. Anda dapat mengubah perilaku ini dan menerapkan kompresi ke kolom ini. Untuk melakukannya, pilih Gunakan pengkodean kompresi untuk kolom KEY. Anda dapat memilih opsi ini hanya ketika Anda memilih opsi Gunakan pengkodean kompresi.
Pengaturan pengoptimalan konversi Snowflake ke Amazon Redshift
Untuk mengedit setelan pengoptimalan konversi Snowflake ke Amazon Redshift, pilih Pengaturan AWS SCT di, lalu pilih Pengaturan konversi. Dari daftar atas, pilih Snowflake, lalu pilih Snowflake — Amazon Redshift. Di panel kiri, pilih Strategi optimasi. AWS SCT menampilkan pengaturan pengoptimalan konversi untuk konversi Snowflake ke Amazon Redshift.
Pengaturan pengoptimalan konversi Snowflake ke Amazon Redshift AWS SCT di menyertakan opsi untuk hal-hal berikut:
-
Untuk bekerja dengan optimasi tabel otomatis. Untuk melakukannya, pilih Gunakan penyetelan tabel otomatis Amazon Redshift.
Optimalisasi tabel otomatis adalah proses self-tuning di Amazon Redshift yang secara otomatis mengoptimalkan desain tabel. Untuk informasi selengkapnya, lihat Bekerja dengan pengoptimalan tabel otomatis di Panduan Pengembang Database Amazon Redshift.
Untuk hanya mengandalkan optimasi tabel otomatis, pilih None for Initial key selection strategy.
-
Untuk memilih kunci sortir dan distribusi menggunakan strategi Anda.
Anda dapat memilih kunci sortir dan distribusi menggunakan metadata Amazon Redshift, informasi statistik, atau kedua opsi ini. Untuk strategi pemilihan kunci awal pada tab Strategi optimasi, pilih salah satu opsi berikut:
Gunakan metadata, abaikan informasi statistik
Abaikan metadata, gunakan informasi statistik
Gunakan metadata dan informasi statistik
Bergantung pada opsi yang Anda pilih, Anda dapat memilih strategi pengoptimalan. Kemudian, untuk setiap strategi, masukkan nilainya (0-100). Nilai-nilai ini menentukan bobot setiap strategi. Dengan menggunakan nilai bobot ini, AWS SCT mendefinisikan bagaimana setiap aturan mempengaruhi pilihan distribusi dan kunci pengurutan. Nilai default didasarkan pada praktik terbaik AWS migrasi.
Anda dapat menentukan ukuran tabel kecil untuk strategi Temukan tabel kecil. Untuk jumlah baris tabel Min dan jumlah baris tabel Maks, masukkan jumlah baris minimum dan maksimum dalam tabel untuk mendefinisikannya sebagai tabel kecil. AWS SCT menerapkan gaya
ALL
distribusi ke tabel kecil. Dalam hal ini, salinan seluruh tabel didistribusikan ke setiap node. -
Untuk mengkonfigurasi detail strategi.
Selain menentukan bobot untuk setiap strategi pengoptimalan, Anda dapat mengonfigurasi pengaturan pengoptimalan. Untuk melakukannya, pilih Optimasi konversi.
Untuk Batas kolom kunci Urutkan, masukkan jumlah kolom maksimum di tombol sortir.
Untuk nilai ambang miring, masukkan persentase (0-100) dari nilai miring untuk kolom. AWS SCT mengecualikan kolom dengan nilai miring lebih besar dari ambang batas dari daftar kandidat untuk kunci distribusi. AWS SCT mendefinisikan nilai miring untuk kolom sebagai rasio persentase dari jumlah kemunculan nilai yang paling umum dengan jumlah total catatan.
Untuk kueri N Teratas dari tabel riwayat kueri, masukkan nomor (1-100) kueri yang paling sering digunakan untuk dianalisis.
Untuk Pilih pengguna statistik, pilih pengguna database yang ingin Anda analisis statistik kueri.
Juga, pada tab Strategi optimasi, Anda dapat menentukan ukuran tabel kecil untuk strategi Temukan tabel kecil. Untuk jumlah baris tabel Min dan Jumlah baris tabel Maks, masukkan jumlah baris minimum dan maksimum dalam tabel untuk menganggapnya sebagai tabel kecil. AWS SCT menerapkan gaya
ALL
distribusi ke tabel kecil. Dalam hal ini, salinan seluruh tabel didistribusikan ke setiap node.