Arroyo: Un decodificador JSON increíblemente rápido basado en Arrow
El motor de procesamiento de stream Arroyo enfrenta el desafío principal de procesar eficientemente grandes flujos de datos JSON. Este artículo detalla cómo Arroyo utiliza el formato de memoria columnar Arrow y una estrategia de decodificación JSON en dos pasos para mejorar drásticamente la velocidad de deserialización JSON. La primera pasada construye una estructura de datos "cinta" aplanada, mientras que la segunda pasada construye matrices Arrow de forma concurrente basándose en el esquema. Este enfoque es hasta 2,3 veces más rápido que los deserializadores basados en Jackson en pruebas de rendimiento. Además, Arroyo extiende el soporte para JSON sin procesar y el manejo de datos incorrectos, permitiendo un procesamiento más flexible de datos de streaming del mundo real.