Google Cloud Blog на русском
Подписаться
Преодоление разрыва между SQL и Python с помощью BigQuery и магического расширения %%bqsql
Специалисты по данным и инженеры часто сталкиваются с трудностями при интеграции SQL и Python в свои рабочие процессы. Исторически это включало громоздкие передачи данных между двумя средами. Google Cloud решил эту проблему, представив ячейки SQL в Colab Enterprise, а теперь расширяет это на экосистему с открытым исходным кодом с помощью магического оператора ячейки IPython %%bqsql. Это позволяет беспрепятственно объединять SQL и Python код в одной записной книжке. Процесс можно выполнить бесплатно, используя пакеты с открытым исходным кодом, такие как Jupyter, pandas и BigFrames, а также песочницу BigQuery. Настройка включает в себя включение песочницы BigQuery и настройку локальной среды Python или использование Colab. Локальные данные, такие как данные о пшенице USDA, могут быть загружены в pandas DataFrames и подготовлены для обработки SQL. Магический оператор %%bqsql позволяет BigQuery напрямую запрашивать локальные pandas DataFrames, рассматривая их как временные таблицы. Настоящая мощь заключается в объединении операций; результаты SQL-запросов могут быть сохранены как BigFrames DataFrames для последующего использования в Python или дальнейших SQL-преобразований. Этот гибридный конвейер позволяет оптимально выбирать инструменты, отделяя тяжелую обработку данных в SQL от визуализации и моделирования в Python. Читаемость кода улучшается за счет разбиения сложных запросов на логические шаги, а решение плавно масштабируется от локальных данных до массивных таблиц BigQuery. Помимо %%bqsql, BigFrames предлагает другие функции интеграции, а подключение платежного аккаунта открывает расширенные возможности, такие как BQML. Отзывы об этом гибридном опыте можно отправить команде BigFrames по электронной почте или, создав запрос в их репозитории.