Как запрашивать Apache Arrow с помощью chDB
Apache Arrow — это стандартизированный формат памяти с колонковым расположением, который приобрел популярность в сообществе данных.
В этом руководстве мы научимся запрашивать Apache Arrow, используя табличную функцию Python
.
Настройка
Для начала создадим виртуальное окружение:
Теперь установим chDB. Убедитесь, что у вас установлена версия 2.0.2 или выше:
Теперь мы установим PyArrow, pandas и ipython:
Мы будем использовать ipython
для выполнения команд в остальной части руководства, который можно запустить командой:
Вы также можете использовать этот код в Python скрипте или в вашем любимом ноутбуке.
Создание таблицы Apache Arrow из файла
Сначала давайте загрузим один из файлов Parquet для набора данных Ookla, используя инструмент AWS CLI:
Если вы хотите загрузить больше файлов, используйте aws s3 ls
, чтобы получить список всех файлов, а затем обновите вышеуказанную команду.
Далее мы импортируем модуль Parquet из пакета pyarrow
:
Затем мы можем прочитать файл Parquet в таблицу Apache Arrow:
Схема приведена ниже:
И мы можем получить количество строк и колонок, вызвав атрибут shape
:
Запрос к Apache Arrow
Теперь давайте сделаем запрос к таблице Arrow из chDB. Сначала импортируем chDB:
Затем мы можем описать таблицу:
Мы также можем подсчитать количество строк:
Теперь давайте сделаем что-то более интересное.
Следующий запрос исключает колонки quadkey
и tile.*
, а затем вычисляет средние и максимальные значения для всех оставшихся колонок: