Apache Avro ist ein Open-Source-Projekt, das Datenserialisierungs- und Datenaustauschdienste für Apache Hadoop bereitstellt. Diese Dienste können gemeinsam oder unabhängig voneinander genutzt werden.
Avro erleichtert den Austausch von Big Data zwischen Programmen – selbst dann, wenn die Programme in unterschiedlichen Sprachen geschrieben wurden. Mit dem Serialisierungsdienst können Programme Daten effizient in Dateien oder Nachrichten serialisieren. Dabei ermöglicht Avro eine kompakte und effiziente Datenspeicherung und speichert sowohl die Datendefinition als auch die Daten gemeinsam in einer Nachricht oder Datei.
Avro nutzt das JSON-Format zur Speicherung der Datendefinitionen, wodurch sie leicht gelesen und interpretiert werden können. Die Daten selbst werden im Binärformat gespeichert und sind somit kompakt und effizient. Avro-Dateien enthalten Markierungen, die verwendet werden können, um große Datensätze in Teilmengen aufzuteilen, die für die Verarbeitung mit Apache MapReduce geeignet sind. Hier zeigt sich auch ein Vorteil von Avro gegenüber anderen Datenaustauschdiensten: Einige von ihnen verwenden einen Code-Generator, um die Datendefinition zu interpretieren und Code für den Zugriff auf die Daten zu erstellen. Avro benötigt diesen Schritt nicht und ist daher ideal für Skriptsprachen.
Ein Hauptmerkmal von Avro ist die robuste Unterstützung für Datenschemata, die sich im Laufe der Zeit ändern (was auch häufig als Schema-Evolution bezeichnet wird). Avro verarbeitet Schemaänderungen wie fehlende, neu hinzugefügte und geänderte Felder. Dadurch können ältere Anwendungen neuere Daten und neuere Anwendungen ältere Daten lesen. Man kann sich Avro hier also als Brücke zwischen modernen und Legacy-Anwendungen sowie deren jeweiligen Datensätzen vorstellen. Avro enthält APIs für Java, Python, Ruby, C, C++ und mehr. Mit Avro gespeicherte Daten können von Programmen, die in verschiedenen Sprachen geschrieben wurden, weitergegeben werden – sogar von einer kompilierten Sprache wie C zu einer Skriptsprache wie Apache Pig.
Aktivieren Sie Daten für KI und Analytik mit intelligenter Katalogisierung und Richtlinienverwaltung. IBM Knowledge Catalog ist eine Data-Governance-Software, die einen Datenkatalog zur Automatisierung von Datenerkennung, Datenqualitätsmanagement und Datenschutz bereitstellt.
Wandeln Sie Rohdaten schnell in umsetzbare Erkenntnisse um, vereinheitlichen Sie Data Governance, Datenqualität, -herkunft und -freigabe und stellen Sie Ihren Datennutzern zuverlässige und kontextualisierte Daten zur Verfügung.
Erschließen Sie den Wert von Unternehmensdaten mit IBM Consulting und bauen Sie ein erkenntnisorientiertes Unternehmen auf, das Ihnen geschäftliche Vorteile verschafft.