Arrow: Neues Apache-Projekt will spaltenbasierte In-Memory-Datenverarbeitung revolutionieren

Michael Thomas

© Shutterstock.com/Timo Kohlbacher

Die Apache Software Foundation (ASF) hat mit „Arrow“ ein neues Projekt angekündigt, das einen hochperformanten, systemübergreifenden Daten-Layer für spaltenbasierte In-Memory-Analysen darstellt und im Hinblick auf Big-Data-Workloads entscheidende Vorteile bieten soll. So wird die Performance analytischer Workloads in manchen Fällen offenbar um mehr als das 100-fache erhöht; des Weiteren sollen durch die Beseitigung des Kommunikations-Overheads sog. Multi-System-Workloads ermöglicht werden.

Der ursprüngliche Codebeitrag für Arrow wurde Apache Drill entnommen, darüber hinaus fußt das Projekt auf der Zusammenarbeit von Entwicklern aus 12 weiteren Big-Data-Projekten. Dazu zählen die ASF-Projekte Calcite, Cassandra, Hadoop, HBase, Impala, Kudu, Parquet, Phoenix, Spark, und Storm, sowie die ebenfalls quelloffenen Projekte Pandas und Ibis. Die Arrow-Entwickler bezeichnen ihr Projekt als neuen De-Facto-Standard für die spaltenbasierte In-Memory-Verarbeitung sowie den Datenaustausch. Jacques Nadeau (Vizepräsident von Apache Arrow und Apache Drill) geht davon aus, dass in einigen Jahren der Großteil der weltweit vorhandenen und in Frage kommenden Daten von Arrow verarbeitet werden.

Grundzüge

Die Beschleunigung der analytischen Verarbeitung wird der offiziellen Ankündigung zufolge durch die Bereitstellung einer hochperformanten, spaltenbasierten In-Memory-Repräsentation erreicht – ein Speicherdesign, von dem mehrere Verarbeitungsalgorithmen stark profitieren sollen. Worauf die Arrow-Macher besonders hinweisen: In manchen Workloads werden zwischen 70 und 80 % der CPU-Zyklen für die Serialisierung und Deserialisierung von Daten aufgewendet. Arrow soll dieses Problem lösen, indem es die Möglichkeit eröffnet, Daten zwischen Systemen und Prozessen zu teilen, ohne dass dabei auf Serialisierung, Deserialisierung oder auf Speicherkopien zurückgegriffen wird.

Neben „traditionellen“ relationalen Daten unterstützt Arrow auch komplexere Datentypen: So kann es beispielsweise mit den u. a. für IoT-Workloads typischen JSON-Daten umgehen. Implementierungen für Java, C++ und Python sind bereits verfügbar bzw. in der Entwicklung und sollen eine Interoperabilität mit weiteren Big-Data-Lösungen gewährleisten.

Ungewöhnlich für ein Apache-Projekt ist der Umstand, dass Arrow nicht den Incubator der Stiftung durchlaufen hat, sondern direkt in den Rang eines Top-Level-Projekts erhoben wurde. Als erstem ASF-Projekt überhaupt war dies der Composite-Oriented-Programming-Plattform Apache Zest im März 2015 widerfahren.

Apache Arrow steht unter Apache-2.0-Lizenz. Der Quellcode des Projekts ist auf GitHub zu finden.

Aufmacherbild: archery arrows and target von shutterstock.com / Urheberrecht: Timo Kohlbacher

Verwandte Themen:

Geschrieben von
Michael Thomas
Michael Thomas
Michael Thomas studierte Erziehungswissenschaft an der Johannes Gutenberg-Universität Mainz und arbeitet seit 2013 als Freelance-Autor bei JAXenter.de. Kontakt: mthomas[at]sandsmedia.com
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: