[Google Cloud Platform, Python, R, Профессиональная литература] Учимся обращаться к данным и запрашивать их при помощи Google BigQuery. С примерами на Python и R (перевод)
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Привет, хабр!
Совсем недавно у нас вышла подробная книга о работе с хранилищем данных Google BigQuery. Сегодня мы решили вновь кратко затронуть эту тему и опубликовать небольшой кейс о выполнении запросов к данным BigQuery на Python и R.
Сообщите в комментариях, интересует ли публикация на тему машинного обучения с применением BigQuery
Обзор
В этой статье мы рассмотрим, как загружать данные Google BigQuery при помощи Python и R, а потом поговорим о запросах к данным, позволяющим делать полезные выводы. Мы воспользуемся библиотекой Google Cloud BigQuery для подключения к BigQuery Python и библиотекой bigrquery, чтобы добиться того же на языке R.
Также обсудим два этапа операций с данными BigQuery при помощи Python/R:
- Подключение к Google BigQuery и доступ к данным
- Запрашивание данных при помощи Python/R
В этой статье предполагается, что все ваши пользовательские данные сохранены в Google BigQuery.
Python
Python – один из самых популярных универсальных языков для обращения с данными. Он пользуется вниманием и востребованностью благодаря гибкости и легкости в обращении, а в data science может похвастаться самыми разнообразными библиотеками и инструментами для взаимодействия со сторонними системами.
Подключение к Google BigQuery при помощи Python
Чтобы запрашивать данные Google BigQuery при помощи Python, необходимо подключить клиент Python к инстансу BigQuery. При этом используется облачная клиентская библиотека для Google BigQuery API. Также существуют и альтернативные решения для подключения к BigQuery при помощи Python; например, отлично подойдет библиотека BigQuery-Python от tylertreat.
Мы будем работать с библиотекой Google Cloud BigQuery, так как она стабильна и официально поддерживается Google.
Здесь предполагается, что у вас уже настроена среда разработки для Python.
Чтобы установить библиотеку, запустите в командной строке следующую команду:
pip install --upgrade google-cloud-bigquery
Далее подключаем клиент к базе данных. Для этого потребуется скачать файл JSON, содержащий учетные данные к сервису BigQuery. Если у вас нет такого аккаунта, здесь описано, как его создать. Далее скачайте этот файл JSON на вашу локальную машину.
Теперь, когда у нас все настроено, переходим к инициализации соединения. Для этого используется следующий код Python:
rom google.cloud import bigquery
from google.oauth2 import service_account
credentials = service_account.Credentials.from_service_account_file(
'path/to/file.json')
project_id = 'my-bq'
client = bigquery.Client(credentials= credentials,project=project_id)
В вышеприведенном фрагменте вам потребуется указать project_id и местоположение JSON-файла с ключом, заменив 'path/to/file.json' на фактически верный путь к сохраненному на локальной машине файлу JSON.
В Google BigQuery проект является контейнером верхнего уровня и предоставляет задаваемый по умолчанию контроль доступа над всеми множествами данных.
Выполнение запросов к данным BigQuery при помощи Python
Теперь, когда наш клиент BigQuery настроен и готов к использованию, можно выполнять запросы к множеству данных BigQuery.
Для этого используется метод запроса, помещающий задание запроса в очередь BigQuery. Затем запросы выполняются асинхронно — это означает, что мы не указываем никаких задержек, а клиент дожидается, пока задание будет выполнено. Как только это произойдет, метод возвращает экземпляр Query_Job, содержащий результаты.
Подробнее о том, как работает этот метод, рассказано в официальной документации здесь.
Вот как выглядит интересующий нас код Python:
query_job = client.query("""
SELECT *
FROM dataset.my_table
LIMIT 1000 """)
results = query_job.result() # Дожидаемся завершения задания.
Обратите внимание: в вышеприведенном запросе по умолчанию используется стандартный синтаксис SQL. Если вы желаете пользоваться унаследованным SQL, то код будет таким:
job_config.use_legacy_sql = True
query_job = client.query("""
SELECT *
FROM dataset.my_table
LIMIT 1000""", job_config = job_config)
results = query_job.result() # Дожидаемся завершения задания.
R
Язык R – популярная альтернатива Python, активно применяется в data science. Если вас интересует детальный и методичный статистический анализ данных, то мало найдется языков, способных потягаться в этом с R.
При работе с Google BigQuery язык R также предлагает надежную и удобную в использовании библиотеку для запрашивания данных и для операций с ними. Здесь мы будем работать с библиотекой bigrquery, которую создал и поддерживает Хадли Уикем, директор по исследовательской работе из RStudio.
Здесь предполагается, что вы уже настроили среду для разработки в R. Если нет – воспользуйтесь этим руководством для настройки RStudio.
Подключение к Google BigQuery при помощи R
Для установки bigrquery запускаем следующую команду из консоли R:
install.packages(“bigrquery”)
Вот так просто! Мы готовы к работе.
Как и в случае с Python, требуется авторизация нашего клиента R для доступа к Google Cloud Services. Как следует из документации по bigrquery, проследуем по приглашению из консоли R, чтобы открыть URL для авторизации, после чего скопируем код в консоль.
Обратите внимание: такую авторизацию необходимо выполнить всего один раз. Все последующие запросы будут автоматически обновлять учетные данные для доступа.
Выполнение запросов к данным BigQuery при помощи R
Чтобы запрашивать данные BigQuery на языке R, выполним следующие шаги:
- Укажем ID проекта из консоли Google Cloud, так, как это делалось в Python.
- Сформируем строку запроса, при помощи которой запросим данные.
- Вызовем query_exec с ID нашего проекта и строкой запроса.
Вот код, при помощи которого все это реализуется:
# импортируем библиотеку
library(bigrquery)
# здесь идет ID нашего проекта
project_id <- "your-project-id"
# пример запроса
sql_string <- "SELECT * FROM dataset.my_table LIMIT 1000"
# выполняем запрос и сохраняем результат
query_results <- query_exec(sql_string, project = project_id, useLegacySql = FALSE)
Как и в случае с Python, можно выполнять запросы, написанные на унаследованном SQL. Также можно изменить значение useLegacySql на TRUE в вашей функции query_exec.
Заключение
Итак, мы рассмотрели, как легко и просто работать с данными, сохраненными в Google BigQuery, обращаясь к ним на языках Python и R.
На двух этих языках не составляет труда построить статистическую модель на основе данных, обработанных таким образом, а саму модель задействовать в различных целях: понимать, как ведет себя пользователь в приложении, прогнозировать коэффициент оттока (churn rate), т.д.
===========
Источник:
habr.com
===========
===========
Автор оригинала: Rudderstack
===========Похожие новости:
- [Гаджеты, Смартфоны] Microsoft Surface Duo протестировали на прочность
- [Видеокарты, Интернет-маркетинг, Компьютерное железо] В первый день продаж цена GeForce RTX 3080 из-за дефицита взлетела до $2500, NVIDIA извинилась
- [GitHub, Go, Open source] Состоялся релиз консольной утилиты GitHub CLI 1.0
- Уязвимость в Firefox для Android, позволяющая управлять браузером через общий Wi-Fi
- [IT-компании, Информационная безопасность] Mozilla закрыла сервисы Firefox Send и Notes
- В Raspberry Pi 4 появилась возможность загрузки с USB-накопителей
- [Беспроводные технологии, Программирование микроконтроллеров, Разработка для интернета вещей, Производство и разработка электроники, Интернет вещей] ИК датчик движения на STM32
- [PostgreSQL] СЕМЬ ПРАКТИЧЕСКИХ СОВЕТОВ ПО МАССОВОЙ ЗАГРУЗКЕ ДАННЫХ В POSTGRESQL (перевод)
- [DNS, IPv6, Интернет вещей, Сетевые технологии] Конференция ENOG17 состоится online
- Red Hat развивает новую ФС NVFS, эффективную для NVM-памяти
Теги для поиска: #_google_cloud_platform, #_python, #_r, #_professionalnaja_literatura (Профессиональная литература), #_google_bigquery, #_python, #_r, #_sql, #_data_science, [url=https://torrents-local.xyz/search.php?nm=%23_blog_kompanii_izdatelskij_dom_«piter»&to=0&allw=0&o=1&s=0&f%5B%5D=820&f%5B%5D=959&f%5B%5D=958&f%5B%5D=872&f%5B%5D=967&f%5B%5D=954&f%5B%5D=885&f%5B%5D=882&f%5B%5D=863&f%5B%5D=881&f%5B%5D=860&f%5B%5D=884&f%5B%5D=865&f%5B%5D=873&f%5B%5D=861&f%5B%5D=864&f%5B%5D=883&f%5B%5D=957&f%5B%5D=859&f%5B%5D=966&f%5B%5D=956&f%5B%5D=955]#_blog_kompanii_izdatelskij_dom_«piter» (
Блог компании Издательский дом «Питер»
)[/url], #_google_cloud_platform, #_python, #_r, #_professionalnaja_literatura (
Профессиональная литература
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 17:28
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Привет, хабр! Совсем недавно у нас вышла подробная книга о работе с хранилищем данных Google BigQuery. Сегодня мы решили вновь кратко затронуть эту тему и опубликовать небольшой кейс о выполнении запросов к данным BigQuery на Python и R. Сообщите в комментариях, интересует ли публикация на тему машинного обучения с применением BigQuery Обзор В этой статье мы рассмотрим, как загружать данные Google BigQuery при помощи Python и R, а потом поговорим о запросах к данным, позволяющим делать полезные выводы. Мы воспользуемся библиотекой Google Cloud BigQuery для подключения к BigQuery Python и библиотекой bigrquery, чтобы добиться того же на языке R. Также обсудим два этапа операций с данными BigQuery при помощи Python/R:
В этой статье предполагается, что все ваши пользовательские данные сохранены в Google BigQuery. Python Python – один из самых популярных универсальных языков для обращения с данными. Он пользуется вниманием и востребованностью благодаря гибкости и легкости в обращении, а в data science может похвастаться самыми разнообразными библиотеками и инструментами для взаимодействия со сторонними системами. Подключение к Google BigQuery при помощи Python Чтобы запрашивать данные Google BigQuery при помощи Python, необходимо подключить клиент Python к инстансу BigQuery. При этом используется облачная клиентская библиотека для Google BigQuery API. Также существуют и альтернативные решения для подключения к BigQuery при помощи Python; например, отлично подойдет библиотека BigQuery-Python от tylertreat. Мы будем работать с библиотекой Google Cloud BigQuery, так как она стабильна и официально поддерживается Google. Здесь предполагается, что у вас уже настроена среда разработки для Python. Чтобы установить библиотеку, запустите в командной строке следующую команду: pip install --upgrade google-cloud-bigquery Далее подключаем клиент к базе данных. Для этого потребуется скачать файл JSON, содержащий учетные данные к сервису BigQuery. Если у вас нет такого аккаунта, здесь описано, как его создать. Далее скачайте этот файл JSON на вашу локальную машину. Теперь, когда у нас все настроено, переходим к инициализации соединения. Для этого используется следующий код Python: rom google.cloud import bigquery
from google.oauth2 import service_account credentials = service_account.Credentials.from_service_account_file( 'path/to/file.json') project_id = 'my-bq' client = bigquery.Client(credentials= credentials,project=project_id) В вышеприведенном фрагменте вам потребуется указать project_id и местоположение JSON-файла с ключом, заменив 'path/to/file.json' на фактически верный путь к сохраненному на локальной машине файлу JSON. В Google BigQuery проект является контейнером верхнего уровня и предоставляет задаваемый по умолчанию контроль доступа над всеми множествами данных. Выполнение запросов к данным BigQuery при помощи Python Теперь, когда наш клиент BigQuery настроен и готов к использованию, можно выполнять запросы к множеству данных BigQuery. Для этого используется метод запроса, помещающий задание запроса в очередь BigQuery. Затем запросы выполняются асинхронно — это означает, что мы не указываем никаких задержек, а клиент дожидается, пока задание будет выполнено. Как только это произойдет, метод возвращает экземпляр Query_Job, содержащий результаты. Подробнее о том, как работает этот метод, рассказано в официальной документации здесь. Вот как выглядит интересующий нас код Python: query_job = client.query("""
SELECT * FROM dataset.my_table LIMIT 1000 """) results = query_job.result() # Дожидаемся завершения задания. Обратите внимание: в вышеприведенном запросе по умолчанию используется стандартный синтаксис SQL. Если вы желаете пользоваться унаследованным SQL, то код будет таким: job_config.use_legacy_sql = True
query_job = client.query(""" SELECT * FROM dataset.my_table LIMIT 1000""", job_config = job_config) results = query_job.result() # Дожидаемся завершения задания. R Язык R – популярная альтернатива Python, активно применяется в data science. Если вас интересует детальный и методичный статистический анализ данных, то мало найдется языков, способных потягаться в этом с R. При работе с Google BigQuery язык R также предлагает надежную и удобную в использовании библиотеку для запрашивания данных и для операций с ними. Здесь мы будем работать с библиотекой bigrquery, которую создал и поддерживает Хадли Уикем, директор по исследовательской работе из RStudio. Здесь предполагается, что вы уже настроили среду для разработки в R. Если нет – воспользуйтесь этим руководством для настройки RStudio. Подключение к Google BigQuery при помощи R Для установки bigrquery запускаем следующую команду из консоли R: install.packages(“bigrquery”) Вот так просто! Мы готовы к работе. Как и в случае с Python, требуется авторизация нашего клиента R для доступа к Google Cloud Services. Как следует из документации по bigrquery, проследуем по приглашению из консоли R, чтобы открыть URL для авторизации, после чего скопируем код в консоль. Обратите внимание: такую авторизацию необходимо выполнить всего один раз. Все последующие запросы будут автоматически обновлять учетные данные для доступа. Выполнение запросов к данным BigQuery при помощи R Чтобы запрашивать данные BigQuery на языке R, выполним следующие шаги:
Вот код, при помощи которого все это реализуется: # импортируем библиотеку
library(bigrquery) # здесь идет ID нашего проекта project_id <- "your-project-id" # пример запроса sql_string <- "SELECT * FROM dataset.my_table LIMIT 1000" # выполняем запрос и сохраняем результат query_results <- query_exec(sql_string, project = project_id, useLegacySql = FALSE) Как и в случае с Python, можно выполнять запросы, написанные на унаследованном SQL. Также можно изменить значение useLegacySql на TRUE в вашей функции query_exec. Заключение Итак, мы рассмотрели, как легко и просто работать с данными, сохраненными в Google BigQuery, обращаясь к ним на языках Python и R. На двух этих языках не составляет труда построить статистическую модель на основе данных, обработанных таким образом, а саму модель задействовать в различных целях: понимать, как ведет себя пользователь в приложении, прогнозировать коэффициент оттока (churn rate), т.д. =========== Источник: habr.com =========== =========== Автор оригинала: Rudderstack ===========Похожие новости:
Блог компании Издательский дом «Питер» )[/url], #_google_cloud_platform, #_python, #_r, #_professionalnaja_literatura ( Профессиональная литература ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 17:28
Часовой пояс: UTC + 5