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

Как запросить удалённый сервер ClickHouse

В этом руководстве мы узнаем, как производить запросы к удалённому серверу ClickHouse из chDB.

Настройка

Сначала создадим виртуальную среду:

Теперь установим chDB. Убедитесь, что у вас установлена версия 2.0.2 или выше:

Теперь установим pandas и ipython:

Мы будем использовать ipython для выполнения команд в дальнейшей части руководства, который можно запустить, выполнив:

Вы также можете использовать код в Python-скрипте или в вашем любимом ноутбуке.

Введение в ClickPy

Удалённый сервер ClickHouse, к которому мы будем выполнять запросы, это ClickPy. ClickPy отслеживает все загрузки пакетов PyPI и позволяет вам исследовать статистику пакетов через интерфейс. Подлежащая база данных доступна для запросов с использованием пользователя play.

Вы можете узнать больше о ClickPy в его репозитории GitHub.

Запросы к службе ClickPy ClickHouse

Давайте импортируем chDB:

Мы будем выполнять запрос к ClickPy, используя функцию remoteSecure. Эта функция принимает не менее хоста, имени таблицы и имени пользователя.

Мы можем написать следующий запрос, чтобы вернуть количество загрузок в день для пакета openai в виде DataFrame от Pandas:

Теперь давайте сделаем то же самое, чтобы вернуть загрузки для scikit-learn:

Объединение Pandas DataFrames

Теперь у нас есть два DataFrame, которые мы можем объединить по дате (которая является столбцом x) вот так:

Затем мы можем вычислить соотношение загрузок Open AI к загрузкам scikit-learn вот так:

Запрос к Pandas DataFrames

Далее, скажем, мы хотим найти даты с наилучшими и наихудшими соотношениями. Мы можем вернуться в chDB и вычислить эти значения:

Если вы хотите узнать больше о запросах к Pandas DataFrames, смотрите руководство разработчика по Pandas DataFrames.