Apache Arrow y Parquet son dos formatos modernos para con los que es posible conseguir archivos más pequeños que CSV, además de unos menores tiempos de lectura y escritura. Veamos a continuación las diferencias que existen entre Apache Arrow y Parquet.
Apache Arrow es una biblioteca, disponible para múltiples lenguajes de programación, que proporciona estructuras de datos en columnas para su uso en aplicaciones de análisis de datos. El uso de estructuras tabulares ofrece ciertas ventajas frente a almacenar los datos en filas. Permitiendo un acceso aleatorio mucho más rápido a cada una de las celdas ya que estas se encuentran al lado de la anterior. Lo que hace más eficiente las tareas de iteración sobre los elementos de una columna.
Pero, si Apache Arrow es una biblioteca de software ¿qué son los archivos Arrow? En Apache Arrow también se define un protocolo binario de serialización para empaquetar colecciones de matrices Arrow y emplearlas para la comunicación entre procesos. Pudiéndose usar este tanto para enviar los datos a otro proceso como para almacenar en disco y posteriormente importar en memoria en otro sistema.
Por otro lado, Parquet es un formato de archivo en columnas para la serialización de datos. Al leer un archivo Parquet es necesario descomprimir y decodificar su contenido en algún tipo de estructura de datos en memoria. No proporcionando, a diferencia de Apache Arrow, una estructura de datos para almacenar esta en memoria, sino que el contenido del archivo ha de ser traducido a una nativa del lenguaje, como puede ser el caso de los objetos DataFrame.
El formato Parquet está diseñado específicamente para reducir el tamaño de las operaciones de lectura y escritura. Lo que se consigue a costa de utilizar la CPU para codificar y decodificar los datos.
Así que, una vez visto en qué consiste cada uno de los archivos, se puede ver que en muchas aplicaciones el uso de Arrow y Parquet es indiferente. Aunque es necesario tener algunas cosas en mente a la hora de seleccionar uno u otro.
Apache Arrow y Parquet son dos excelentes opciones para trabajar con grandes conjuntos de datos. Reduciendo el tamaño de los archivos frente a las soluciones tradicionales como los archivos CSV. Aunque, si únicamente queremos almacenar los datos en archivos y seguir usando nuestras estructuras de datos, la mejor opción es usar el formato Parquet.
Imagen de greissdesign en Pixabay
En la era del dato, las organizaciones se enfrentan al reto de gestionar volúmenes masivos…
En la serie Creación de una API REST con Express y TypeScript construimos una API…
Durante la Segunda Guerra Mundial, la Fuerza Aérea de Estados Unidos quería reforzar sus aviones…
En muchas situaciones —ya sea para grabar un tutorial, tomar capturas de pantalla profesionales, probar…
Imagínate en una sala con un grupo de personas, por ejemplo, en una oficina, un…
En el trabajo diario con ordenadores, es común encontrarse con tareas repetitivas: realizar copias de…
This website uses cookies.