Desidero risolvere l'errore "Unknown dataset URI pattern: dataset" (Modello URI set di dati sconosciuto: set di dati) quando uso Sqoop in Amazon EMR per esportare i dati di Amazon Relational Database Service (Amazon RDS) in Amazon Simple Storage Service (Amazon S3) in formato Parquet.
Risoluzione
L'errore Unknown dataset URI pattern: dataset (Modello URI set di dati sconosciuto: set di dati) riguarda Sqoop versione 1.4.7. Per risolvere l'errore, completa i passaggi seguenti per scaricare e installare kite-data-s3-1.1.0.jar:
-
Per connetterti al nodo principale di Amazon EMR, usa SSH.
-
Per scaricare kite-data-s3-1.1.0.jar, usa wget:
[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
Nota: sostituisci example-ip-address con il tuo indirizzo IP.
-
Verifica che il file scaricato abbia le dimensioni corrette (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
Nota: sostituisci example-ip-address con il tuo indirizzo IP.
-
Sposta il file scaricato nella directory della libreria Sqoop /usr/lib/sqoop/lib/:
sudo cp kite-data-s3-1.1.0.jar /usr/lib/sqoop/lib/
-
Concedi l'autorizzazione necessaria per il file scaricato:
sudo chmod 755 /usr/lib/sqoop/lib/kite-data-s3-1.1.0.jar
-
Per importare il file scaricato, usa il connettore s3n.
Esempio:
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
Nota: se usi il connettore s3, riceverai l'errore Unknown dataset URI pattern: dataset (Modello URI set di dati sconosciuto: set di dati). Il valore di --target-dir deve essere nel formato di un percorso con almeno 3 livelli (s3n://example-bucket/example-namespace/example-dataset>)
Per ulteriori informazioni, consulta Dataset, View, and Repository URIs sul sito web di Kite SDK.