
Это руководство содержит различные способы создания таблицы в Google BigQuery. Вы увидите, что вы можете создать таблицу с помощью следующих методов:
- Команда CREATE TABLE
- Команда CREATE TABLE из запроса SELECT
- Загрузка из CSV
- Загрузка из Google Docs
Вы также увидите примеры CREATE TABLE IF NOT EXISTS
синтаксиса. Эта обработка предотвращает ошибки, если имя таблицы уже используется.
Перед началом
О чем следует помнить, прежде чем вы сможете начать создавать свои таблицы в BigQuery.
Разрешения и роли
Для создания таблиц в BigQuery пользователю должны быть предоставлены следующие разрешения:
bigquery.tables.create
bigquery.tables.updateData
bigquery.jobs.create
Чтобы предоставить эти три разрешения, вы можете назначить две роли в разделе IAM и администратор:
- Редактор данных BigQuery (или Владелец данных BigQuery)
- Пользователь задания BigQuery (или Пользователь BigQuery)
В качестве альтернативы роли владельца или администратора BigQuery также позволят пользователю создавать таблицы. Однако это мощные роли, поэтому предоставляйте их только в случае необходимости.

Если у пользователя отсутствует какое-либо из этих разрешений, вы получите следующую ошибку:
Отказано в доступе: Проект <проект>: У пользователя нет разрешения <проект><разрешение> в проекте <разрешение><проект>.
Набор данных
Набор данных уже должен быть создан, прежде чем вы сможете создать таблицу. Если набор данных отсутствует, вы получите следующую ошибку:
Не найдено: Набор данных <проект>:<проект><набор данных>
В BigQuery мы следуем этой иерархии: Project > Dataset > Table
Создайте таблицу С помощью скрипта CREATE TABLE
Вот пример сценария для создания таблицы в BigQuery.
Проект: as-blog
Набор данных: test
таблица песочницы: customers_test
CREATE TABLE as_blog.test.(Придумайте название таблицы)
(
CUSTOMER_ID INT64,
CUSTOMER_NAME STRING,
)
-- PARTITION BY (Может быть по дате)
-- CLUSTER BY City
;
PARTITION BYВ и CLUSTER BY являются необязательными.
Вы можете выбрать один из следующих вариантов Типы данных BigQuery для каждой колонки:
- INT64
- NUMERIC
- FLOAT64
- STRING
- BOOL
- BYTES
- DATE
- TIME
- DATETIME
- TIMESTAMP
- ARRAY
- STRUCT
- GEOGRAPHY
Что такое Schema?
Schema нужна для определения столбца
BigQuery может автоматически определить схему, если вы создаете таблицу из существующего файла, такого как CSV, Google Таблицы или JSON.

Столбец схемы: Добавление каждого поля вручную
Если вы решите вручную вставить каждое поле, добавьте следующую информацию для каждого столбца:
- Name
- Type
- Mode (REQUIRED, NULLABLE, or REPEATABLE)
Создать таблицу из CSV
Вы можете создать таблицу из CSV-файла в BigQuery с помощью консоли GCP. Этот метод создает таблицу и одновременно вставляет записи.
Я буду использовать этот CSV в качестве примера:
EmployeeID,FirstName,LastName,HireDate,City,Salary,Terminated 1,Sun,Bak,2020-01-28,Seoul,120000,F 2,Nomi,Marks,2020-02-11,San Francisco,110000,T 3,Kala,Dandekar,2020-03-31,Mumbai,140000,F 4,Riley,Blue,2020-04-18,London,90000,F 5,Wolfgang,Bogdanow,2020-05-20,Berlin,115000,T 6,Lito,Rodriguez,2020-06-19,Mexico City,250000,F 7,Will,Gorski,2020-07-04,Chicago,180000,T
Откройте окно Создать схему таблицы
Нажмите на набор данных в левой части консоли.

После выбора набора данных вы увидите более подробную информацию в правом нижнем углу консоли.
Нажмите на кнопку Создать таблицу.

При нажатии на эту кнопку откроется окно “Создать таблицу“.
Заполните первый раздел:
- Источник
- Создайте таблицу из: Загрузка / Диск (если на диске Google)
- Выберите URI файла / диска: выберите свой собственный файл / ссылку на файл на Google Диске.
- Формат файла: CSV
- Место назначения
- Поиск проекта
- Название проекта: выберите свой проект
- Имя набора данных: выберите свой набор данных
- Имя таблицы: назовите свою собственную таблицу
При заполнении раздела Schema я рекомендую включить автоматическое определение.

Создать таблицу из CSV – Пример результата
После настройки таблицы для этой задачи будет создано задание. Обработка обычно занимает несколько секунд. Вы также можете просмотреть историю заданий, чтобы отслеживать статус задания.
После успешного создания таблицы образец таблицы должен выглядеть следующим образом:
