Как запросить удалённый сервер 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.