Google BigQuery — зачем нужна облачная база данных

Ранее я публиковал цикл материалов о работе с Google BigQuery. В этой статье расскажу о преимуществах и особенностях сервиса, а также о дополнительных инструментах для BigQuery.
Google BigQuery — это облачная база данных с высочайшей скоростью обработки огромных массивов данных.
Как начать работу в Google BigQuery
Войдите в Google Cloud Platform. При первом запуске система предложит активировать бесплатный пробный период и получить кредит $300 на 12 месяцев. Честно говоря, чтобы потратить за год в BigQuery эту сумму, вам придется очень сильно постараться.
Для дальнейшей работы введите платежные данные.
Нажмите «Выбрать проект».
Затем — «Создать проект».
Примите условия использования платформы.
Наконец, назовите проект, задайте настройки уведомлений и еще раз согласитесь с условиями использования платформы.
После подтверждения подождите несколько минут.
Вскоре вы получите оповещение, что проект создан.
Перейдите в раздел оплаты и привяжите платежный аккаунт.
Теперь проект привязан к только что созданному платежному аккаунту.
Перейдите в интерфейс Google BigQuery и напишите свой первый запрос.
Чтобы открыть редактор запросов, нажмите «Compose query» или сочетание клавиш «Ctrl + Space».
Рассмотрим, как написать первый запрос на примере публичных данных в BigQuery. Возьмите первые 15 строк из таблицы project_tycho_reports, которая находится в наборе публичных данных lookerdata.
SELECT *FROM [lookerdata:cdc.project_tycho_reports]LIMIT 25Запрос вернет результат:
Как начать работу с BigData — загружаем данные в Google BigQuery Ранее я описывал самые простые
Почему стоит выбрать именно Google BigQuery
Скорость — это основное преимущество BigQuery, но не единственное. BigQuery — облачный сервис. При его использовании не понадобится арендовать сервер и оплачивать поддержку.
Стоимость BigQuery значительно ниже стоимости аренды самого примитивного сервера: даже если вы очень постараетесь и будете ежедневно записывать в эту базу данных миллионы строк, все равно вряд ли сможете потратить более $5.
Следующее преимущество — простота использования. В любой другой системе управления базами данных (СУБД) помимо знания SQL придется долго разбираться с тонкостями администрирования и настройками базы.
И если сам по себе SQL-диалект во всех базах данных очень похожий, то административная часть, как правило, везде устроена по-разному.
У BigQuery всю административную часть на себя взял Google. В этом сервисе нет никаких настроек, индексов, движков таблиц, тайм-аутов или внешних ключей. Реализована поддержка только одной кодировки UTF-8.
Для работы с BigQuery достаточно знать, как загрузить данные в BigQuery, и иметь базовые знания в SQL.
Несмотря на простоту, в BigQuery реализована поддержка пpaктически всех функций СУБД:
Как работать с оконными функциями в Google BigQuery — подробное руководство
оконные функции ;- хранение данных в виде структур (нереляционные возможности) ;
- представления и табличные выражения (common table expression).
Правда, на момент публикации статьи сервис не поддерживает:
- рекурсивные запросы;
- создание хранимых процедур и функций;
- транзакции.
Особенности SQL для Google BigQuery
BigQuery умеет переключаться между стандартным SQL и диалектами.
DML-операции INSERT, UPDATE и DELETE на данный момент поддерживаются только при использовании стандартного SQL.
Еще одно отличие между этими диалектами — способ вертикального объединения таблиц. В стандартном SQL для этого служит оператор UNION и ключевое слов ALL или DISTINCT:
SELECT 12 AS A, 32 AS BUNION ALLSELECT 2 AS A, 29 AS BВ собственном SQL-диалекте функционал для вертикального объединения таблиц значительно шире. Существует специальный набор функций подстановки таблиц (Table Wildcard Functions).
Как обpaбатывать данные из множества таблиц в Google BigQuery Этот
Для простого объединения достаточно просто перечислить названия нужных таблиц или подзапросы через запятую. Объединение запросов из примера выше на внутреннем диалекте SQL в BigQuery будет выглядеть так:
SELECT *FROM (SELECT 12 AS A, 32 AS B), (SELECT 2 AS A, 29 AS B)Переключатель между SQL-диалектами в BigQuery находится в интерфейсе в блоке опций: нажмите кнопку Show options под редактором запросов.
С помощью галочки «SQL Dialect» переключитесь на нужный диалект.
Инструменты для работы с BigQuery
Мы уже разобрались, как загружать данные в базу и как обращаться к данным SQL запросами. Но вряд ли вы хотите взаимодействовать с данными, ограничившись этими возможностями. Скорее всего, вы загружаете данные для построения дашбордов или чего-то подобного.
Как связать Microsoft Power BI и Google BigQuery Интеграция Google BigQuery c BI-платформами и электронными таблицами Как получить данные в различных BI платформах, я писал в статьях об интеграции с
Microsoft Power BI, как и большинство популярных BI-систем и электронных таблиц, с июля 2017 года поддерживает интеграцию с Google BigQuery из коробки. У коннектора довольно скудные возможности: он не умеет обращаться к сохраненным представлениям или отправлять в BigQuery запросы. Пока что с помощью встроенного коннектора можно вытягивать только плоские таблицы.
Simba Drivers
Если вам необходимо получить данные из Google BigQuery в электронной таблице или BI-системе, которая из коробки не поддерживает интеграцию, воспользуйтесь бесплатным Simba Drivers.
Этот драйвер поддерживает все необходимые возможности, включая переключения SQL-диалектов. Подробности настройки ищите в моей статье о связке Microsoft Power BI и Google BigQuery.
Язык R
Язык R — один из самых мощных инструментов для работы с данными. Он умеет как получать данные из Google BigQuery, так и записывать их. Для этого удобнее всего пакет bigrquery.
Для начала установите язык R. Также для удобства работы с R я рекомендую установить интегрированную среду разработки RStudio.
Запустите RStudio и с помощью сочетания клавиш «Ctrl+Alt+Shift+0» откройте все доступные в ней панели. Чаще всего понадобятся панели Source и Console.
Для установки develop-версии пакета bigrquery из репозитория на GitHub предварительно установите пакет devtools. Введите в окно Source код, затем выделите его (зажмите левой кнопки мыши) и нажмите «Ctrl+Enter» для выполнения комaнды:
install.packages(\"devtools\")Теперь установите пакет bigrquery:
devtools::install_github(\"rstats-db/bigrquery\")Чтобы в R были доступны функции пакета, после установки подключите их с помощью комaнды library или require. Например, подключим пакет bigrquery с помощью кода:
library(bigrquery)Структура данных в Google BigQuery состоит из проекта с набором данных, содержащим таблицы. Проект вы уже создали, а теперь для передачи информации создайте набор данных. Выберите в интерфейсе из выпадающего меню «Create new dataset».
Чтобы создать набор данных с помощью языка R, воспользуйтесь комaндой insert_dataset. Комaнда требует всего 2 аргумента:
project — ID проекта (возьмите из URL в BigQuery).
dataset — название нового набора данных.
Давайте создадим первый набор данных с названием myFirstDataSet. Введите в область Source приведенный ниже код, выделите комaнду с помощью мыши и нажмите «Ctrl+Enter» для выполнения.
insert_dataset(project = \"myfirstproject-185308\", dataset = \"myFirstDataSet\")В окне Console в RStudio появится запрос о создании учетных данных, чтобы в дальнейшем не требовалась повторная аутентификация.
Введите на запрос Selection в Console ответ Yes и нажмите Enter. Откроется браузер — разрешите доступ к данным и получите авторизационный код.
Скопируйте сгенерированный код. Затем вставьте его в Console RStudio в ответ на запрос авторизационного кода и нажмите Enter.
Отлично, вы создали набор данных.
Теперь запишите встроенную в R таблицу mtcars в набор данных myFirstDataSet. Для передачи данных из R в BigQuery в пакете bigrquery есть функция insert_upload_job. Она принимает такие аргументы:
project — ID проекта (смотрите либо в URL проекта, либо в режиме переключения проектов).
dataset — название набора данных, куда вы планируете отправить данные. В нашем случае myFirstDataSet.
table — название таблицы с записанными данными.
values — data frame (таблица данных) в R с данными для передачи в BigQuery.
billing = project аккаунта для оплаты операции. По умолчанию — платежный аккаунт, который привязан к проекту.
create_disposition — опция для определения необходимых действий.
Если в BigQuery нет таблицы с заданным в аргументе table названием, укажите \"CREATE_IF_NEEDED\" — система создаст новую таблицу.
Если указать \"CREATE_NEVER\" и таблица с заданным именем не найдется в наборе данных, будет возвращена соответствующая ошибка.
write_disposition — опция для выбора добавления данных в существующую таблицу.
\"WRITE_APPEND\" — дописать данные в таблицу.
\"WRITE_TRUNCATE\" — перезаписать данные в таблице.
\"WRITE_EMPTY\" — записать данные для пустой таблицы.
Код для передачи в BigQuery встроенной в R таблицы mtcars:
insert_upload_job(project = \"myfirstproject-185308\", dataset = \"myFirstDataSet\", table = \"mtcars_bigquery\", values = mtcars, create_disposition = \"CREATE_IF_NEEDED\", write_disposition = \"WRITE_APPEND\")При успешном выполнении операции в консоли R появится дополнительная информация, а в интерфейсе BigQuery — созданная таблица mtcars_bigquery.
Для запроса данных из BigQuery в R в пакете bigrquery предназначена функция query_exec. Основные аргументы:
query — текст SQL-запроса, результат которого вы хотите загрузить в R.
project — ID проекта для запроса данных.
page_size — максимальный размер возвращаемого результата в строках (по умолчанию 10 000).
max_pages — максимальное количество страниц возврата запросом (по умолчанию 10).
use_legacy_sql — выбор SQL-диалекта для обработки запроса.
По умолчанию задано значение TRUE с внутренним диалектом BigQuery.
Для стандартного диалекта SQL задайте в этом аргументе значение FALSE.
Для обратного запроса данных, которые вы отправили в BigQuery на прошлом шаге, задайте комaнду:
bq_mtcars_table <- query_exec(query = \"SELECT * FROM myFirstDataSet.mtcars_bigquery\", project = \"myfirstproject-185308\", use_legacy_sql = TRUE)В рабочем окружении (описание которого вы видите в окне Environment) появится новый объект bq_mtcars_table.
Выводы
Google BigQuery — простой и в то же время мощнейший инструмент для хранения и обработки данных. Это облачная база данных с поддержкой большинства функций СУБД.
Сервис обходится значительно дешевле содержания, поддержки и администрирования сервера для бесплатных баз данных (MySQL или PostgreSQL).
Надеюсь, мой цикл инструкций для начала работы с Google BigQuery упростит ваши будни.
Успехов в работе с большими данными!
Комментарии:
Популярные размеры баннеров. Найти самый топовый из джентльменского набора! Мы провели свое исследование....
20 05 2026 21:46:54
Пора принять решение! Разберитесь с регулярными выражениями для более продуктивной работы с Google ***ytics или Google Tag Manager...
19 05 2026 4:47:55
Сколько стоил клик в Google Ads и Яндекс.Директ в Казахстане — цифры за первый квартал 2019 года...
18 05 2026 19:13:41
в поисках нового источника трафика расскажем о Pinterest — современной поисковой сети c акцентом на визуальном контенте...
17 05 2026 22:55:19
Читайте, если не хотите «слить» бюджет. Определите конкретные цели и УТП, соберите аналитику, идите к специалисту без опыта работы в конкретной нише и другие рекомендации эксперта. Читайте подробнее в статье!...
16 05 2026 19:28:33
Считаем SEO-эффект от нового дизайна сайта и работы над usability...
15 05 2026 22:52:30
Академия — набор структурированного контента, интеpaктивных заданий и обучающих курсов, посвященных конкретному продукту или индустрии в целом...
13 05 2026 12:21:15
Пост постоянно обновляется актуальными данными о размерах картинок...
12 05 2026 19:24:43
Памятка для всех, кому важно сохранить детали переговоров....
11 05 2026 22:37:36
Признаки того, что магазин находится под фильтром и шаги по выводу из него...
10 05 2026 20:46:55
Создаем список тем, которые заинтересуют пользователя — для этого используем простые сервисы по типу Вордстат. Также изучаем деятельность конкурентов. Узнать больше!...
09 05 2026 6:36:25
Как настроить программу Obsidian для удобной и быстрой работы по системе Zettelkasten....
08 05 2026 21:57:25
Кейс: контент-маркетинг сервиса в США, или как SerpStat покорил англоязычный мир...
07 05 2026 21:45:37
Определение частотности запросов — задача первоочередной важности для составления адекватного семантического ядра, наполнения качественным контентом и контекстной рекламой...
06 05 2026 10:25:57
Нейронные сети, нейросети онлайн, сверхточные нейронные сети. Я рассажу, как они устроены, как написать свою нейронную сеть с нуля, как правильно обучить нейронную сеть на имеющихся данных...
05 05 2026 9:15:59
Как правильно мотивировать и демотивировать себя — теория и кейсы. Как бросить курить, начать бегать и наконец-то приступить к изучению английского. Читать!...
04 05 2026 11:43:27
Как помешать фейковым 404 страницам испортить статистику вашего сайта?...
03 05 2026 23:36:25
Как контролировать множество сайтов — полезные сервисы и советы для вебмастеров. Одно дело — несколько десятков сайтов, а что если сотни или тысячи? Как раз это подробно и разберем....
02 05 2026 0:59:13
Наличие или отсутствие в карточках отзывов о товарах интернет магазина сказывается на продажах, а также оказывает влияние на SEO. Об этом, а также о пользе автоматизированного сбора отзывов о товарах мы расскажем в этой статье....
01 05 2026 4:15:57
Заработок в четверть миллиона. Как многофункциональная SEO-платформа Serpstat из Netpeak Group стала самым продаваемым продуктом на AppSumo — пошаговая история-инструкция...
30 04 2026 23:14:18
Как получить больше конверсионного трафика из поиска и не выйти за рамки KPI? Запустите SNDS-кампании...
29 04 2026 1:24:17
Помимо полезного и качественного продукта, услуги, компании нужен мощный маркетинг. И возможно это только благодаря хорошему директору по маркетингу. Только так это работает. Кто лучшие в этой нише в Казахстане? Узнать!...
28 04 2026 22:24:44
Наибольший эффект по продвижению сайта при минимальных затратах — именно таков принцип SEO growth hacking. Как найти кратные точки роста, читайте статье....
27 04 2026 17:30:44
Эффективность рекламы в поиске падает, но растут YouTube, контекстно-медийная сеть и другие платформы...
26 04 2026 8:18:22
Как узнать, хорошую ли статью вы опубликовали в блоге...
25 04 2026 13:21:25
Блиц-инструкция и рекомендации по созданию эффективных описаний для мобильных приложений...
24 04 2026 23:26:27
Персональный чек-лист автора десятков рассылок: три года опыта и регулярное общение с техподдержкой почтовых сервисов. Всё о том, как не попасть в спам и как из него спасаться. А может и не всё. Можете дополнить этот пост своими фишками? Делитесь!...
23 04 2026 6:53:45
Большой проект Джима Коллинза и его комaнды. Одна из лучших книг в нашей библиотеке. Всем рекомендуется к прочтению!...
22 04 2026 15:10:36
Полтора года работы и 32 тысячи привлеченных подписчиков. Рассказываем о плюсах и минусах продвижения телеграм-канала....
21 04 2026 18:54:13
Как добиться эффективности и самоорганизации. Читайте о системе тимлида Netpeak Андрея Коваля....
20 04 2026 15:53:34
Что такое App Store optimization и как раскручивать мобильные приложения...
19 04 2026 14:12:38
UTM-метки позволяют эффективно отслеживать источники трафика. Но составлять их нужно правильно. Как именно, давайте разбираться....
18 04 2026 13:46:35
Хакерские атаки с развитием технологий коснулись постаматов и доставки заказов из интернет-магазинов...
17 04 2026 1:43:39
Виктория Игнатьева опубликовала новый кейс по продвижению интернет-магазина детской одежды, обуви и товаров: ROMI (возврат маркетинговых инвестиций) 319%....
16 04 2026 1:34:11
Как пользоваться «Совмещением данных» с учетом всех особенностей инструмента...
15 04 2026 12:25:15
Ежегодно в конце ноября начинается ажиотаж вокруг «огромных» скидок на Черную пятницу. Во всем мире этого дня ждут и готовятся покупать выгоднее. Но так ли это на самом деле?...
14 04 2026 10:37:15
Как эффективно распределять бюджет и ресурсы на обучение сотрудников. Статья будет полезной для собственников бизнеса и HR-специалистов....
13 04 2026 19:24:39
Реклама в ASA значительно повышает эффективность ASO....
12 04 2026 15:34:16
На отклонение исходящих ссылок после загрузки файла может уйти достаточно много времени: от нескольких недель до нескольких месяцев...
11 04 2026 5:26:23
Стоит ли торопиться с переходом на новый формат объявлений? Эксперимент PPC-специалистов агентства Netpeak....
10 04 2026 20:24:15
Гарантии результата в SEO: миф или реальность. Спрос рождает предложение, поэтому не удивительно, что существует большое количество SEO-студий. Сразу возникает резонный вопрос, как могут существовать те компании, которые не дают гарантии вообще?...
09 04 2026 21:54:21
Наталья Воскобойникова из контент-студии WordFactory решила дать четкую хаpaктеристику потенциальному заказчику гостевых постов. Если хотя бы один ваш ответ на вопросы в этом посте отрицательный, стоит найти другие тактики продвижения своего проекта....
08 04 2026 18:37:28
Хотите говорить с клиентами? Пишите им в телеге. Для этого важно продвижение телеграм-канала. Что и как делать для раскрутки — подробная инструкция....
07 04 2026 15:50:19
SEO-продвижение интернет-сайта, где можно заказать доставку цветов. Оплатой за трафик под Россию, Украину, Казахстан, Армению, Грузию...
06 04 2026 13:47:31
Чтобы сделать что-то лучше, иногда надо довести это до абсурда. Так думают приверженцы теории «странных изделий» — chindogu...
05 04 2026 19:30:18
Бесплатно рекламировать и привлечь первых посетителей/клиентов вполне реально своими силами...
04 04 2026 3:19:25
Гайд по типам рекламы в соцсетях для SMM-, PPC-специалистов, блогеров и владельцев бизнеса в зависимости от целей, которые вы ставите перед продвижением. С конкретными рекомендациями и примерами. Узнать больше!...
03 04 2026 21:40:51
Как нарисовать круговую или столбчатую диаграмму. Избавляемся от популярных ошибок при оформлении...
02 04 2026 15:58:21
Cтоимость просмотра в Google Ads дешевле как минимум в два раза по сравнению со Smart TV...
01 04 2026 1:47:53
Еще:
понять и запомнить -1 :: понять и запомнить -2 :: понять и запомнить -3 :: понять и запомнить -4 :: понять и запомнить -5 :: понять и запомнить -6 :: понять и запомнить -7 ::