Как начать работу с BigData — загружаем данные в Google BigQuery

Все говорят о BigData, необходимости анализировать большие объемы информации, но при этом не знают, как обpaбатывать данные, и не решаются сделать первые шаги. В этом посте мы расскажем о том, как начать работу с облачным сервисом Google BigQuery, если у вас уже есть данные в CSV, JSON или Google Spreadsheets.;
Первый способ. Загрузка данных из CSV файлов
1. Перед тем как приступить непосредственно к процедуре загрузки информации, нам необходимо создать набор данных (data set) и таблицу, в которую будем их загружать.
1.1. Для этого открываем Google BigQuery в браузере, выбираем нужный проект из выпадающего списка, после чего в меню указываем «Create new dataset».
1.2. Окно создания набора данных выглядит следующим образом:
В поле Dataset ID необходимо задать имя набора данных, мы назвали его «load_data». С помощью выпадающего поля «Data location» можно выбрать регион физического местонахождения сервера, на котором будут храниться данные (по умолчанию установлено значение «unspecified», то есть место хранения данных не определено). Если установить галочку возле пункта «Expire new tables in one day», все таблицы будут храниться только один день, после чего автоматически будут удалены из этого набора данных и базы в целом. Используйте эту опцию для временных таблиц.
1.3. Для завершения процесса создания нового набора данных жмем «OK», теперь в нашем проекте появился пустой набор данных «load_data».
2. Следующий шаг — создание таблицы в новом наборе данных. Кликаем на плюс, который появится, если вы наведете курсор мыши на только что созданный набор данных.
Окно создания таблицы содержит четыре блока настроек и выглядит следующим образом:
2.1. Source data. В этом блоке вы выбираете источник, из которого будет загружена информация. Источником данных могут быть файлы в формате CSV, JSON и Cloud Datastore Backup (последний позволяет загружать данные из файлов хранящихся на Google Storage). Для дальнейшей работы предлагаю скачать два файла, которые я назвал в соответствии с форматами «csv» и «json». Первым загрузим «csv». Чтобы выбрать файл, нажимаем кнопку «Choose file», которая находится в поле «Location». К области Source data мы вернемся, когда будем подгружать информацию из файла «json».
2.2. Destination Table;— выбор места хранения данных. Здесь указываем название таблицы, в которую планируем импортировать данные. Если вы впишете в поле «Table ID» название уже существующей в наборе данных таблицы, то данные будут добавлены в существующую таблицу, если вы введете новое название — будет создана новая таблица. Также у вас есть возможность выбрать тип таблицы из выпадающего списка в поле «Table type». В Google BigQuery существует два типа таблиц:
- Native — данные будут загружены непосредственно в BigQuery, в этом случае процеДypa импорта данных может продолжаться дольше, но запросы, направленные к таблицам типа Native, будут выполняться быстрее;
- External — вы можете выбрать файл, хранящийся в Google Storage, таким образом данные не загрузятся в BigQuery, и запросы к таблицам с типом External будут обpaбатываться дольше.
2.3. Schema. На этой вкладке необходимо описать структуру будущей таблицы. С помощью кнопки «Add field» добавляем и описываем шесть полей, которые будут присутствовать в нашей таблице. Кнопка «Edit as text» дает возможность описать структуру таблицы в JSON формате (этот способ мы рассмотрим позже, когда будет подгружать файл «json»).
Доступные типы данных:
| Тип данных | Описание |
| STRING | Текст, максимальный размер строки — 2 МБ. Этот тип данных принимает кодировку UTF-8, если вы планируете загрузить кириллицу, предварительно перекодируйте ее в UTF-8.;В примере в качестве типа данных устанавливайте именно «STRING». |
| INTEGER | 64-битное целое число. |
| FLOAT | Число с плавающей точкой. |
| BOOLEAN | Булево значение, принимает значение true или false, чувствительно к регистру. |
| TIMESTAMP | Дата и время. BigQuery хранит эти данные в UNIX формате. Вы описываете время как положительное число, которое указывает количество секунд начиная с 1 января 1970 года 00:00:00, или отрицательное — количество секунд до 1 января 1970 года 00:00:00. Несмотря на то, что BigQuery хранит данные о дате и времени в UNIX формате, вы можете загружать их также в формате YYYY-MM-DD HH:MM:SS. Если в вашем файле в качестве даты указано значение 2016-02-29 12:10:54, оно корректно загрузится в формате даты и времени. |
2.4. Options — последний блок, который необходимо заполнить перед загрузкой данных. В поле «Field delimiter» указываем разделитель полей для CSV файла. В нашем случае это точка с запятой, в связи с чем мы устанавливаем переключатель в режим «Other» и в текстовом поле вводим «;».
В поле «Header rows to skip» вписываем количество строк, содержащих заголовки данных, чтобы эти строки игнорировались при импорте. С помощью поля «Number of errors allowed» мы задаем максимально допустимое количество ошибок при загрузке. Если установить в этом поле 0, то при первой же ошибке в загружаемых данных (к примеру, при несоответствии загружаемых данных типу поля), процеДypa загрузки будет остановлена. Галочку «Allow Quoted Newlines» надо ставить в случае, если в загружаемом CSV файле встречаются текстовые поля, значение которых переходит на следующую строку, например:
1,2,\"this is my string\",4,5 1,2,\"another string\",4,5 В данном случае нам требуется загрузить из CSV файла две строки, но, как видим, второе поле первой строки разделено переносом на новую строку. Чтобы при импорте этот перенос игнорировался, установите галочку «Allow Quoted Newlines». Опция «Allow jarred rows» доступна только для CSV файлов. Если вы установите эту галочку, отсутствующие записи в необязательных столбцах будут обpaбатываться как нулевые, если не установите — такие записи будут считаться ошибочными, и если ошибочных записей много, импорт будет остановлен. Галочка в поле «Ignore unknown value» позволяет во время загрузки игнорировать значения, которые не соответствуют структуре данных, описанной на вкладке «Specify schema».
2.5. Для импорта данных нам остается нажать кнопку «Create table», после чего в наборе данных появится новая таблица «load_data_table», и данные из CSV файла будут загружены в нее.
Подводные камни при импорте CSV-файла в Google BigQuery.- Если у вас есть файлы более 10 МБ, их можно загрузить только через Google Cloud Storage. Это может занять довольно продолжительное время в зависимости от размера файла.
- Если важно импортировать все данные из CSV, то файл должен соответствовать всем стандартам CSV. Выгрузки из некоторых сервисов эти стандарты нарушают. Так, при сохранении CSV из Excel кодировка будет CP1251. В данном случае с помощью Notepad++ перед загрузкой необходимо перекодировать файл в формат UTF-8. В ином случае часть строк получится с ошибками. Только после преобразования в правильный CSV файл можно загружать в BigQuery.
- Важно соблюдать ограничения на импорт.
Второй способ. Загрузка данных из JSON файла
1.Ранее мы уже скачали файл «json». У файлов в JSON формате другая структура данных, чем у данных, загруженных в прошлом примере из CSV. 1.1. Для загрузки этого файла необходимо повторить описанные ранее шаги. Жмем «+» напротив созданного в прошлом пункте набора данных «load_data», задаем имя новой таблицы «load_data_from_json».
1.2. В блоке «Source data» выбираем скачанный ранее файл. Для этого в выпадающем списке «File format» выбираем JSON, нажимаем кнопку «Choose file» и выбираем нужный файл. 1.3. Структуру таблицы в блоке «Schema» можно описать в JSON формате. Для этого нажимаем «Edit as text» и вставляем следующий текст:
[{ \"name\": \"kind\", \"mode\": \"nullable\", \"type\": \"string\" },{ \"name\": \"fullName\", \"type\": \"string\", \"mode\": \"required\" },{ \"name\": \"age\", \"type\": \"integer\", \"mode\": \"nullable\" },{ \"name\": \"gender\", \"type\": \"string\", \"mode\": \"nullable\" },{ \"name\": \"phoneNumber\", \"type\": \"record\", \"mode\": \"nullable\", \"fields\":[ { \"name\": \"areaCode\", \"type\": \"integer\", \"mode\": \"nullable\" },{ \"name\": \"number\", \"type\": \"integer\", \"mode\": \"nullable\" } ] },{ \"name\": \"children\", \"type\": \"record\", \"mode\": \"repeated\", \"fields\":[ { \"name\": \"name\", \"type\": \"string\", \"mode\": \"nullable\" },{ \"name\": \"gender\", \"type\": \"string\", \"mode\": \"nullable\" },{ \"name\": \"age\", \"type\": \"integer\", \"mode\": \"nullable\" } ] },{ \"name\": \"citiesLived\", \"type\": \"record\", \"mode\": \"repeated\", \"fields\":[ { \"name\": \"place\", \"type\": \"string\", \"mode\": \"nullable\" },{ \"name\": \"yearsLived\", \"type\": \"integer\", \"mode\": \"repeated\" } ]} ]1.4. Блок «Options» для JSON файла содержит всего две опции. С помощью «Number of errors allowed» указываем допустимое количество ошибок при импорте данных. Галочка в поле «Ignore unknown values» означает, что в процессе загрузки будут игнорироваться значение, которые не соответствуют структуре таблицы, описанной на предыдущей вкладке. 2. Жмем «Submit» и через несколько секунд в наборе данных «load_data» появится еще одна таблица.
Третий способ. Загрузка данных из Google Spreadsheets
Данные из Google Таблиц можно загрузить двумя способами.
1. Загрузка данных из Google Таблицы из интерфейса Google BigQuery
Для этого необходимо выбрать из выпадающего списка Location пункт «Google Drive» и указать полную ссылку на нужную Google Таблицу. Для того, чтобы указать ссылку на конкретный лист, введите полный URL, включая параметр gid. Далее процеДypa точно такая же, как была описана в первом и втором пункте — задаёте имя таблицы и описываете её схему.
В этом случае данные не только будут загружены в Google BigQuery, но также будет сохранена связь непосредственно с листом таблицы Google. Все внесённые на лист изменения будут отображаться при запросах к данной таблице в Google BigQuery даже без повторной процедуры загрузки данных.
2. Загрузка данных из Google Таблицы с помощью OWOX BI
2.1. Возможно, в повседневной работе с данными вы чаще всего используете Google Таблицы, и в таком случае наиболее удобным источником для выгрузки данных будет дополнение OWOX BI BigQuery Reports. Чтобы установить его, переходим по ссылке и нажимаем кнопку «+ бесплатно». В качестве примера я возьму случайно сгенерированную таблицу, которую мы использовали при загрузке CSV файла. Перейдя по этой ссылке, вы можете посмотреть и скопировать данные. После установки дополнения «OWOX BI BigQuery Reports», оно появится в списке доступных дополнений. Выбираем его в меню и кликаем на «Upload data to BigQuery».
2.2. В открывшимся диалоговом окне «Set destination & schema» указываем проект, набор данных и название таблицы, в которую будут загружены данные, а также описываем структуру таблицы аналогично тому, как мы это делали при загрузке данных из CSV файла.
Через несколько секунд после нажатия на «Start upload» в нижней части окна появится сообщение о том, что таблица успешно загружена. Кликнув на «Show table in BigQuery», вы перейдете в интерфейс Google BigQuery, в котором уже будет присутствовать только что загруженная таблица «load_from_spreadsheets».
Выводы
Мы рассмотрели три способа импорта данных в Google BigQuery:
- из CSV файла;
- из JSON файла;
- из Google Spreadsheets.
В дальнейшем вы сможете свободно работать с полученными массивами информации, например обpaбатывать данные из множества таблиц. Загружайте информацию из различных источников данных и используйте всю мощь Google BigQuery при ее обработке. Надеюсь, этот мануал будет вам полезен.
Комментарии:
Как добиться 100% пользы от контекстных объявлений с помощью расширений...
12 11 2025 2:44:11
При выборе SEO сервиса принято ориентироваться на объем ссылочной массы, но надежен ли такой подход? Большая база не всегда значит качество содержащихся в ней данных, а количество нередко обеспечивают спамные ссылки в отчетах....
11 11 2025 16:24:43
Все про kpi охват в социальных медиа или как оценивать эффективность работы SMM-специалиста?...
10 11 2025 2:38:47
Стартовый урок о том, как настроить визуализацию данных из Google ***ytics с помощью Google Spreadsheets...
09 11 2025 14:19:30
Если вам нужно быстро изменить небольшой объем контента на сайте без доступа к CMS, можно воспользоваться GTM. Как именно, читайте дальше....
08 11 2025 10:47:12
Впереди ещё черная пятница и новогодние праздники. И успех массовых распродаж можно повторить....
07 11 2025 0:50:48
Несколько полезных советов перед запуском. Tрaнcпорт и путешествия, ритейл, медиа и развлечения — тематики, в которых чаще используют мобильные приложения. Есть и другие факторы популярности приложений. Узнать!...
06 11 2025 23:57:18
Миллионы решили купить книгу гении и аутсайдеры на Amazon: удивительное исследование канадского журналиста...
05 11 2025 10:48:35
Flash онлайн объявлений в формат HTML5: нововведение гугл рекламы...
04 11 2025 17:27:52
Чем шокировала, радовала и удивляла реклама в социальных сетях и контекстная в Google в апреле 2021 года...
03 11 2025 11:12:33
Четыре важных шага для новичка...
02 11 2025 7:45:56
Проседание русскоязычной версии и риск потери трафика из-за дубля страниц — вот чего опасаются при внедрении украинской версии по умолчанию. Как этого избежать, читайте дальше....
01 11 2025 17:38:35
Чем радовала, смущала и шокировала реклама в социальных сетях в марте 2021-го...
31 10 2025 18:25:56
Такое обозрение очередной новинки Google от Сергея Бахаря...
30 10 2025 17:42:34
Статья будет полезна небольшим агентствам, которые мечтают работать с заграничными клиентами. Зачем нужно выходить за рубеж, если и в своей стране все идет неплохо, да и вообще — нет времени на продвижение на незнакомом рынке? Давайте разбираться вместе!...
29 10 2025 17:10:48
Наибольшее количество онлайн транзакций было получено по брендовым запросам женского белья...
28 10 2025 8:25:57
Как бизнес подстраивается под новые привычки покупателей в стиле фиджитал и O2O2O....
27 10 2025 15:16:44
Популярные скрипты Google Рекламы позволяют автоматизировать рутинные и монотонные процессы. Каждый скрипт состоит из функций, переменных, объектов, сущностей, селекторов, итераторов...
26 10 2025 19:15:57
Часто трафик проседает из-за удаления важных страниц или изменения URL-адресов. Анализ данных веб-архива позволит сохранить или восстановить посещаемость...
25 10 2025 10:59:46
Менять карьеру страшно, особенно после тридцати. Поэтому мы спросили людей, у которых это получилось — через какие трудности им пришлось пройти....
24 10 2025 5:51:36
Инструменты веб-мастера: что может заменить Google ***ytics?...
23 10 2025 23:46:46
О проблеме с передачей данных об A/B-тестах в Google ***ytics...
22 10 2025 0:20:52
Правила, требования, особенности. А ещё примеры, которые помогут создать правильную, с точки зрения поисковиков, рекламу. Читать!...
21 10 2025 2:13:13
Как работать с негативом и что делать, чтобы его было меньше/не было вовсе....
20 10 2025 4:51:20
Дублирование контента на разных сайтах, ориентированных на рынки разных стран, например, на публику Канады...
19 10 2025 3:56:16
Создатели алгоритмов соцсетей используют слабые места человеческого мозга. Случайно или намеренно, но они это делают. Как нам с этим жить?...
18 10 2025 9:36:28
Как создавать результативные кампании в Рекламной сети Яндекса...
17 10 2025 21:25:44
Основатель сервиса мобилографии EyeEm Рамзи Ризк рассказал об особенностях своего сервиса и будущем мобильных приложений....
16 10 2025 15:45:35
Обзор новой версии краулера Netpeak Spider 3.0, которая включает в себя около 300 изменений: от супер-фич до небольших фиксов в юзабилити....
15 10 2025 8:31:23
Распространенные ошибки продвижения B2B-компаний + стратегии того, как наращивать число активных подписчиков и потенциальных клиентов....
14 10 2025 1:44:42
Партнерская программа — это когда сервис дает партнеру вознаграждение за приведенных клиентов. Получить деньги и/или другие плюшки можно также по реферальной программе. Как это работает? Разбираемся на примерах....
13 10 2025 14:46:56
Как стать заметнее для поисковых роботов Яндекс и Google...
12 10 2025 4:12:37
Как трафик CDN повлиял на систему интернет-магазина — палим кейсы...
11 10 2025 8:48:46
Как изменить геовыдачу с помощью настроек Google, Яндекс или специальных дополнений...
10 10 2025 22:32:48
На одном из проектов был успешный рост трафика и транзакций, но в следующем месяце видимость по Яндексу снизилась до 30% и продолжала жестоко падать. ТИЦ упал с 450 до 425....
09 10 2025 8:41:32
О главном секрете поискового продвижения на основе исследования, которое проводилось в течение двух лет. Здесь отсеяны все проекты со слишком малой начальной посещаемостью и проекты с пробелами в аналитике. Узнайте больше, на чем строится рост трафика!...
08 10 2025 4:30:13
Стоит ли торопиться с переходом на новый формат объявлений? Эксперимент PPC-специалистов агентства Netpeak....
07 10 2025 1:14:35
Языковой закон требует, чтобы общение бизнеса с клиентами шло на украинском языке, если нет просьбы о другом приемлемом варианте. Что это означает для РРС, читайте дальше....
06 10 2025 20:32:20
21 апреля Google официально начнет учитывать совместимость с мобильными девайсами в качестве одного из факторов ранжирования сайта в мобильном поиске. Что это значит для владельцев сайтов и вебмастеров? Мы подготовили небольшой FAQ по теме для рубрики «SE...
05 10 2025 1:19:15
Клиникка использует лазеры и нуждается в продвижении. В специфических сферах привлечь потребителя впервые бывает сложнее и дороже, чем удержать его. Этот кейс о том, как повысить количество обращений новых клиентов с помощью видеорекламы...
04 10 2025 10:18:23
Чтобы эффективно продвигать товар или услугу в Instagram, необходимо повысить охват целевой аудитории. Одно из возможных решений — привлечение блогеров. Казалось бы, достаточно предложить платное размещение рекламы…...
03 10 2025 8:50:31
Отрывок из книги «Статистика: базовый курс в комиксах» Грейди Клейн и Алана Дебни...
02 10 2025 3:32:30
SMM от Netpeak — это разработки стратегий продвижения, механики конкурсов, медиапланирование и постоянная интеpaктивная связь с клиентом с помощью «Личного кабинета»....
01 10 2025 18:45:40
Всё что нужно знать про SMM...
30 09 2025 4:33:29
Медиаплан для контекстной рекламы малого и среднего бизнеса — как составить медиаплан мечты для рекламных кампаний без ложного понимания, что автоматические сервисы могут корректно обработать сырые данные и выдать результат...
29 09 2025 21:10:49
Почти 50 тыс. контактов за год принесли формы подписки и регистрации....
28 09 2025 1:41:15
Мануал по созданию удобного планировщика повторяющихся действий....
27 09 2025 11:28:57
Как сохранить статистику переходов из органики Google, а также автоматизировать отчетность: подробное руководство для технического специалиста....
26 09 2025 13:48:12
Образец товарного фида можно использовать при запуске динамических объявлений в поисковой сети Яндекса и Google, в кампаниях со смарт-баннерами в Яндекс.Директ, в динамических медийных кампаниях Google Рекламы, в товарной рекламе — с помощью Google Merchant Center....
25 09 2025 2:37:51
Вам точно нужен ВП? Тогда утвердите сабж, чтобы умещался в три слова, скиньте линк и дескрипшн и распознайте канал-оборотень. Полная подборка сленговых слов, значение которых не всегда найдете в Google...
24 09 2025 4:17:53
Еще:
понять и запомнить -1 :: понять и запомнить -2 :: понять и запомнить -3 :: понять и запомнить -4 :: понять и запомнить -5 :: понять и запомнить -6 :: понять и запомнить -7 ::