0

Ich versuche, um 40gb Datei (aufgeteilt auf 520 Teile je rund 90MB) auf S3 in mysql. Ich habe aws Datenpipeline S3 zu MySQL erstellt.aws dataspipeline s3 zu mysql Fehler

Vor dem Laden habe ich diese Datensätze in Hive verarbeitet und dann Ausgabedateien auf S3 gespeichert. Einige Datensätze in der Datei enthalten \ N, um den NULL-Wert darzustellen. Wenn ich versuche, solche Datensätze zu laden, schlägt die Pipeline fehl. Aber dasselbe kann mit SQOOP geladen werden, da es beim Laden in MYSQL NULL-Werte verarbeiten kann.

Hat jemand eine Idee, ob ich solche Datensätze in MySQL von S3 mit Datenpipeline laden kann? Gibt es eine JDBC-Eigenschaft, die ich festlegen kann?

Antwort

0

Ja, dies kann sehr einfach durch Ändern der Verbindungszeichenfolge in die unten stehende Syntax erfolgen. Sie müssen jdbcCompliantTruncation auf false setzen.

jdbcCompliantTruncation=false 

So wird Ihre Verbindungszeichenfolge etwas wie unten aussehen.

jdbc: mysql: // my-rds-Endpunkt: 3306/my_db_name jdbcCompliantTruncation = false

+0

Hallo, Vielen Dank für Ihre Antwort. Meine Spalte ist ein BIGINT-Typ. Würde sie sich nach dem Hinzufügen von jdbcCompliantTruncation = false auswirken? – hlagvankar

+0

Nein, es wird nicht wie Sie nur die Flagge auf falsch setzen. – error2007s