Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai 1 November 2025. Jika Anda ingin menggunakan Python UDFs, buat UDFs sebelum tanggal tersebut. Python yang ada UDFs akan terus berfungsi seperti biasa. Untuk informasi lebih lanjut, lihat posting blog
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memigrasi klaster yang disediakan ke Amazon Redshift Tanpa Server
Anda dapat memigrasikan kluster yang sudah ada ke Amazon Redshift Tanpa Server, memungkinkan penskalaan sumber daya komputasi sesuai permintaan dan otomatis. Memigrasikan klaster yang disediakan ke Amazon Redshift Serverless memungkinkan Anda mengoptimalkan biaya dengan hanya membayar sumber daya yang Anda gunakan dan secara otomatis menskalakan kapasitas berdasarkan tuntutan 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 penyediaan sumber daya yang berlebihan. Lakukan serangkaian tugas berikut untuk memigrasikan klaster Amazon Redshift yang telah disediakan ke opsi penerapan tanpa server.
Membuat snapshot dari klaster yang disediakan
catatan
Amazon Redshift secara otomatis mengonversi kunci interleaved menjadi kunci majemuk saat Anda memulihkan snapshot klaster yang disediakan ke namespace tanpa server.
Untuk mentransfer data dari cluster yang disediakan ke Amazon Redshift Serverless, buat snapshot klaster yang disediakan, lalu pulihkan snapshot di Amazon Redshift Serverless.
catatan
Sebelum memigrasikan data ke grup kerja tanpa server, pastikan kebutuhan klaster yang disediakan kompatibel dengan jumlah RPU yang Anda pilih di Amazon Redshift Tanpa Server.
Untuk membuat snapshot dari kluster yang telah disediakan
Masuk ke AWS Management Console dan buka konsol Amazon Redshift di. https://console.aws.amazon.com/redshiftv2/
-
Pada menu navigasi, pilih Clusters, Snapshots, dan kemudian pilih Create snapshot.
-
Masukkan properti definisi snapshot, lalu pilih Buat snapshot. Mungkin perlu beberapa waktu agar snapshot tersedia.
Untuk memulihkan snapshot klaster yang disediakan ke namespace tanpa server:
Masuk ke AWS Management Console dan buka konsol Amazon Redshift di. https://console.aws.amazon.com/redshiftv2/
-
Mulai di konsol cluster yang disediakan Amazon Redshift dan navigasikan ke halaman Cluster, Snapshots.
-
Pilih snapshot untuk digunakan.
-
Pilih Pulihkan snapshot, Pulihkan ke namespace tanpa server.
-
Pilih namespace untuk mengembalikan snapshot Anda.
-
Konfirmasikan bahwa Anda ingin memulihkan dari snapshot Anda. Tindakan ini menggantikan semua database di titik akhir tanpa server Anda dengan data dari klaster yang disediakan. Pilih Pulihkan.
Menghubungkan ke Amazon Redshift Tanpa Server menggunakan driver
Untuk terhubung ke Amazon Redshift Tanpa Server dengan klien SQL pilihan Anda, Anda dapat menggunakan driver JDBC yang disediakan Amazon Redshift versi 2.x. Sebaiknya sambungkan ke Amazon Redshift menggunakan versi terbaru dari driver Amazon Redshift JDBC versi 2.x. Nomor port adalah opsional. Jika Anda tidak menyertakannya, 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 API Amazon AWS CLI Redshift dan Amazon.
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 workgroup Anda, lalu menyambung.
Menghubungkan menggunakan otentikasi berbasis kata sandi
Untuk membuat sambungan menggunakan driver Amazon Redshift JDBC versi 2.x dengan autentikasi 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 sambungan menggunakan konektor Amazon Redshift Python dengan autentikasi 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 sambungan menggunakan driver Amazon Redshift ODBC versi 2.x dengan autentikasi 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 API Tanpa GetCredentials
Server Amazon Redshift.
Untuk menggunakan autentikasi IAM, tambahkan iam:
ke URL Amazon Redshift JDBC jdbc:redshift:
berikut, 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 Tanpa Server 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 dalam IAM, atau berdasarkan grup yang ditentukan dalam penyedia identitas Anda (iDP).
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 Tanpa Server. 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 autentikasi berbasis IAM, gunakan iam=true
dalam 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 kredensil apa pun, termasuk yang berikut ini:
-
AWS konfigurasi profil.
-
Kredensi IAM (ID kunci akses, kunci akses rahasia, dan token sesi opsional).
-
Federasi penyedia identitas.
Untuk membuat koneksi menggunakan driver Amazon Redshift ODBC versi 2.x dengan autentikasi 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 Tanpa Server, kami sarankan Anda menggunakan API. GetCredentials
API ini menawarkan fungsionalitas kontrol akses berbasis peran (RBAC) yang komprehensif serta fitur baru lainnya yang tidak tersedia. GetClusterCredentials
Kami mendukung GetClusterCredentials
API untuk menyederhanakan transisi dari klaster yang disediakan ke grup kerja tanpa server, tetapi kami sangat menyarankan untuk melakukan migrasi ke penggunaan GetCredentials
sesegera mungkin untuk kompatibilitas yang optimal.
Anda dapat membuat koneksi ke Amazon Redshift Serverless menggunakan API. GetClusterCredentials
Untuk menerapkan metode otentikasi ini, modifikasi klien atau aplikasi Anda dengan memasukkan parameter berikut:
iam=true
clusterid/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 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 Tanpa Server:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "redshift:CreateClusterUser", "redshift:JoinGroup", "redshift:GetClusterCredentials", "redshift:ExecuteQuery", "redshift:FetchResults", "redshift:DescribeClusters", "redshift:DescribeTable" ], "Resource": [ "arn:aws:redshift:us-east-1:<
account-id
>:cluster:redshift-serverless-<workgroup-name
>", "arn:aws:redshift:us-east-1:<account-id
>:dbgroup:redshift-serverless-<workgroup-name
>", "arn:aws:redshift:us-east-1:<account-id
>:dbname:redshift-serverless-<workgroup-name
>/${redshift:DbName}", "arn:aws:redshift:us-east-1:<account-id
>:dbuser:redshift-serverless-<workgroup-name
>/${redshift:DbUser}" ] } ] }
Untuk membuat sambungan 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 sambungan 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 ODBC DSN di Windows:

Menggunakan Amazon Redshift Serverless SDK
Jika Anda menulis skrip manajemen apa pun menggunakan Amazon Redshift SDK, Anda harus menggunakan Amazon Redshift Serverless SDK baru untuk mengelola Amazon Redshift Tanpa Server dan sumber daya terkait. Untuk informasi selengkapnya tentang operasi API yang tersedia, lihat panduan Referensi API Tanpa Server Amazon Redshift.