Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting blog
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memigrasi cluster yang disediakan ke Amazon Redshift Serverless
Anda dapat memigrasikan cluster yang sudah disediakan ke Amazon Redshift Serverless, mengaktifkan penskalaan sumber daya komputasi sesuai permintaan dan otomatis. Memigrasikan cluster yang disediakan ke Amazon Redshift Serverless memungkinkan Anda mengoptimalkan biaya dengan membayar hanya untuk sumber daya yang Anda gunakan dan secara otomatis menskalakan kapasitas berdasarkan permintaan beban kerja. Kasus penggunaan umum untuk migrasi termasuk menjalankan kueri ad-hoc, pekerjaan pemrosesan data berkala, atau menangani beban kerja yang tidak dapat diprediksi tanpa sumber daya penyediaan berlebihan. Lakukan serangkaian tugas berikut untuk memigrasikan cluster Amazon Redshift yang disediakan ke opsi penerapan tanpa server.
Membuat snapshot dari cluster yang disediakan
catatan
Amazon Redshift secara otomatis mengonversi kunci yang disisipkan menjadi kunci majemuk saat Anda mengembalikan snapshot cluster yang disediakan ke namespace tanpa server.
Untuk mentransfer data dari cluster yang disediakan ke Amazon Redshift Serverless, buat snapshot cluster yang disediakan, lalu pulihkan snapshot di Amazon Redshift Serverless.
catatan
Sebelum memigrasikan data ke grup kerja tanpa server, pastikan kebutuhan cluster yang disediakan kompatibel dengan jumlah RPU yang Anda pilih di Amazon Redshift Serverless.
Untuk membuat snapshot dari cluster yang disediakan
Masuk ke Konsol Manajemen AWS dan buka konsol Amazon Redshift di https://console.aws.amazon.com/redshiftv2/
. -
Pada menu navigasi, pilih Cluster, Snapshots, lalu pilih Buat snapshot.
-
Masukkan properti definisi snapshot, lalu pilih Buat snapshot. Mungkin perlu beberapa waktu agar snapshot tersedia.
Untuk mengembalikan snapshot cluster yang disediakan ke namespace tanpa server:
Masuk ke Konsol Manajemen AWS dan buka konsol Amazon Redshift di https://console.aws.amazon.com/redshiftv2/
. -
Mulai dari konsol cluster yang disediakan Amazon Redshift dan arahkan ke halaman Cluster, Snap shots.
-
Pilih snapshot untuk digunakan.
-
Pilih Kem balikan snapshot, Kem balikan ke nam espace tanpa server.
-
Pilih namespace untuk mengembalikan snapshot Anda.
-
Konfirmasikan Anda ingin memulihkan dari snapshot Anda. Tindakan ini menggantikan semua database di titik akhir tanpa server Anda dengan data dari cluster yang disediakan. Pilih Pulihkan.
Untuk informasi selengkapnya tentang snapshot cluster yang disediakan, lihat snapshot Amazon Redshift.
Menghubungkan ke Amazon Redshift Serverless menggunakan driver
Untuk terhubung ke Amazon Redshift Serverless dengan klien SQL pilihan Anda, Anda dapat menggunakan driver JDBC versi 2.x yang disediakan Amazon Redshift. Sebaiknya sambungkan ke Amazon Redshift menggunakan versi terbaru dari driver Amazon Redshift JDBC versi 2.x. Nomor port adalah opsional. Jika Anda tidak memasukkannya, Amazon Redshift Serverless default ke nomor port 5439. Anda dapat mengubah ke port lain dari rentang port 5431-5455 atau 8191-8215. Untuk mengubah port default untuk titik akhir tanpa server, gunakan AWS CLI dan Amazon Redshift API.
Untuk menemukan titik akhir yang tepat untuk digunakan untuk driver JDBC, ODBC, atau Python, lihat Konfigurasi Workgroup di Amazon Redshift Serverless. Anda juga dapat menggunakan operasi Amazon Redshift Serverless API GetWorkgroup atau AWS CLI operasi get-workgroups untuk mengembalikan informasi tentang grup kerja Anda, lalu sambungkan.
Menghubungkan menggunakan otentikasi berbasis kata sandi
Untuk membuat koneksi menggunakan driver Amazon Redshift JDBC versi 2.x dengan otentikasi berbasis kata sandi, gunakan sintaks berikut:
jdbc:redshift://<workgroup-name>.<account-number>.<aws-region>.redshift-serverless.amazonaws.com:5439/?username=username&password=password
Untuk membuat koneksi menggunakan konektor Amazon Redshift Python dengan otentikasi berbasis kata sandi, gunakan sintaks berikut:
import redshift_connector with redshift_connector.connect( host='<workgroup-name>.<account-number>.<aws-region>.redshift-serverless.amazonaws.com', database='<database-name>', user='username', password='password' # port value of 5439 is specified by default ) as conn: pass
Untuk membuat koneksi menggunakan driver Amazon Redshift ODBC versi 2.x dengan otentikasi berbasis kata sandi, gunakan sintaks berikut:
Driver={Amazon Redshift ODBC Driver (x64)}; Server=<workgroup-name>.<account-number>.<aws-region>.redshift-serverless.amazonaws.com; Database=database-name; User=username; Password=password
Menghubungkan menggunakan IAM
Jika Anda lebih suka masuk dengan IAM, gunakan operasi Amazon Redshift Serverless API GetCredentials.
Untuk menggunakan otentikasi IAM, tambahkan iam: ke Amazon Redshift JDBC URL berikutjdbc:redshift:, seperti yang ditunjukkan pada contoh berikut.
jdbc:redshift:iam://<workgroup-name>.<account-number>.<aws-region>.redshift-serverless.amazonaws.com:5439/<database-name>
Titik akhir Amazon Redshift Serverless ini tidak mendukung penyesuaian DBuser, DBGroup, atau pembuatan otomatis. Secara default, driver secara otomatis membuat pengguna database saat login. Kemudian menetapkan pengguna ke peran database Amazon Redshift berdasarkan tag yang ditentukan di IAM, atau berdasarkan grup yang ditentukan dalam penyedia identitas (IdP) Anda.
Pastikan AWS identitas Anda memiliki kebijakan IAM yang benar untuk redshift-serverless:GetCredentials tindakan tersebut. Berikut ini adalah contoh kebijakan IAM yang memberikan izin yang benar ke AWS identitas untuk terhubung ke Amazon Redshift Serverless. Untuk informasi selengkapnya tentang izin IAM, lihat Menambahkan dan menghapus izin identitas IAM di Panduan Pengguna IAM.
Untuk membuat koneksi menggunakan konektor Amazon Redshift Python dengan otentikasi berbasis IAM, gunakan iam=true kode Anda, seperti yang ditunjukkan dalam sintaks berikut:
import redshift_connector with redshift_connector.connect( iam=True, host='<workgroup-name>.<account-number>.<aws-region>.redshift-serverless.amazonaws.com', database='<database-name>' <IAM credentials> ) as conn: pass
UntukIAM credentials, Anda dapat menggunakan kredenSIAL apa pun, termasuk yang berikut ini:
-
AWS konfigurasi profil.
-
KredenSIAL IAM (ID kunci akses, kunci akses rahasia, dan opsional token sesi).
-
Federasi penyedia identitas.
Untuk membuat koneksi menggunakan driver Amazon Redshift ODBC versi 2.x dengan otentikasi berbasis IAM dan profil, gunakan sintaks berikut:
Driver={Amazon Redshift ODBC Driver (x64)}; IAM=true; Server=<workgroup-name>.<account-number>.<aws-region>.redshift-serverless.amazonaws.com; Database=database-name; Profile=aws-profile-name;
Menghubungkan menggunakan IAM dengan API GetClusterCredentials
catatan
Saat menghubungkan ke Amazon Redshift Serverless, kami sarankan Anda menggunakan API. GetCredentials API ini menawarkan fungsionalitas kontrol akses berbasis peran (RBAC) yang komprehensif serta fitur baru lainnya yang tidak tersedia di. GetClusterCredentials Kami mendukung GetClusterCredentials API untuk menyederhanakan transisi dari cluster yang disediakan ke grup kerja tanpa server, tetapi kami sangat menyarankan untuk bermigrasi ke penggunaan sesegera mungkin untuk GetCredentials kompatibilitas yang optimal.
Anda dapat membuat koneksi ke Amazon Redshift Serverless menggunakan API. GetClusterCredentials Untuk menerapkan metode otentikasi ini, ubah klien atau aplikasi Anda dengan memasukkan parameter berikut:
iam=trueclusterid/cluster_identifier=redshift-serverless-<workgroup-name>region=<aws-region>
Contoh berikut menunjukkan plugin BrowserSaml di ketiga driver. Ini merupakan salah satu dari beberapa pendekatan otentikasi yang tersedia. Contoh-contoh dapat dimodifikasi untuk menggunakan metode otentikasi alternatif atau plugin sesuai dengan kebutuhan spesifik Anda.
Izin kebijakan IAM untuk GetClusterCredentials
Berikut ini adalah contoh kebijakan IAM dengan izin yang diperlukan untuk digunakan GetClusterCredentials dengan Amazon Redshift Serverless:
Untuk membuat koneksi menggunakan driver Amazon Redshift JDBC versi 2.x denganGetClusterCredentials, gunakan sintaks berikut:
jdbc:redshift:iam://redshift-serverless-<workgroup-name>:<aws-region>/<database-name>?plugin_name=com.amazon.redshift.plugin.BrowserSamlCredentialsProvider&login_url=<single sign-on URL from IdP>"
Untuk membuat koneksi menggunakan konektor Amazon Redshift Python denganGetClusterCredentials, gunakan sintaks berikut:
import redshift_connector with redshift_connector.connect( iam=True, cluster_identifier='redshift-serverless-<workgroup-name>', region='<aws-region>', database='<database-name>', credentials_provider='BrowserSamlCredentialsProvider' login_url='<single sign-on URL from IdP>' # port value of 5439 is specified by default ) as conn: pass
Untuk membuat koneksi menggunakan driver Amazon Redshift ODBC versi 2.x denganGetClusterCredentials, gunakan sintaks berikut:
Driver= {Amazon Redshift ODBC Driver (x64)}; IAM=true; isServerless=true; ClusterId=redshift-serverless-<workgroup-name>; region=<aws-region>; plugin_name=BrowserSAML;login_url=<single sign-on URL from IdP>
Berikut ini adalah contoh konfigurasi DSN ODBC di Windows:
Menggunakan SDK Tanpa Server Amazon Redshift
Jika Anda menulis skrip manajemen menggunakan Amazon Redshift SDK, Anda harus menggunakan Amazon Redshift Serverless SDK baru untuk mengelola Amazon Redshift Serverless dan sumber daya terkait. Untuk informasi selengkapnya tentang operasi API yang tersedia, lihat panduan Referensi API Tanpa Server Amazon Redshift.