Frage

Wenn ich versuche, einen CSV in meine Redshift-Datenbank zu importieren, erhalte ich diesen Fehler

generasacodicetagpre.

Mit dem CSV selbst scheint alles in Ordnung zu sein. Die STL-Tabelle sagt mir, dass der Fehler online 70269 des CSV ist, der diese Zeichenfolge enthält

generasacodicetagpre.

Alle Ideen, warum es nicht laden wird?

edit: Es hat eindeutig mit der Zahl '4194303' zu tun. Viele meiner Redshift-Uploads sind fehlgeschlagen, hier ist ein kurzes Beispiel meiner STL_LOAD_ERRORS

generasacodicetagpre.

Alle Einträge in der Tabelle, in denen diese Fehler vom Typ "Text" auftreten, und es gibt ungefähr 30 Säulen. Das CSV selbst enthält viele Tausende von Datensätzen (recht große CSV-Datei).

Problemumgehung (keine Lösung)

Ich habe festgestellt, dass die Nummer 4194303 von der 4-MB-Grenze stammt, die von der TruncatEcolumns-Funktion des RedShift-Kopiers eingestellt ist. Durch das Deaktivieren dieser Funktion bekomme ich eine "String-Länge überschreitet den ddl-Länge" (weshalb ich in erster Linie Truncatecolumns verwende).

Das Problem ist also, dass viele meiner Datensätze über 4 MB sind, und RotShift unterstützt solche Datensätze nicht, wenn eine der Attribute abgeschnitten werden muss.

Mit der Option MaxError 1000-Option des Copy-Befehls kann ich jedoch die 4MB + -Datensätze ignorieren und mit einer Datenbank überlassen werden, die nur die gewünschten Zeilen enthält, die weniger als 4 MB sind.

War es hilfreich?

Lösung

können Sie Ihren Copy-Befehl mit den unten hinzugefügten Optionen versuchen

akzeptisinvchars entkommen

Einige Male, wenn Sie CSV-Dateien von Mac oder Windows erstellen, können sie Sonderzeichen enthalten.

Andere Tipps

Das Problem ist mit dem EOL (Ende des Zeilen-) Zeichens.Ich hatte heute das gleiche Problem und das Problem war, dass mein CSV Mac EOL (wahrscheinlich ein CR) hatte.Ich habe es in UNIX geändert (die einen LF verwendet) und die Kopie durchlief.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top