Apache Arrow

Información sobre la plantilla
ApacheArrows.png
Concepto:Es una plataforma pensada para aplicaciones analíticas de Big Data que necesitan procesar y mover datos entre sí rápidamente.

Apache Arrow. Plataforma pensada para aplicaciones analíticas de Big data que necesitan procesar y mover datos entre sí rápidamente.

Historia

Años después de haber creado a Pandas, luego de haber interactuado con proyectos como Apache Kudu, Apache Spark, Apache Impala y otros, todos comúnmente usados por ingenieros de datos, Wes McKinney reconoció que estas herramientas eran afligidas por problemas similares y que se necesitaba un lugar común para empezar a resolverlos.

En 2015 Wes McKinney decidió empezar a diseñar y especificar lo que luego se convertiría en Apache Arrow: un estándar que permite unificar herramientas comúnmente asociadas con dataframes y resolver sus problemas sin duplicar esfuerzos.

¿Qué es Apache Arrow?

Ésta es una plataforma pensada para aplicaciones analíticas de Big Data que necesitan procesar y mover datos entre sí rápidamente. Para lograr esto, el estándar de Arrow define un formato de datos orientado a columnas que se caracteriza por la adyacencia de datos secuenciales, el acceso aleatorio en tiempo constante, el patrón de programa Single Instruction Multiple Data y la relocalización de datos con punteros sin uso de copias. Todo esto al final se traduce en tiempos más rápidos de ingesta, manipulación, transformación y exportación de datos.

Sin embargo, tal vez la mayor ventaja de Apache Arrow no sea su capacidad de mejorar el rendimiento de herramientas ya existentes, sino su capacidad práctica de unificar el ecosistema de ciencias de datos. Esto se debe a la gran popularidad de diversas implementaciones del modelo de datos basado en tablas o dataframes. Ésta es una estructura de datos muy común y se pueden encontrar implementaciones en múltiples languajes como Python, Scala y R, así como en múltiples herramientas como Apache Spark, Pandas y Dask.

Fuente