2016-04-11 5 views
1

Ich habe ein Verzeichnis in meinem S3-Bucket, das viele .CSV-Dateien enthält, die alle auf die gleiche Weise formatiert sind (Erstes, Letztes, Ort, Datum).AWS Datenpipeline zum Kopieren von CSV von S3 nach RDS MySQL

Ich habe versucht, Datenpipeline zu verwenden, um eine RDS MySQL-Datenbanktabelle mit den Inhalten dieser CSV-Dateien zu füllen. Glücklicherweise stellt Amazon eine Vorlage für diese Aktion bereit.

„Load S3 Daten in RDS MySQL-Tabelle“ http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-template-copys3tords.html

Ich habe alle die entsprechenden Informationen ausgefüllt, dass sie anfordert.

Wenn ich die Pipeline aktiviere, erstellt sie die CopyActivity und die ShellCommandActivity. Die Kopieraktivität kopiert die Daten und die Shell-Befehlsaktivität erstellt die Tabelle, wenn sie denkt, dass sie noch nicht vorhanden ist. Die Shell-Befehlsaktivität stellt eine Verbindung zu meinem RDS her.

Mein Problem ist jedoch, dass die ShellCommandActivity in den Status "FINISHED" wechselt, ohne tatsächlich eine Tabelle zu erstellen, und dann bleibt die CopyActivity bei "WAITING_ON_DEPENDENCIES" hängen. Dieser ganze Vorgang dauert ungefähr 20 Minuten.

Alle meine Rollen haben vollen Zugriff auf alle Dienste.

Wenn jemand Einblick hat, bitte Kommentar. Ich stecke seit fast zwei Wochen in diesem Problem fest.

Antwort

0

Ich würde versuchen mit einer SQLActivity, die alle Daten aus der zu erstellenden Tabelle auswählt, und diese neue SQLActivity wäre eine Abhängigkeit für die CopyActivity.