Datenmanagement

Datenextraktion: Der ultimative Leitfaden zur Extraktion von Daten aus jeder Quelle

Reihen virtueller Dateien in einem Datenkatalog, die zu leistungsfähigem Datenmanagement beitragen

Datenextraktion: Der ultimative Leitfaden zur Extraktion von Daten aus beliebigen Quellen

Datenextraktion ist ein Begriff, der die Bewegung von Daten aus einem Quelldatensatz beschreibt. Die Datenextraktion ist oft der erste Schritt eines Extraktions-, Transformations- und Ladeprozesses(ETL) einer Datenpipeline. Data Engineers sind für die Durchführung der Datenextraktion und die Versorgung von Data Analytics und Maschinelles Lernen verantwortlich.

Data Sharing

Es gibt viele Möglichkeiten, Daten für die Extraktion freizugeben. Die Daten können durch Verschlüsselung gesichert werden, um sie im Ruhezustand und bei der Übertragung vor Diebstahl zu schützen. Das Veröffentlichungs- und Abonnementmodell ist eine Möglichkeit der gemeinsamen Nutzung von Daten. Eine weniger ausgefeilte Methode besteht darin, Dateien mit Hilfe von Protokollen wie FTP und SFTP an die konsumierenden Quellen zu übertragen.

Pull-Mechanismen ermöglichen es Verbrauchern, Daten von einem Webbrowser über HTTP herunterzuladen, so dass Netzwerkadministratoren keine Sockets öffnen müssen, die zu einem potenziellen Angriffsvektor für Hacker werden können. Beim Herunterladen von einer Website wird eine Datei auf der konsumierenden Seite der Verbindung, innerhalb der Firewall, erstellt.

Actian und Datenextraktion

Die Actian Data Platform bietet eine einheitliche Lösung für das Einlesen, Umwandeln, Analysieren und Speichern von Daten. Die Actian Data Platform kann in nur wenigen Minuten eingerichtet und geladen werden, um sofortigen Zugriff auf Ihre Analysedaten zu erhalten. Integrierte Datenintegration, ultraschnelle Leistung und die Flexibilität, in verschiedenen Clouds oder On-Premises eingesetzt zu werden, ermöglichen es Ihnen, Ihre Daten dort zu analysieren, wo sie sich gerade befinden.

Quellen für die Datenextraktion

Nachdem die Daten extrahiert wurden, können sie bereinigt, umgewandelt und in Analysedatenbanken geladen werden. Im Folgenden finden Sie einige Beispiele dafür, wie Daten extrahiert und nach Datenquellentyp organisiert werden:

blaues Symbol speichern

Flache Dateien

Flache Dateien sind zweidimensional und bestehen aus Bytes von Daten. Dateien werden in einem betrieblichen Dateisystem oder in einem Cloud gespeichert. Eine Datei ist als ein Strom von Bits mit speziellen Zeichenfolgen strukturiert, um das Ende der Datei (EOF) oder den Zeilenumbruch (CRLF) zu kennzeichnen, so dass sie als eine Reihe von Aufzeichnungen dargestellt werden können. Jede Aufzeichnung in der Datei kann eine feste Länge oder eine variable Länge haben, die durch die CRLF-Sonderzeichenfolge festgelegt wird. Eine Begrenzungszeichenfolge trennt Felder innerhalb einer Aufzeichnung logisch voneinander. Die Begrenzungszeichenfolge wäre beispielsweise das Komma in einer CSV-Datei. Hilfsprogramme für die Datenextraktion verstehen dieses Format, was das Lesen von flachen Dateien erleichtert. Das Datenextraktionsprogramm liest die Datei Feld für Feld und ordnet die Datentypen wie gewünscht zu. Im Gegensatz zu Datenströmen haben Flat Files einen definierten Lebenszyklus, der aus dem Erstellen, Öffnen, Anhängen, Schließen und Löschen besteht.

Die meisten Anwendungen und Betriebssystemfunktionen erzeugen Protokolldateien, die für die Behandlung von Ausnahmen, die Überprüfung und als Quelle für Analysedaten verwendet werden. Protokolldateien sind in der Regel flache Dateien. Da diese Dateien oft mit begrenzten Aufbewahrungsfristen konfiguriert sind, um Speicherplatz zu sparen, müssen sie extrahiert werden, bevor die Aufbewahrungsfrist abläuft oder überschrieben wird.

blaues Balkendiagramm-Symbol für Actian

Datenströme

Datenströme unterscheiden sich von Flat Files dadurch, dass sie kein Ende haben, so dass das Datenextraktionsprogramm nach dem Öffnen weiterhin auf weitere Daten wartet. Datenströme werden von Verwaltungsanwendungen wie Apache Kafka verwaltet, die die Datenstromquelle aufnehmen und in einer Warteschlange speichern, die von Datenladern oder Datenintegrationsprogrammen abonniert wird. Sobald die Daten erstellt sind, werden sie aufgenommen und den konsumierenden Anwendungen über den Stream-Manager zur Verfügung gestellt. Durch die Veröffentlichung im Abonnementsystem werden die Verwaltungskosten niedrig gehalten und auf der Seite der konsumierenden Anwendung viel Programmierarbeit eingespart.

Einige Anwendungen müssen sofort über Änderungen informiert werden, wie z. B. Aktienhandelssysteme und automatische Fahrsysteme; die meisten Systeme können jedoch eine kurze Verzögerung tolerieren. Anstatt bei jeder Änderung benachrichtigt zu werden, was für die CPU teuer sein kann, ist es oft besser, konsumierende Systeme so zu konzipieren, dass sie die Daten regelmäßig in Stapeln oder Mikrostapeln abrufen. Diese Art der Datenextraktion schützt die konsumierenden Server davor, von den Datenströmen, die sie konsumieren, überfordert zu werden. Nicht alle Anwendungen können Verzögerungen verkraften, weshalb Streaming häufig in Cloud gehostet werden.

blaues Ebenensymbol für Actian

Anwendungen

Alle Anwendungen sind darauf ausgelegt, Daten zu empfangen, zu verarbeiten und die Ergebnisse auszugeben. Bei älteren Anwendungen werden in der Regel nicht standardisierte Datenformate verwendet, so dass die Entwickler die Daten z. B. aus der flachen Datei lesen müssen, die den Ausgabebericht enthält. Moderne Webanwendungen sind für den Einsatz in größeren Systemen konzipiert. Sie verwenden in der Regel selbstbeschreibende Standardformate wie JSON, die Metadaten wie Feldnamen, Formate und Längeninformationen enthalten.

Datenbank blaues Symbol

Datenbanken

Daten können auf drei Arten aus Datenbanken extrahiert werden: durch das Schreiben einer benutzerdefinierten Anwendung, mit Hilfe eines Datenexportprogramms oder über eine vom Anbieter bereitgestellte Schnittstelle wie ODBC. Die meisten Datenbankanbieter bieten ein Exportprogramm an, das die Daten in eine flache Datei entlädt. Die Daten können in ein kommagetrenntes Format exportiert werden, um eine maximale Portabilität zu gewährleisten. Treiberprogramme wie ODBC und JDBC bieten eine Anwendungsprogrammierschnittstelle (API), die von Entwicklern und Datenintegrationsprogrammen genutzt werden kann.

Für die operative Agilität können Daten aus Datenbanken extrahiert werden, z. B. durch die Pflege von Replikaten, die asynchron aktualisiert werden, so dass weltweit verteilte Büros oder regionale Niederlassungen über eine lokale Kopie verfügen, die ihnen autonomes Arbeiten ermöglicht. In diesem Fall werden Log-Capture-Systeme wie Change-Data-Capture (CDC) Systeme wie HVR verwendet, um Daten zu extrahieren und zu verteilen.

Ein weiterer wichtiger Grund für die Extraktion von Daten aus einer Datenbank ist die backup und Wiederherstellung zur Aufrechterhaltung der Geschäftskontinuität. In diesen Fällen können die Daten als physische Blöcke extrahiert werden, wobei die SQL-Schicht für eine maximale Durchsatzleistung umgangen wird.