Выпущен Apache Arrow 1.0 с улучшенной версией метаданных и поддержкой словарных индексов вместе с улучшенными библиотеками C ++.
Apache Arrow — это столбчатый слой аналитики в памяти, который разрешает произвольный доступ. Он не зависит от языка, может использоваться для плоских и иерархических данных, а хранилище данных организовано для эффективных аналитических операций. Он также предоставляет вычислительные библиотеки. В настоящее время поддерживаются следующие языки: C, C ++, C #, Go, Java, JavaScript, MATLAB, Python, R, Ruby и Rust.
Версия метаданных теперь находится в версии V5, что означает несовместимое изменение в макете буфера типов Union. Все остальные типы сохраняют тот же макет, что и в V4. Улучшенные словарные индексы теперь могут быть созданы для целых чисел без знака, а не только для целых чисел со знаком.
Элемент полета стрелы также был обновлен. Flight обеспечивает управление потоками и предназначен для решения проблемы, заключающейся в том, что основным носителем Apache Arrow являются данные в памяти, но не все системы могут быть размещены вместе. Flight теперь предлагает DoExchange, полностью двунаправленную конечную точку данных, в дополнение к DoGet и DoPut на C ++, Java и Python. Библиотеки C ++ и Python для Flight теперь предоставляют больше параметров из gRPC, включая адрес клиента (на сервере) и возможность устанавливать параметры клиента gRPC низкого уровня. Flight также поддерживает взаимную аутентификацию TLS и возможность для клиента контролировать размер сообщения с данными по сети. Поддержка C ++ также была улучшена с улучшенной поддержкой статического связывания с помощью Arrow.
Уровень вычислительного ядра был значительно переработан и теперь предлагает универсальный механизм поиска, отправки и выполнения функций. Также было добавлено около 30 новых функций вычисления массивов.