Перейти к основному содержимому
Перейти к основному содержимому

Как запрашивать 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.*, а затем вычисляет средние и максимальные значения для всех оставшихся колонок: