Extrakt, verwandeln Sie sich, Last

Extrakt, verwandeln Sie sich und laden Sie (ETL) ist ein Prozess im Datenbankgebrauch und besonders in der Datenlagerung, die einschließt:

  • Das Extrahieren von Daten von der Außenseite Quellen
  • Das Umwandeln davon, um betriebliche Bedürfnisse zu passen (der Qualitätsniveaus einschließen kann)
  • Das Laden davon ins Endziel (Datenbank oder Datenlager)

Extrakt

Der erste Teil eines ETL-Prozesses schließt das Extrahieren der Daten von den Quellsystemen ein. In vielen Fällen ist das der schwierigste Aspekt von ETL, weil das Extrahieren von Daten richtig den Weg dafür bereiten wird, wie nachfolgende Prozesse gehen werden. Die meisten Datenlagerungsprojekte konsolidieren Daten von verschiedenen Quellsystemen. Jedes getrennte System kann auch eine verschiedene Datenorganisation/Format verwenden. Allgemeine Datenquellformate sind Verwandtschaftsdatenbanken und flache Dateien, aber können Nichtverwandtschaftsdatenbankstrukturen wie Information Management System (IMS) oder andere Datenstrukturen wie Virtual Storage Access Method (VSAM) oder Indexed Sequential Access Method (ISAM) einschließen, oder sogar von der Außenseite Quellen solcher als durch das Web spidering oder das Kratzen des Schirms herbeiholend. Die Einteilung der herausgezogenen Datenquelle und Last, die zur Bestimmungsort-Datenbank während der Übertragung ist, ist eine andere Weise, ETL durchzuführen, wenn keine Zwischendatenlagerung erforderlich ist. Im Allgemeinen ist die Absicht der Förderungsphase, die Daten in ein einzelnes Format umzuwandeln, das für die Transformationsverarbeitung passend ist.

Ein innerer Teil der Förderung schließt die Syntaxanalyse von herausgezogenen Daten ein, auf eine Kontrolle hinauslaufend, wenn die Daten ein erwartetes Muster oder Struktur entsprechen. Wenn nicht, die Daten können völlig oder teilweise zurückgewiesen werden.

Sich verwandeln

Die umgestalten Bühne wendet eine Reihe von Regeln oder Funktionen zu den herausgezogenen Daten von der Quelle an, um die Daten abzuleiten, um ins Endziel zu laden. Einige Datenquellen werden sehr wenig oder sogar keine Manipulation von Daten verlangen. In anderen Fällen, ein oder mehr von den folgenden Transformationstypen kann erforderlich sein, den technischen und Geschäftsbedarf der Zieldatenbank zu decken:

  • Das Auswählen nur bestimmter Säulen um (oder das Auswählen ungültiger Säulen zu laden, um nicht zu laden). Zum Beispiel, wenn die Quelldaten drei Säulen (auch genannt Attribute), zum Beispiel roll_no, Alter und Gehalt haben, dann kann die Förderung nur roll_no und Gehalt nehmen. Ähnlich kann der Förderungsmechanismus alle jene Aufzeichnungen ignorieren, wo Gehalt (Gehalt = ungültig) nicht da ist.
  • Das Übersetzen von codierten Werten (z.B, wenn das Quellsystem 1 für den Mann und 2 für die Frau versorgt, aber das Lager versorgt M für den Mann und F für die Frau)
  • Verschlüsselung von Werten der freien Form (z.B, "Mann" zu "1" kartografisch darstellend)
,
  • Einen neuen berechneten Wert (z.B, sale_amount = qty * unit_price) ableitend
  • Das Sortieren
  • Sich Daten von vielfachen Quellen (z.B, lookup, Verflechtung) und deduplicating die Daten anschließend
  • Ansammlung (zum Beispiel, rollup — Zusammenstellung vielfacher Reihen von Daten — Gesamtverkäufe für jeden Laden, und für jedes Gebiet, usw.)
  • Das Erzeugen des Stellvertreter-Schlüssels schätzt
  • Das Umstellen oder das Drehen (vielfache Säulen in vielfache Reihen oder umgekehrt verwandelnd)
, Wenn sie
  • eine Säule in vielfache Säulen spaltet (z.B, eine Komma-getrennte Liste stellend, hat als eine Schnur in einer Säule angegeben weil, schätzt Person in verschiedenen Säulen)
  • Disaggregation von sich wiederholenden Säulen in einen getrennten Detail-Tisch (z.B, eine Reihe von Adressen in einer Aufzeichnung in einzelne Adressen in einer Reihe von Aufzeichnungen in einem verbundenen Adressbuch bewegend)
,
  • Lookup und machen die relevanten Daten von Tischen oder Verweisungsdateien gültig, um Dimensionen langsam zu ändern.
  • Die Verwendung jeder Form der einfachen oder komplizierten Datengültigkeitserklärung. Wenn Gültigkeitserklärung scheitert, kann sie auf einen vollen, teilweises oder keine Verwerfung der Daten, und so niemandes hinauslaufen, einige oder alle Daten werden dem nächsten Schritt, abhängig vom Regel-Design und Ausnahme-Berühren übergeben. Viele der obengenannten Transformationen können auf Ausnahmen zum Beispiel hinauslaufen, wenn eine Codeübersetzung einen unbekannten Code in den herausgezogenen Daten grammatisch analysiert.

Last

Die Lastphase lädt die Daten ins Endziel, gewöhnlich das Datenlager (DW). Abhängig von den Voraussetzungen der Organisation ändert sich dieser Prozess weit. Einige Datenlager können vorhandene Information mit der kumulativen Information überschreiben, oft das Aktualisieren von Extrakt-Daten wird auf der täglichen, wöchentlichen oder monatlichen Basis getan. Anderer DW (oder sogar andere Teile desselben DW) können neue Daten in einer Historicized-Form zum Beispiel stündlich hinzufügen. Um das zu verstehen, denken Sie einen DW, der erforderlich ist, Verkaufsaufzeichnungen des letzten Jahres aufrechtzuerhalten. Dann wird der DW irgendwelche Daten überschreiben, der älter ist als ein Jahr mit neueren Daten. Jedoch wird der Zugang von Daten für irgendwelches Jahr-Fenster auf eine historicized Weise gemacht. Das Timing und Spielraum, um zu ersetzen oder anzuhängen, sind strategischer auserlesener Designabhängiger auf der Zeit verfügbar und die Geschäftsbedürfnisse. Kompliziertere Systeme können eine Geschichte aufrechterhalten und Spur aller Änderungen zu den im DW geladenen Daten revidieren.

Da die Lastphase mit einer Datenbank aufeinander wirkt, gelten die Einschränkungen, die im Datenbankdiagramm — sowie in Abzügen definiert sind, die auf die Datenlast aktiviert sind — (zum Beispiel, Einzigartigkeit, Verweisungsintegrität, obligatorische Felder), die auch zur gesamten Datenqualitätsleistung des ETL-Prozesses beitragen.

  • Zum Beispiel könnte eine Finanzeinrichtung Information über einen Kunden in mehreren Abteilungen haben, und jede Abteilung könnte die Information dieses Kunden auf eine verschiedene Weise verzeichnen lassen. Die Mitgliedschaft-Abteilung könnte den Kunden namentlich verzeichnen, wohingegen die Buchhaltungsabteilung den Kunden durch die Zahl verzeichnen könnte. ETL kann all das Daten stopfen und es in eine gleichförmige Präsentation, solcher bezüglich der Speicherung in einer Datenbank oder Datenlager konsolidieren.
  • Eine andere Weise, wie Gesellschaften ETL verwenden, soll Information zu einer anderen Anwendung dauerhaft bewegen. Zum Beispiel könnte die neue Anwendung einen anderen Datenbankverkäufer und am wahrscheinlichsten ein sehr verschiedenes Datenbankdiagramm verwenden. ETL kann verwendet werden, um die Daten in ein Format umzugestalten, das für die neue Anwendung auf den Gebrauch passend ist.
  • Ein Beispiel davon würde ein Aufwand- und Kostenwiederherstellungssystem (ECRS) solcher, wie verwendet, durch Buchhaltungen, Beratungen und Rechtsanwälte sein. Die Daten enden gewöhnlich in der Zeit und dem Gebührenabrechnungssystem, obwohl einige Geschäfte auch die rohen Daten für Mitarbeiterproduktivitätsberichte bei Menschlichen Arbeitskräften (Personalabteilung) oder Ausrüstungsgebrauch-Berichte beim Möglichkeitsmanagement verwerten können.

Wahrer ETL Zyklus

Der typische wahre ETL Zyklus besteht aus den folgenden Ausführungsschritten:

  1. Zyklus-Einleitung
  2. Bauen Sie Bezugsdaten
  3. Extrakt (von Quellen)
  4. Machen Sie gültig
  5. Verwandeln Sie sich (sauber, wenden Sie Geschäftsregeln an, überprüfen Sie für die Datenintegrität, schaffen Sie Anhäufungen oder disaggregates)
  6. Bühne (laden ins Inszenieren von Tischen, wenn verwendet)
  7. Bilanzberichte (zum Beispiel, auf dem Gehorsam von Geschäftsregeln. Außerdem im Falle des Misserfolgs, hilft, zu diagnostizieren zu/reparieren)
,
  1. Veröffentlichen Sie (um Tische ins Visier zu nehmen)
,
  1. Archiv
  2. Räumen Sie auf

Herausforderungen

ETL Prozesse können mit beträchtlicher Kompliziertheit verbunden sein, und bedeutende betriebliche Probleme können mit unpassend bestimmten ETL Systemen vorkommen.

Die Reihe der Datenwert- oder Datenqualität in einem betrieblichen System kann zu weit gehen die Erwartungen von Entwerfern an den Zeitgültigkeitserklärungs- und Transformationsregeln werden angegeben. Daten, die einer Quelle während der Datenanalyse Kopierfräs-sind, können die Datenbedingungen identifizieren, die dadurch werden geführt werden müssen, gestalten Regel-Spezifizierungen um. Das wird zu einer Änderung von Gültigkeitserklärungsregeln ausführlich und implizit durchgeführt im ETL-Prozess führen.

Datenlager werden normalerweise von einer Vielfalt von Datenquellen mit verschiedenen Formaten und Zwecken gesammelt. Als solcher ist ETL ein Schlüsselprozess, um alle Daten in einer normalen, homogenen Umgebung zusammenzubringen.

Designanalytiker sollten die Skalierbarkeit eines ETL Systems über die Lebenszeit seines Gebrauchs einsetzen. Das schließt das Verstehen der Volumina von Daten ein, die innerhalb von Lieferbereitschaftsgrad-Abmachungen werden bearbeitet werden müssen. Die Zeit, die für den Extrakt von Quellsystemen verfügbar ist, kann sich ändern, der bedeuten kann, dass dieselbe Datenmenge in kürzerer Zeit kann bearbeitet werden müssen. Einige ETL Systeme müssen klettern, um terabytes von Daten zu bearbeiten, um Datenlager mit Zehnen von terabytes von Daten zu aktualisieren. Die Erhöhung von Volumina von Daten kann Designs verlangen, die von der täglichen Gruppe bis vielfach-tägige Mikrogruppe zur Integration mit Nachrichtenwarteschlangen oder Echtzeitänderungsdaten-Festnahme für die dauernde Transformation klettern und aktualisieren können

Leistung

ETL Verkäufer bewerten ihre Rekordsysteme an vielfachem TB (terabytes) pro Stunde (oder ~1 GB pro Sekunde) das Verwenden starker Server mit vielfachen Zentraleinheiten, vielfachen Festplatten, vielfachen Gigabit-Netzverbindungen und viel Gedächtnis. Die schnellste ETL-Aufzeichnung wird zurzeit von Syncsort, Vertica und HP an 5.4TB in weniger als einer Stunde gehalten, die mehr als zweimal von der früheren Aufzeichnung so schnell ist, die von Microsoft und Unisys gehalten ist.

Im echten Leben kommt der langsamste Teil eines ETL-Prozesses gewöhnlich in der Datenbanklastphase vor. Datenbanken können langsam leisten, weil sie auf die Parallelität, Integritätswartung und Indizes aufpassen müssen. So, für die bessere Leistung, kann es Sinn haben zu verwenden:

  • Direkte Pfad-Extrakt-Methode oder Hauptteil werden ausgeladen, wann auch immer möglich ist (anstatt die Datenbank zu fragen), um die Last auf dem Quellsystem zu reduzieren, während man hohen Geschwindigkeitsextrakt bekommt
  • der grösste Teil der Transformationsverarbeitung außerhalb der Datenbank
  • stapeln Sie Lastoperationen wann immer möglich auf.

Und doch, sogar mit Hauptteil-Operationen ist Datenbankzugang gewöhnlich der Engpass im ETL-Prozess. Eine übliche Methodik hat gepflegt zuzunehmen Leistung sind:

  • Teilungstische (und Indizes). Versuchen Sie, Teilungen ähnlich in der Größe zu halten (Bewachung für Werte, die das Verteilen verdrehen können).
  • Tun Sie die ganze Gültigkeitserklärung in der ETL Schicht vor der Last. Machen Sie Integrität unbrauchbar, die (...) in den Zieldatenbanktischen während der Last überprüft.
  • Machen Sie Abzüge (...) in den Zieldatenbanktischen während der Last unbrauchbar. Täuschen Sie ihre Wirkung als ein getrennter Schritt vor.
  • Erzeugen Sie Personalausweise in der ETL Schicht (nicht in der Datenbank).
  • Lassen Sie die Indizes (auf einem Tisch oder Teilung) vor der Last fallen - und erfrischen Sie sie nach der Last (SQL:......).
  • Verwenden Sie parallele Hauptteil-Last, wenn möglich — gut arbeitet, wenn der Tisch verteilt wird oder es keine Indizes gibt. Bemerken Sie: Versuch, parallele Lasten in denselben Tisch (Teilung) zu tun, verursacht gewöhnlich Schlösser — wenn nicht auf den Datenreihen dann auf Indizes.
  • Wenn eine Voraussetzung besteht, um Einfügungen, Aktualisierungen, oder Auswischen zu tun, herauszufinden, welche Reihen in der Weg in der ETL Schicht bearbeitet werden sollten, und dann diese drei Operationen in der Datenbank getrennt bearbeiten. Sie können häufig Hauptteil-Last für Einsätze tun, aber aktualisieren und löschen allgemein gehen eine API durch (SQL verwendend).

Ob man bestimmte Operationen in der Datenbank tut oder draußen einen Umtausch einschließen kann. Zum Beispiel kann das Entfernen des Doppelverwendens in der Datenbank langsam sein; so hat es Sinn, es draußen zu tun. Auf der anderen Seite, wenn das Verwenden bedeutsam (x100) wird die Anzahl gegen herauszuziehende Reihen reduzieren, dann hat es Sinn, Verdoppelungen so bald wie möglich in der Datenbank vor der Entleerung von Daten zu entfernen.

Eine allgemeine Quelle von Problemen in ETL ist eine große Zahl von Abhängigkeiten unter ETL Jobs. Zum Beispiel kann Job "B" nicht anfangen, während Job "A" nicht beendet wird. Sie können gewöhnlich bessere Leistung erreichen, indem Sie sich alle Prozesse auf einem Graphen vergegenwärtigen und versuchen, den Graphen zu reduzieren, der maximalen Gebrauch des Parallelismus macht, und "Ketten" der Konsekutivverarbeitung so kurz macht wie möglich. Wieder kann das Verteilen von großen Tischen und ihrer Indizes wirklich helfen.

Ein anderes allgemeines Problem kommt vor, wenn die Daten zwischen mehreren Datenbanken ausgebreitet werden, und Verarbeitung in jenen Datenbanken folgend getan wird. Manchmal kann Datenbankerwiderung als eine Methode beteiligt werden, Daten zwischen Datenbanken zu kopieren - und das kann den ganzen Prozess bedeutsam verlangsamen. Die allgemeine Lösung ist, den in einer Prozession gehenden Graphen auf nur drei Schichten zu reduzieren:

  • Quellen
  • ETL Hauptschicht
  • Ziele

Das erlaubt in einer Prozession zu gehen, um maximalen Vorteil der parallelen Verarbeitung zu nehmen. Zum Beispiel, wenn Sie Daten in zwei Datenbanken laden müssen, können Sie die Lasten in der Parallele führen (anstatt in den 1. zu laden - und dann in den 2. zu wiederholen).

Natürlich muss manchmal Verarbeitung folgend stattfinden. Zum Beispiel müssen Sie gewöhnlich dimensional (Verweisung) Daten werden, bevor Sie bekommen und die Reihen für Haupt-"Tatsache"-Tische gültig machen können.

Parallele Verarbeitung

Eine Entwicklung in der ETL Software ist die Durchführung der parallelen Verarbeitung. Das hat mehreren Methoden ermöglicht, gesamte Leistung von ETL-Prozessen wenn zu verbessern, sich mit großen Volumina von Daten befassend.

ETL Anwendungen führen drei Haupttypen des Parallelismus durch:

  • Daten: Durch das Aufspalten einer einzelnen folgenden Datei in kleinere Datendateien, um parallelen Zugang zur Verfügung zu stellen.
  • Rohrleitung: Das Erlauben des gleichzeitigen Laufens von mehreren Bestandteilen auf demselben Datenstrom. Zum Beispiel: das Aufblicken eines Werts auf Rekord-1 zur gleichen Zeit als das Hinzufügen von zwei Feldern auf Rekord-2.
  • Bestandteil: Das gleichzeitige Laufen von vielfachen Prozessen auf verschiedenen Datenströmen in demselben Job, zum Beispiel eine Eingangsdatei sortierend, während man Duplikate auf einer anderen Datei entfernt.

Alle drei Typen des Parallelismus funktionieren gewöhnlich verbunden in einem einzelnen Job.

Eine zusätzliche Schwierigkeit kommt mit dem Sicherstellen, dass die Daten, die laden werden, relativ entsprechen. Weil vielfache Quelldatenbanken verschiedene Aktualisierungszyklen haben können (einige können alle wenigen Minuten aktualisiert werden, während andere Tage oder Wochen nehmen können), kann ein ETL System erforderlich sein, bestimmte Daten zurückzuhalten, bis alle Quellen synchronisiert werden. Ebenfalls, wo ein Lager mit dem Inhalt in einem Quellsystem oder mit dem Hauptbuch kann beigelegt werden müssen, wird das Gründen der Synchronisation und Versöhnungspunkte notwendig.

Rerunnability, Werthaltigkeit

Datenlagerungsverfahren unterteilen gewöhnlich einen großen ETL-Prozess in kleinere Stücke, die folgend oder in der Parallele laufen. Um Datenflüsse nachzugehen, hat es Sinn, jede Datenreihe mit "row_id" und Anhängsel jedes Stück des Prozesses mit "run_id" zu markieren. Im Falle eines Misserfolgs, diese Personalausweise habend, wird helfen, das erfolglose Stück zu wiederholen und zu wiederholen.

Beste Praxis verlangt auch nach "Kontrollpunkten", die Staaten sind, wenn bestimmte Phasen des Prozesses vollendet werden. Einmal an einem Kontrollpunkt ist es eine gute Idee, alles der Platte zu schreiben, einige vorläufige Dateien zu räumen, den Staat und so weiter zu loggen.

Virtueller ETL

Datenvirtualisierung hatte begonnen, ETL-Verarbeitung vorzubringen. Die Anwendung der Datenvirtualisierung zu ETL hat erlaubt, die allgemeinsten ETL Aufgaben des Datenflusses und der Anwendungsintegration für vielfache verstreute Datenquellen zu lösen. So genannter Virtueller ETL funktioniert mit der abstrahierten Darstellung der Gegenstände, oder Entitäten haben die Vielfalt von unstrukturierten und halbstrukturierten Verwandtschaftsdatenquellen gesammelt. ETL Werkzeuge können das objektorientierte Modellieren und die Arbeit mit den in einer zentral gelegenen hub-spoke Architektur beharrlich versorgten Darstellungen von Entitäten stärken. Solch eine Sammlung, die Darstellungen der Entitäten oder Gegenstände enthält, hat die Datenquellen für die ETL-Verarbeitung gesammelt wird ein metadata Behältnis genannt, und es kann im Gedächtnis wohnen oder beharrlich gemacht werden. Durch das Verwenden eines beharrlichen metadata Behältnisses können ETL Werkzeuge von ehemaligen Projekten bis beharrlichen middleware wechseln, Datenharmonisierung und Daten durchführend, die durchweg und in der nahen Echtzeit im Profil darstellen.

ETL Alternativen

Die Datenintegration durch Designmethoden stellt eine Alternative zu Typ-Datenintegrationen ETL zur Verfügung. ETL Methoden sind nicht erforderlich, weil die Daten im Quelldatensystem in den Platz durch das Umgießen der Master-Daten der Datenbank integriert werden. Die Datenintegration durch die Designmethode erreicht Datenintegration in den Tagen und Wochen im Vergleich mit den Monaten und für Typ-Datenintegrationen ETL normalerweise erforderlichen Jahren.

Beste Methoden

Vier-layered Annäherung für das ETL Architektur-Design

  • Funktionelle Schicht: Funktioneller Kern-ETL, der (Extrakt in einer Prozession geht, verwandeln Sie sich, und Last).
  • Betriebliche Verwaltungsschicht: Definition des Job-Stroms und Management, Rahmen, Terminplanung, Überwachung, Kommunikation und das Alarmieren.
  • Rechnungskontrolle, Gleichgewicht und Kontrolle (Abc) Schicht: Auftragsausführungsstatistik, balancierend und Steuerungen, weist - und Fehlerberühren, Codemanagement zurück.
  • Dienstprogramm-Schicht: Allgemeine Bestandteile, die alle anderen Schichten unterstützen.

Verwenden Sie dateibasierten ETL, der wo möglich in einer Prozession geht

  • Lagerung kostet relativ wenig
  • Zwischendateien dienen vielfachen Zwecken:
  • Verwendet, um zu prüfen und bei ihm die Fehler zu beseitigen
  • Verwendet für den Wiederanfang und erlangen Verarbeitung wieder
  • Verwendet, um Kontrollstatistik zu berechnen
  • Hilft abzunehmen Abhängigkeiten - ermöglicht Modulprogrammierung.
  • Erlaubt Flexibilität für die Auftragsausführung und planend
  • Bessere Leistung, wenn codiert, richtig, und kann parallele in einer Prozession gehende Fähigkeiten ausnutzen, wenn das Bedürfnis entsteht.

Verwenden Sie datengesteuerte Methoden und minimieren Sie kundenspezifischen ETL, der codiert

  • Parameter-gesteuerte Jobs, Funktionen und Job-Kontrolle
  • Codedefinitionen und in der Datenbank kartografisch darstellend
  • Rücksicht für datengesteuerte Tische, um komplizierteres Code-Mappings und Geschäftsregel-Anwendung zu unterstützen.

Qualitäten eines guten ETL Architektur-Designs

  • Leistung
  • Ersteigbarer
  • Migratable
  • Wiedergutzumachend (run_id...)
  • Durchführbar (Vollziehungscodes für Phasen, von Kontrollpunkten usw. wiederholend)
,
  • Auditable (in zwei Dimensionen: Geschäftsvoraussetzungen und technische Fehlerbeseitigung)

Das Berühren von nichtwünschenswerten Werten (UNGÜLTIGE Werte, falsche Werte, usw.)

Sieh: Sich mit Null im dimensionalen Modell (Universität von Kimball) befassend

  • UNGÜLTIGE DIMENSIONALE Werte
  • UNGÜLTIGE TATSACHE schätzt
  • UNGÜLTIGER PRIMÄRER und/oder AUSLÄNDISCHER SCHLÜSSEL schätzt
  • Falsche oder unerwünschte Werte

Sich mit Schlüsseln befassend

Schlüssel sind einige der wichtigsten Gegenstände in allen Verwandtschaftsdatenbanken, weil sie alles zusammen binden. Ein primärer Schlüssel ist eine Säule, die der Bezeichner für eine gegebene Entität ist, wo ein Auslandsschlüssel eine Säule in einem anderen Tisch ist, der einen primären Schlüssel verweist. Diese Schlüssel können auch aus mehreren Säulen zusammengesetzt werden, in welchem Fall sie zerlegbare Schlüssel sind. In vielen Fällen ist der primäre Schlüssel erzeugte ganze Zahl eines Autos, die keine Bedeutung für die Geschäftsentität hat, die wird vertritt, aber allein zum Zweck der Verwandtschaftsdatenbank - allgemein gekennzeichnet als ein Stellvertreter-Schlüssel besteht.

Da es gewöhnlich mehr als einen datasource geben wird, der ins Lager wird lädt, sind die Schlüssel eine wichtige zu richtende Sorge.

Ihre Kunden könnten in mehreren Datenquellen vertreten werden, und in einem ihrem SSN (Sozialversicherungsnummer) könnte der primäre Schlüssel, ihre Telefonnummer in einem anderen und ein Stellvertreter im dritten sein.

Die ganze Kundeninformation muss in einen Dimensionstisch konsolidiert werden.

Eine empfohlene Weise, sich mit der Sorge zu befassen, soll einen Lager-Stellvertreter-Schlüssel hinzufügen, der als Auslandsschlüssel vom Tatsache-Tisch verwendet wird.

Gewöhnlich werden Aktualisierungen zu Quelldaten einer Dimension vorkommen, die offensichtlich im Datenlager widerspiegelt werden müssen. Wenn der primäre Schlüssel der Quelldaten für den Bericht erforderlich ist, enthält die Dimension bereits diese Information für jede Reihe.

Wenn die Quelldaten einen Stellvertreter-Schlüssel verwenden, muss das Waren-Haus ihn nachgehen, wenn auch er in Abfragen oder Berichten nie verwendet wird.

Das wird durch das Schaffen einer Nachschlagetabelle getan, die den Lager-Stellvertreter-Schlüssel und den entstehenden Schlüssel enthält. Auf diese Weise wird die Dimension mit Stellvertretern von verschiedenen Quellsystemen nicht beschmutzt, während die Fähigkeit zu aktualisieren bewahrt wird.

Die Nachschlagetabelle wird unterschiedlich abhängig von der Natur der Quelldaten verwendet.

Es gibt 5 Typen, um in Betracht zu ziehen, wo drei ausgewählte hier eingeschlossen werden:

Typ 1:

- Die Dimensionsreihe wird einfach aktualisiert, um den aktuellen Staat des Quellsystems zu vergleichen. Das Lager gewinnt Geschichte nicht. Die Nachschlagetabelle wird verwendet, um sich der Dimensionsreihe zu identifizieren, zu aktualisieren zu/überschreiben.

Typ 2:

- Eine neue Dimensionsreihe wird mit dem neuen Staat des Quellsystems hinzugefügt. Ein neuer Stellvertreter-Schlüssel wird zugeteilt. Quellschlüssel ist in der Nachschlagetabelle nicht mehr einzigartig.

Völlig geloggt:

- Eine neue Dimensionsreihe wird mit dem neuen Staat des Quellsystems hinzugefügt, während die vorherige Dimensionsreihe aktualisiert wird, um zu widerspiegeln, dass es nicht mehr aktive und Rekordzeit der Deaktivierung ist.

Werkzeuge

Programmierer können ETL-Prozesse aufstellen, die fast jede Programmiersprache verwenden, aber solche Prozesse von Kratzer bauend, kann kompliziert werden. Zunehmend kaufen Gesellschaften ETL Werkzeuge, um in der Entwicklung von ETL-Prozessen zu helfen.

Indem

man ein feststehendes ETL Fachwerk verwendet, kann man jemandes Chancen vergrößern, mit der besseren Konnektivität und Skalierbarkeit zu enden. Ein gutes ETL Werkzeug muss im Stande sein, mit den vielen verschiedenen Verwandtschaftsdatenbanken zu kommunizieren und die verschiedenen überall in einer Organisation verwendeten Dateiformate zu lesen. ETL Werkzeuge haben angefangen, in die Unternehmensanwendungsintegration oder sogar Unternehmensdienstbus, Systeme abzuwandern, die jetzt viel mehr bedecken als gerade die Förderung, die Transformation und das Laden von Daten. Viele ETL Verkäufer haben jetzt Daten Kopierfräs-, Datenqualität und metadata Fähigkeiten. Ein Fall der üblichen Anwendung für ETL Werkzeuge schließt das Umwandeln CSV Dateien zu durch Verwandtschaftsdatenbanken lesbaren Formaten ein. Eine typische Übersetzung von Millionen von Aufzeichnungen wird durch ETL Werkzeuge erleichtert, die Benutzern ermöglichen, csv ähnliches Datenfutter/Dateien einzugeben und sie in eine Datenbank mit dem so kleinen Code wie möglich zu importieren.

ETL Werkzeuge werden normalerweise durch eine breite Reihe von Fachleuten - von Studenten in der Informatik verwendet, die schnell achtet, große Dateien für die Firmenkontoführung verantwortlichen Datenbankarchitekten zu importieren, ETL Werkzeuge sind ein günstiges Werkzeug geworden, auf das verlassen werden kann, maximale Leistung zu bekommen. ETL Werkzeuge in den meisten Fällen enthalten einen GUI, der Benutzern hilft, günstig Daten im Vergleich mit dem Schreiben großer Programme umzugestalten, um Dateien grammatisch zu analysieren und Datentypen zu modifizieren - welche ETL Werkzeuge so viel wie möglich erleichtern.

Eigentums-

  • Informatica PowerCenter;
  • Ab initio;
  • Durchdringende Software;
  • Astera Centerprise;
  • Expressor;
  • SAS Datenintegrationsserver (in den früheren Versionen bekannt als "SAS ETL Studio" (Version 8) и "SAS Datenintegrationsstudio" (вер. 9);
  • SAP Datenintegrator von BusinessObjects (bevor Erwerb von BusinessObjects durch die Vereinigung von SAP, berühmt als "Datenintegrator von BusinessObjects");
  • Integration Services von Microsoft SQL Server (eingeschlossen ins Erzeugnis von Microsoft SQL Server, SSIS)
  • IBM InfoSphere DataStage;
  • Orakel-Datenintegrator (früher besessen von Sunopsis).
  • Steinband-Technologien
  • SnapLogic

Freeware

Open Source / doppellizenziert

  • Pentaho;
  • Talend offenes Studio;
  • Scriptella;
  • JasperETL von JasperSoft;
  • CloverETL.
  • Apatar

Siehe auch


Wörtlich / Adverbial
Impressum & Datenschutz