View a markdown version of this page

Schritt 1: Bootstrap der Infrastruktur und AWS Glue jobs - Amazon Keyspaces (für Apache Cassandra)

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.

Schritt 1: Bootstrap der Infrastruktur und AWS Glue jobs

In diesem Schritt erstellen und konfigurieren Sie mithilfe der keyspaces-bulk-cli CLI alle AWS Ressourcen, die für den automatisierten Datenexport einer Amazon Keyspaces-Tabelle in einen Amazon S3-Bucket erforderlich sind. AWS Glue Der bootstrap Befehl führt alle Einrichtungsaufgaben in einem einzigen Schritt aus.

Der bootstrap Befehl automatisiert die folgenden Aufgaben.

  1. Erstellt einen Amazon S3-Bucket und eine IAM-Servicerolle mithilfe von. CloudFormation

  2. Lädt den Apache Spark Cassandra Connector, das SigV4-Authentifizierungs-Plugin und die Apache Spark-Erweiterungen herunter.

  3. Lädt den Keyspaces Retry Policy Helper herunter und erstellt ihn mithilfe von Maven.

  4. Lädt alle JAR-Dateien und die keyspaces-application.conf Konfigurationsdatei in den Amazon S3-Bucket hoch.

  5. Stellt drei AWS Glue Jobs bereit: Exportieren (Exportieren einer Tabelle nach Amazon S3), Importieren (Daten aus Amazon S3 in eine Tabelle importieren) und Zählen (Zählen von Zeilen in einer Tabelle).

  6. Speichert die Stack-Konfiguration in einer lokalen .keyspaces-bulk-cli.json Datei zur Verwendung durch nachfolgende Befehle.

Um die Infrastruktur zu booten und AWS Glue jobs
  1. Klonen Sie die Dateien aus dem https://github.com/aws-samples/amazon-keyspaces-examples/tree/main/scala/datastax-v4/aws-glue aws-glue-Repository GitHub auf Ihren lokalen Computer.

    $ git clone https://github.com/aws-samples/amazon-keyspaces-examples.git $ cd amazon-keyspaces-examples/scala/datastax-v4/aws-glue
  2. Führen Sie den Befehl bootstrap aus. Das folgende Beispiel verwendet den Standard-Stacknamen aksglue und gibt den Schlüsselraum und die Tabelle als Standardwerte für die bereitgestellten Jobs an. Sie können diese Werte überschreiben, wenn Sie einzelne Befehle wie exportimport, oder ausführen. count

    $ ./keyspaces-bulk-cli bootstrap --stack aksglue --keyspace catalog --table book_awards

    In der folgenden Tabelle werden die optionalen Parameter beschrieben, die Sie zur Anpassung des Bootstraps übergeben können.

    Option Standard Description
    --stack aksglue CloudFormation Präfix für den Stacknamen
    --bucket Auto-generated aus Stapel und Konto Amazon S3-Bucket für Artefakte
    --role-name Auto-generated aus dem Stapel Name der IAM-Dienstrolle
    --keyspace mykeyspace Standard-Schlüsselraum für bereitgestellte Jobs
    --table mytable Standardtabelle für bereitgestellte Jobs
    --s3-uri s3://{bucket}/export Standardmäßiger Amazon S3-Pfad für exportierte Daten
    --format parquet Standard-Datenformat
    --region Aus der AWS Konfiguration AWS-Region
    --profile Aus der AWS Konfiguration AWS benanntes Profil

    Um zu bestätigen, dass der von Bootstrap erstellte Amazon S3-Bucket existiert, können Sie den folgenden AWS CLI Befehl verwenden. Ersetzen Sie es YOURACCOUNTID durch Ihre AWS Konto-ID.

    $ aws s3 ls s3://amazon-keyspaces-bulk-cli-aksglue-YOURACCOUNTID

    Die Ausgabe des Befehls sieht ähnlich wie folgt aus:

    PRE conf/ PRE jars/ PRE scripts/

    Um zu bestätigen, dass der AWS Glue Exportauftrag bereitgestellt wurde, können Sie den folgenden Befehl verwenden.

    $ aws glue list-jobs

    Die Ausgabe listet die bereitgestellten Jobs auf:

    { "JobNames": [ "AmazonKeyspacesExportToS3-aksglue", "AmazonKeyspacesImportFromS3-aksglue", "AmazonKeyspacesCount-aksglue" ] }

Wenn der CloudFormation Stack-Prozess fehlschlägt, können Sie die detaillierten Fehlerinformationen zum ausgefallenen Stack in der CloudFormation Konsole überprüfen. Um es erneut zu versuchen, löschen Sie den fehlgeschlagenen Stack mitaws cloudformation delete-stack --stack-name aksglue, beheben Sie das zugrunde liegende Problem und führen Sie den Bootstrap-Befehl erneut aus. Der Bootstrap-Befehl ist idempotent und überspringt Ressourcen, die bereits vorhanden sind.

Nachdem der Bootstrap abgeschlossen ist und alle Ressourcen erstellt wurden, fahren Sie mit fort. Schritt 2: Führen Sie den Exportauftrag aus