AUFTRAG KOPIEREN - Amazon Redshift

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.

AUFTRAG KOPIEREN

Hinweise zur Verwendung dieses Befehls finden Sie unterErstellen Sie eine S3-Event-Integration, um Dateien automatisch aus Amazon S3 S3-Buckets zu kopieren.

Verwaltet COPY-Befehle, die Daten in eine Tabelle laden. Der Befehl COPY JOB ist eine Erweiterung des COPY-Befehls, der das Laden von Daten aus Amazon-S3-Buckets automatisiert. Wenn Sie einen COPY JOB erstellen, erkennt es Amazon Redshift, wenn neue Amazon-S3-Dateien in einem bestimmten Pfad erstellt werden, und lädt diese dann automatisch, ohne dass Sie eine Maßnahme ergreifen müssen. Beim Laden der Daten werden dieselben Parameter wie im ursprünglichen COPY-Befehl verwendet. Amazon Redshift verfolgt die geladenen Dateien (basierend auf dem Dateinamen), um sicherzustellen, dass sie nur einmal geladen wurden.

Anmerkung

Informationen zum COPY-Befehl, seiner Syntax, seinen Parametern und Berechtigungen, finden Sie unter COPY.

Erforderliche Berechtigung

Um den Befehl COPY JOB verwenden zu können, benötigen Sie zusätzlich zu allen für die Verwendung von COPY erforderlichen Berechtigungen eine der folgenden Berechtigungen:

  • Superuser

  • Alle der folgenden Optionen:

    • Die entsprechende CREATE-, ALTER- oder DROP-Bereichsberechtigung für COPY JOBS in der Datenbank, in die Sie KOPIEREN möchten.

    • USAGE-Berechtigung für das Schema, in das Sie KOPIEREN möchten, oder USAGE-Berechtigung für Schemas in der Datenbank, in die Sie KOPIEREN möchten.

    • INSERT-Berechtigung für die Tabelle, in die Sie KOPIEREN möchten, oder INSERT-Berechtigung für Tabellen in dem Schema oder der Datenbank, in die Sie KOPIEREN möchten.

Die mit dem COPY-Befehl angegebene IAM-Rolle muss über die Berechtigung zum Zugriff auf die zu ladenden Daten verfügen. Weitere Informationen finden Sie unter IAM-Berechtigungen für COPY, UNLOAD und CREATE LIBRARY.

Syntax

Erstellen eines Kopierauftrags. Die Parameter des COPY-Befehls werden zusammen mit dem Kopierauftrag gespeichert.

Sie können COPY JOB CREATE nicht im Rahmen eines Transaktionsblocks ausführen.

COPY copy-command JOB CREATE job-name [AUTO ON | OFF]

Ändern der Konfiguration eines Kopierauftrags.

COPY JOB ALTER job-name [AUTO ON | OFF]

Ausführen eines Kopierauftrags. Es werden die gespeicherten Parameter des COPY-Befehls verwendet.

COPY JOB RUN job-name

Auflisten aller Kopieraufträge.

COPY JOB LIST

Anzeigen der Details zu dem Kopierauftrag.

COPY JOB SHOW job-name

Löschen eines Kopierauftrags.

Sie können COPY JOB DROP nicht im Rahmen eines Transaktionsblocks ausführen.

COPY JOB DROP job-name

Parameter

copy-command

Ein COPY-Befehl, der Daten aus Amazon S3 in Amazon Redshift lädt. Die Klausel enthält COPY-Parameter, die den Amazon-S3-Bucket, die Zieltabelle, die IAM-Rolle und andere Parameter definieren, die beim Laden von Daten verwendet werden. Es werden alle Parameter eines COPY-Befehls zum Laden von Amazon-S3-Daten unterstützt, mit folgenden Ausnahmen:

  • Der COPY JOB nimmt keine bereits vorhandenen Dateien in dem Ordner auf, auf den der COPY-Befehl verweist. Nur Dateien, die nach dem Erstellungszeitstempel von COPY JOB erstellt wurden, werden aufgenommen.

  • Sie können einen COPY-Befehl nicht mit den Optionen MAXERROR oder IGNOREALLERRORS angeben.

  • Sie können keine Manifestdatei angeben. COPY JOB erfordert einen festgelegten Amazon-S3-Speicherort, um diesen auf neu erstellte Dateien überwachen zu können.

  • Sie können einen COPY-Befehl nicht mit Autorisierungstypen wie Zugriffsschlüsseln und geheimen Schlüsseln angeben. Es werden nur COPY-Befehle unterstützt, die den Parameter IAM_ROLE für die Autorisierung verwenden. Weitere Informationen finden Sie unter Autorisierungsparameter.

  • Die dem Cluster zugeordnete standardmäßige IAM-Rolle wird von COPY JOB nicht unterstützt. Sie müssen die IAM_ROLE im COPY-Befehl angeben.

Weitere Informationen finden Sie unter COPY aus Amazon S3.

job-name

Der Name des Auftrags, der verwendet wird, um auf den COPY-Auftrag zu verweisen. Der Jobname darf keinen Bindestrich (‐) enthalten.

[AUTO ON / OFF]

Klausel, die angibt, ob Amazon-S3-Daten automatisch in Amazon-Redshift-Tabellen geladen werden.

  • Bei Angabe von ON überwacht Amazon Redshift den Amazon-S3-Quellpfad auf neu erstellte Dateien. Falls welche gefunden werden, wird ein COPY-Befehl mit den COPY-Parametern aus der Auftragsdefinition ausgeführt. Dies ist die Standardeinstellung.

  • Bei Angabe von OFF führt Amazon Redshift den COPY JOB nicht automatisch aus.

Nutzungshinweise

Die Optionen des COPY-Befehls werden erst zur Laufzeit validiert. Eine ungültige IAM_ROLE oder eine Amazon-S3-Datenquelle führt beispielsweise zu Laufzeitfehlern, wenn COPY JOB gestartet wird.

Wenn der Cluster angehalten ist, werden COPY JOBS nicht ausgeführt.

Informationen zur Abfrage von geladenen COPY-Befehlsdateien sowie zu Ladefehlern finden Sie unter STL_LOAD_COMMITS, STL_LOAD_ERRORS, STL_LOADERROR_DETAIL. Weitere Informationen finden Sie unter Überprüfung, ob die Daten korrekt geladen wurden.

Beispiele

Im folgenden Beispiel wird demonstriert, wie Sie einen COPY JOB erstellen, um Daten aus einem Amazon-S3-Bucket zu laden.

COPY public.target_table FROM 's3://amzn-s3-demo-bucket/staging-folder' IAM_ROLE 'arn:aws:iam::123456789012:role/MyLoadRoleName' JOB CREATE my_copy_job_name AUTO ON;