Wie behebe ich den Fehler „Unknown dataset URI pattern: dataset“, wenn ich Sqoop in Amazon EMR verwende, um Amazon RDS-Daten im Parquet-Format in Amazon S3 zu exportieren?

Lesedauer: 2 Minute
0

Ich möchte den Fehler „Unknown dataset URI pattern: dataset“ beheben, wenn ich Sqoop in Amazon EMR verwende, um Amazon Relational Database Service (Amazon RDS)-Daten im Parquet-Format in Amazon Simple Storage Service (Amazon S3) zu exportieren.

Lösung

Der Fehler Unknown dataset URI pattern: dataset betrifft Sqoop Version 1.4.7. Gehe wie folgt vor, um kite-data-s3-1.1.0.jar herunterzuladen und zu installieren und um so diesen Fehler zu beheben:

  1. Verwende SSH, um eine Verbindung zum Amazon EMR-Primärknoten herzustellen.

  2. Verwende wget, um kite-data-s3-1.1.0.jar herunterzuladen:

    [hadoop@example-ip-address]$ wget https://repo1.maven.org/maven2/org/kitesdk/kite-data-s3/1.1.0/kite-data-s3-1.1.0.jar

    Hinweis: Ersetze example-ip-address durch deine IP-Adresse.

  3. Vergewissere dich, dass die heruntergeladene Datei die richtige Größe hat (1,7 MB):

    [hadoop@example-ip-address]$ du -h kite-data-s3-1.1.0.jar
    1.7M     kite-data-s3-1.1.0.jar

    Hinweis: Ersetze example-ip-address durch deine IP-Adresse.

  4. Verschiebe die heruntergeladene Datei in das Sqoop-Bibliotheksverzeichnis /usr/lib/sqoop/lib/:

    sudo cp kite-data-s3-1.1.0.jar /usr/lib/sqoop/lib/
  5. Erteile die erforderliche Berechtigung für die heruntergeladene Datei:

    sudo chmod 755 /usr/lib/sqoop/lib/kite-data-s3-1.1.0.jar
  6. Verwende den s3n-Konnektor, um die heruntergeladene Datei zu importieren.

    Beispiel:

    sqoop import --connect jdbc:mysql://mysql.cdfqbesrukqe.eu-west-1.rds.amazonaws.com:3306/dev --username admin -P --table hist_root --target-dir example-s3n://example-bucket/sqoop_parquet/demo --as-parquetfile -m 2 --split-by identifiers -- --schema onwatch

    Hinweis: Wenn du den s3-Konnektor verwendest, wird der Fehler Unknown dataset URI pattern: dataset angezeigt. Der Wert von --target-dir muss das Format eines Pfades mit mindestens 3 Ebenen haben (s3n://example-bucket/example-namespace/example-dataset>)

Weitere Informationen findest du unter Dataset, view, and repositories URI (Datensatz-, Anzeige- und Repository-URI) auf der Kite SDK-Website.