Ich versuche gerade, ein SSIS-Paket zu erstellen, das eine Flat-Datei in eine SQL-Datenbanktabelle importiert.Importieren von Flatfiles in SSIS mit mehreren Formatdateien
Es gibt etwa 30 verschiedene flache Dateien mit jeweils eigenen Format-Datei, die ich eine Tabelle erstellen muss, die alle relevanten Daten enthält. Die erste Zeile der flachen Dateien enthält keine Spaltenüberschriften. I.E. eine Datei könnte PostalAddress1 und eine andere PostalAddressLine1 enthalten, und das wären 2 Spalten in der Datenbank, und sie wären nullfähig. Einige flache Dateien enthalten möglicherweise mehr Daten. In diesem Fall haben solche mit weniger einen Nullwert.
Da ich mit SSIS ziemlich unerfahren bin, dachte ich, ich würde ein Skript verwenden, um die Flat-Datei zu analysieren, um die Zeilen- und Spaltenbegrenzer sowie alle Spaltennamen zu erhalten. Ich würde dann die flache Datei Quelle (Variable) setzen und es so einstellen, dass nur eine Spalte und jeder Datensatz eine Zeile in der Textdatei ist, danach benutze eine Script Transformation, um jede Zeile zu analysieren und auf die relevante Spalte zu setzen. I.E. 5-Wert ist First ich es Row.FirstName = Value[4];
gesetzt würde Nachdem die gesamte Datei ein SQL-Task ausführen kann verarbeitet wird, dass dann alle Daten von der allgemeinen Staging-Tabelle in einer anderen Tabelle schieben kann, die nur sagen würden nur Postal Feld anstelle von sagen wir 3, um für jede Formatdatei, die geliefert wird, zu passen.
Einige dieser Dateien können bis zu 2,5 GB groß sein.
Meine Fragen sind:
Wäre dies die richtige Art und Weise, dies zu tun?
Gibt es einen schnelleren/besseren/einfacheren Weg?
Ich habe in BiML, [die BIDS-Helfer-Plugin] untersucht. Ich bin mir jedoch nicht sicher, wie ich Pakete basierend auf Metadaten dynamisch erstellen würde. Soweit ich weiß, entfernt es nur die Notwendigkeit, Objekte auf das Paket zu ziehen und abzulegen, und stattdessen codieren Sie einfach das gesamte Paket mit XML. Danach baue ich es. Beachten Sie auch, dass das SSIS-System, das ich sortiere, ein Paket sein muss, da dieses Paket eine Tabelle für flache Dateien abfragt, die importiert werden müssen, und basierend auf einer ID der flachen Datei erhalten wir das Format Datei dafür. Und fügen Sie es in eine Tabelle ein. – xFrenzy47x
Haben Sie sich BiMLScript angesehen? http://bimlscript.com/walkthrough/Details/3105 –