Amazon Redshift wird UDFs ab dem 1. November 2025 die Erstellung von neuem Python nicht mehr unterstützen. Wenn Sie Python verwenden möchten UDFs, erstellen Sie das UDFs vor diesem Datum liegende. Bestehendes Python UDFs wird weiterhin wie gewohnt funktionieren. Weitere Informationen finden Sie im Blogbeitrag
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Migrieren eines bereitgestellten Clusters zu Amazon Redshift Serverless
Sie können Ihre vorhandenen bereitgestellten Cluster zu Amazon Redshift Serverless migrieren und so eine automatische Skalierung der Rechenressourcen auf Abruf ermöglichen. Durch die Migration eines bereitgestellten Clusters zu Amazon Redshift Serverless können Sie die Kosten optimieren, indem Sie nur für die von Ihnen genutzten Ressourcen zahlen und die Kapazität automatisch auf der Grundlage der Workload-Anforderungen skalieren. Zu den häufigsten Anwendungsfällen für die Migration gehören die Ausführung von Ad-hoc-Abfragen, regelmäßige Datenverarbeitungsaufträge oder die Bearbeitung unvorhersehbarer Workloads ohne übermäßige Bereitstellung von Ressourcen. Führen Sie die folgenden Aufgaben aus, um Ihren bereitgestellten Amazon Redshift Redshift-Cluster zur serverlosen Bereitstellungsoption zu migrieren.
Erstellen eines Snapshots Ihres bereitgestellten Clusters
Anmerkung
Amazon Redshift wandelt verschachtelte Schlüssel automatisch in zusammengesetzte Schlüssel um, wenn Sie einen Snapshot bereitgestellter Cluster in einem Serverless-Namespace wiederherstellen.
Um Daten von Ihrem bereitgestellten Cluster zu Amazon Redshift Serverless zu übertragen, erstellen Sie einen Snapshot Ihres bereitgestellten Clusters und stellen diesen dann in Amazon Redshift Serverless wieder her.
Anmerkung
Bevor Sie Ihre Daten zu einer Serverless-Arbeitsgruppe migrieren, stellen Sie sicher, dass die Anforderungen Ihres bereitgestellten Clusters mit der RPU-Menge kompatibel sind, die Sie in Amazon Redshift Serverless auswählen.
So erstellen Sie einen Snapshot Ihres bereitgestellten Clusters
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon Redshift Redshift-Konsole unter https://console.aws.amazon.com/redshiftv2/
. -
Wählen Sie im Navigationsmenü Clusters (Cluster), Snapshots und wählen Sie dann Create snapshot (Snapshot erstellen) aus.
-
Geben Sie die Eigenschaften der Snapshot-Definition ein und wählen Sie dann Create snapshot (Snapshot erstellen) aus. Es kann einige Zeit dauern, bis der Snapshot verfügbar ist.
So stellen Sie einen Snapshot bereitgestellter Cluster in einem Serverless-Namespace wieder her:
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon Redshift Redshift-Konsole unter https://console.aws.amazon.com/redshiftv2/
. -
Navigieren Sie auf der Konsole für bereitgestellte Amazon Redshift-Cluster zur Seite Clusters (Cluster), Snapshots.
-
Wählen Sie einen Snapshot zum Verwenden aus.
-
Wählen Sie Restore snapshot (Snapshot wiederherstellen), Restore to serverless namespace (In Serverless-Namespace wiederherstellen).
-
Wählen Sie einen Namespace, in dem Sie Ihren Snapshot wiederherstellen möchten.
-
Bestätigen Sie, dass Sie von Ihrem Snapshot aus wiederherstellen möchten. Diese Aktion ersetzt alle Datenbanken auf Ihrem Serverless-Endpunkt durch die Daten aus Ihrem bereitgestellten Cluster. Wählen Sie Restore (Wiederherstellen) aus.
Weitere Informationen zu bereitgestellten Cluster-Snapshots finden Sie unter Amazon-Redshift-Snapshots.
Herstellen einer Verbindung mit Amazon Redshift Serverless über einen Treiber
Um mit Ihrem bevorzugten SQL-Client eine Verbindung zu Amazon Redshift Serverless herzustellen, können Sie den von Amazon Redshift bereitgestellten JDBC-Treiber Version 2.x verwenden. Wir empfehlen, mit der neuesten Version des Amazon Redshift JDBC-Treibers, Version 2.x, eine Verbindung zu Amazon Redshift herzustellen. Der Portnummer ist optional. Wenn Sie keine Angaben machen, verwendet Amazon Redshift Serverless standardmäßig die Portnummer 5439. Sie können zu einem anderen Port aus dem Portbereich 5431–5455 oder 8191–8215 wechseln. Um den Standardport für einen serverlosen Endpunkt zu ändern, verwenden Sie die AWS CLI Amazon Redshift Redshift-API.
Den genauen Endpunkt für den JDBC-, ODBC- oder Python-Treiber finden Sie unter Arbeitsgruppenkonfiguration in Amazon Redshift Serverless. Sie können auch den Amazon Redshift Serverless API-Vorgang GetWorkgroup
oder den AWS CLI Vorgang verwenden, get-workgroups
um Informationen über Ihre Arbeitsgruppe zurückzugeben und dann eine Verbindung herzustellen.
Verbinden mit passwortbasierter Authentifizierung
Verwenden Sie die folgende Syntax, um eine Verbindung mithilfe des Amazon Redshift JDBC-Treibers Version 2.x mit kennwortbasierter Authentifizierung herzustellen:
jdbc:redshift://<
workgroup-name
>.<account-number
>.<aws-region
>.redshift-serverless.amazonaws.com:5439/?username=username
&password=password
Verwenden Sie die folgende Syntax, um eine Verbindung mithilfe des Amazon Redshift Python-Connectors mit kennwortbasierter Authentifizierung herzustellen:
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
Verwenden Sie die folgende Syntax, um eine Verbindung mithilfe des Amazon Redshift ODBC-Treibers Version 2.x mit kennwortbasierter Authentifizierung herzustellen:
Driver={Amazon Redshift ODBC Driver (x64)}; Server=<
workgroup-name
>.<account-number
>.<aws-region
>.redshift-serverless.amazonaws.com; Database=database-name
; User=username
; Password=password
Herstellen einer Verbindung über IAM
Wenn Sie sich lieber mit IAM anmelden möchten, verwenden Sie den Amazon Redshift Serverless GetCredentials
API-Vorgang.
Um die IAM-Authentifizierung iam:
zu verwenden, fügen Sie der Amazon Redshift JDBC-URL Folgendes hinzujdbc:redshift:
, wie im folgenden Beispiel gezeigt.
jdbc:redshift:iam://<
workgroup-name
>.<account-number
>.<aws-region
>.redshift-serverless.amazonaws.com:5439/<database-name
>
Dieser Amazon Redshift Serverless-Endpunkt unterstützt keine Anpassung von DBUser, DBGroup oder Auto-Create. Standardmäßig erstellt der Treiber bei der Anmeldung automatisch Datenbankbenutzer. Anschließend werden die Benutzer Amazon Redshift Redshift-Datenbankrollen zugewiesen, basierend auf den in IAM angegebenen Tags oder auf der Grundlage der in Ihrem Identitätsanbieter (IdP) definierten Gruppen.
Stellen Sie sicher, dass Ihre AWS Identität über die richtige IAM-Richtlinie für die Aktion verfügt. redshift-serverless:GetCredentials
Im Folgenden finden Sie ein Beispiel für eine IAM-Richtlinie, die einer AWS Identität die richtigen Berechtigungen für die Verbindung mit Amazon Redshift Serverless gewährt. Weitere Informationen zu IAM-Berechtigungen finden Sie unter Hinzufügen und Entfernen von IAM-Identitätsberechtigungen im IAM-Benutzerhandbuch.
Um eine Verbindung mithilfe des Amazon Redshift Python-Konnektors mit IAM-basierter Authentifizierung herzustellen, verwenden Sie iam=true
in Ihrem Code, wie in der folgenden Syntax gezeigt:
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
Für IAM credentials
können Sie beliebige Anmeldeinformationen verwenden, einschließlich der folgenden:
-
AWS Profilkonfiguration.
-
IAM-Anmeldeinformationen (eine Zugriffsschlüssel-ID, ein geheimer Zugriffsschlüssel und optional ein Sitzungstoken).
-
Verbund von Identitätsanbietern.
Verwenden Sie die folgende Syntax, um eine Verbindung mithilfe des Amazon Redshift ODBC-Treibers Version 2.x mit IAM-basierter Authentifizierung und einem Profil herzustellen:
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
;
Verbindung mithilfe von IAM mit der API herstellen GetClusterCredentials
Anmerkung
Wenn Sie eine Verbindung zu Amazon Redshift Serverless herstellen, empfehlen wir die Verwendung der GetCredentials
API. Diese API bietet umfassende Funktionen für die rollenbasierte Zugriffskontrolle (RBAC) sowie weitere neue Funktionen, die in nicht verfügbar sind. GetClusterCredentials
Wir unterstützen die GetClusterCredentials
API, um den Übergang von bereitgestellten Clustern zu serverlosen Arbeitsgruppen zu vereinfachen. Wir empfehlen jedoch dringend, so bald wie möglich zur Nutzung GetCredentials
zu wechseln, um eine optimale Kompatibilität zu gewährleisten.
Sie können mithilfe der API eine Verbindung zu Amazon Redshift Serverless herstellen. GetClusterCredentials
Um diese Authentifizierungsmethode zu implementieren, ändern Sie Ihren Client oder Ihre Anwendung, indem Sie die folgenden Parameter einbeziehen:
iam=true
clusterid/cluster_identifier=redshift-serverless-<
workgroup-name
>region=<
aws-region
>
In den folgenden Beispielen wird das BrowserSAML-Plugin für alle drei Treiber veranschaulicht. Dies ist einer von mehreren verfügbaren Authentifizierungsansätzen. Die Beispiele können geändert werden, um je nach Ihren spezifischen Anforderungen alternative Authentifizierungsmethoden oder Plugins zu verwenden.
IAM-Richtlinienberechtigungen für GetClusterCredentials
Im Folgenden finden Sie ein Beispiel für eine IAM-Richtlinie mit den Berechtigungen, die für die Verwendung GetClusterCredentials
mit Amazon Redshift Serverless erforderlich sind:
{ "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}" ] } ] }
Verwenden Sie die folgende Syntax, um eine Verbindung mithilfe des Amazon Redshift JDBC-Treibers Version 2.x mit GetClusterCredentials
herzustellen:
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
>"
Verwenden Sie die folgende Syntax, um eine Verbindung mithilfe des Amazon Redshift Python-Connectors mit GetClusterCredentials
herzustellen:
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
Verwenden Sie die folgende Syntax, um eine Verbindung mithilfe des Amazon Redshift ODBC-Treibers Version 2.x mit GetClusterCredentials
herzustellen:
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
>
Im Folgenden finden Sie ein Beispiel für eine ODBC-DSN-Konfiguration in Windows:

Verwenden des Amazon-Redshift-Serverless-SDK
Wenn Sie Verwaltungsskripte mit dem Amazon-Redshift-SDK geschrieben haben, müssen Sie das neue Amazon-Redshift-Serverless-SDK verwenden, um Amazon Redshift Serverless und zugehörige Ressourcen zu verwalten. Weitere Informationen zu verfügbaren API-Operationen finden Sie im API-Referenzhandbuch zu Amazon Redshift Serverless.