google.cloud.gcp_bigquery_dataset – Создаёт набор данных GCP
Примечание
Этот плагин входит в коллекцию google.cloud (версия 1.0.2).
Для его установки используйте: ansible-galaxy collection install google.cloud.
Для использования в книге задач укажите: google.cloud.gcp_bigquery_dataset.
Обзор
- Наборы данных позволяют организовать и контролировать доступ к вашим таблицам.
Требования
Ниже перечислены требования, необходимые на хосте, который выполняет этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | ||
|---|---|---|---|---|
| access список / элементы=словарь | Массив объектов, определяющих доступ к набору данных для одного или нескольких сущностей. | |||
| domain строка | Домен, которому разрешен доступ. Все пользователи, авторизованные с указанным доменом, получат указанный доступ. | |||
| group_by_email строка | Электронный адрес группы Google, которой разрешен доступ. | |||
| role строка | Описывает права, предоставленные пользователю, указанному в другом элементе объекта доступа. Поддерживаются базовые, предопределённые и пользовательские роли. Предопределённые роли, имеющие эквивалентные базовые роли, заменяются API на их базовые аналоги. См. [официальную документацию](https://cloud.google.com/bigquery/docs/access-control). | |||
| special_group строка | Специальная группа, которой разрешен доступ. Возможные значения включают: * `projectOwners`: Владельцы проекта. * `projectReaders`: Читатели проекта. * `projectWriters`: Писатели проекта. * `allAuthenticatedUsers`: Все авторизованные пользователи BigQuery. | |||
| user_by_email строка | Электронный адрес пользователя, которому разрешен доступ. Например: fred@example.com. | |||
| view словарь | Просмотр из другого набора данных, которому разрешен доступ. Запросы, выполняемые против этого представления, будут иметь доступ для чтения к таблицам в этом наборе данных. Поле role не требуется, когда это поле установлено. Если это представление обновляется любым пользователем, доступ к представлению необходимо повторно предоставить через операцию обновления. | |||
| dataset_id строка / обязательно | Идентификатор набора данных, содержащего эту таблицу. | |||
| project_id строка / обязательно | Идентификатор проекта, содержащего эту таблицу. | |||
| table_id строка / обязательно | Идентификатор таблицы. Идентификатор должен содержать только буквы (a-z, A-Z), цифры (0-9) или символы нижнего подчеркивания. Максимальная длина — 1024 символа. | |||
| auth_kind строка / обязательно |
| Тип используемых учетных данных. | ||
| dataset_reference словарь / обязательно | Ссылка, идентифицирующая набор данных. | |||
| dataset_id строка / обязательно | Уникальный идентификатор этого набора данных без имени проекта. Идентификатор должен содержать только буквы (a-z, A-Z), цифры (0-9) или символы нижнего подчеркивания. Максимальная длина — 1024 символа. | |||
| project_id строка | Идентификатор проекта, содержащего этот набор данных. | |||
| default_encryption_configuration словарь | Ключ шифрования по умолчанию для всех таблиц в наборе данных. После установки этого свойства все вновь созданные разнесенные таблицы в наборе данных будут иметь ключ шифрования, установленный в это значение, если запрос на создание таблицы (или запрос) не переопределяет ключ. | |||
| kms_key_name строка / обязательно | Описывает ключ шифрования Cloud KMS, который будет использоваться для защиты целевой таблицы BigQuery. Служебный аккаунт BigQuery, связанный с вашим проектом, должен иметь доступ к этому ключу шифрования. | |||
| default_partition_expiration_ms целое число | Срок действия по умолчанию для всех разнесенных таблиц в наборе данных в миллисекундах. После установки этого свойства все вновь созданные разнесенные таблицы в наборе данных будут иметь свойство expirationMs в настройках timePartitioning, установленное в это значение, и изменение значения будет влиять только на новые таблицы, а не на существующие. Хранилище в разделе будет иметь срок действия, равный времени раздела плюс это значение. Установка этого свойства отменяет использование defaultTableExpirationMs для разнесенных таблиц: для каждой новой разнесенной таблицы будет использоваться только одно из defaultTableExpirationMs и defaultPartitionExpirationMs. Если при создании или обновлении разнесенной таблицы вы явно задаёте timePartitioning.expirationMs, это значение имеет приоритет над временем истечения разнесенных таблиц по умолчанию, указанным этим свойством. | |||
| default_table_expiration_ms целое число | Срок службы по умолчанию всех таблиц в наборе данных в миллисекундах. Минимальное значение — 3600000 миллисекунд (один час). После установки этого свойства все новые таблицы в наборе данных будут иметь свойство expirationTime, установленное на время создания плюс значение этого свойства, а изменение значения будет влиять только на новые таблицы, а не на существующие. Когда достигается expirationTime для данной таблицы, эта таблица удаляется автоматически. Если expirationTime для таблицы изменяется или удаляется до истечения срока действия таблицы, или если при создании таблицы вы явно задаёте expirationTime, это значение имеет приоритет над временем истечения по умолчанию, указанным этим свойством. | |||
| description строка | Описание набора данных для удобства пользователей. | |||
| env_type строка | Указывает, в какой среде Ansible вы выполняете этот модуль. Это не следует устанавливать, если вы не знаете, что делаете. Это изменяет только строку User Agent для всех запросов к API. | |||
| friendly_name строка | Описание набора данных. | |||
| labels словарь | Метки, связанные с этим набором данных. Их можно использовать для организации и группировки наборов данных. | |||
| location строка | Значение по умолчанию: "US" | Географическое расположение, в котором должен находиться набор данных. См. [официальную документацию](https://cloud.google.com/bigquery/docs/dataset-locations). Есть два типа расположений: региональные или многорегиональные. Региональное расположение — конкретное географическое место, например, Токио, а многорегиональное расположение — большая географическая область, например, Соединённые Штаты, которая содержит как минимум два географических места. Значение по умолчанию — многорегиональное расположение `US`. Изменение этого значения заставляет создать новый ресурс. | ||
| name строка | Имя набора данных. | |||
| project строка | Проект Google Cloud Platform, который необходимо использовать. | |||
| scopes список / элементы=строка | Массив используемых областей действия | |||
| service_account_contents jsonarg | Содержимое файла JSON служебного аккаунта, либо в виде словаря, либо как JSON-строка, его представляющая. | |||
| service_account_email строка | Необязательный адрес электронной почты служебного аккаунта, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. | |||
| service_account_file путь | Путь к файлу JSON служебного аккаунта, если в качестве типа выбран serviceaccount. | |||
| state строка |
| Нужно ли, чтобы данный объект существовал в GCP | ||
Примечания
Примечание
- Ссылка на API: https://cloud.google.com/bigquery/docs/reference/rest/v2/datasets
- Вводные сведения о наборах данных: https://cloud.google.com/bigquery/docs/datasets-intro
- для аутентификации можно установить service_account_file, используя переменную среды
gcp_service_account_file. - для аутентификации можно установить service_account_contents, используя переменную среды
GCP_SERVICE_ACCOUNT_CONTENTS. - Для аутентификации можно установить service_account_email, используя переменную среды
GCP_SERVICE_ACCOUNT_EMAIL. - Для аутентификации можно установить auth_kind, используя переменную среды
GCP_AUTH_KIND. - Для аутентификации можно установить scopes, используя переменную среды
GCP_SCOPES. - Значения переменных среды будут использоваться только в том случае, если значения в playbook не заданы.
- Параметры service_account_email и service_account_file взаимоисключающие.
Примеры
- name: create a dataset
google.cloud.gcp_bigquery_dataset:
name: my_example_dataset
dataset_reference:
dataset_id: my_example_dataset
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание | ||
|---|---|---|---|---|
| access complex | success | Массив объектов, определяющих доступ к набору данных для одного или нескольких сущностей. | ||
| domain string | success | Домен, которому предоставляется доступ. Любые пользователи, авторизованные с указанным доменом, получат указанный доступ. | ||
| groupByEmail string | success | Адрес электронной почты группы Google, которой предоставляется доступ. | ||
| role string | success | Описывает права, предоставляемые пользователю, указанному в другом члене объекта доступа. Поддерживаются базовые, предопределенные и пользовательские роли. Предопределенные роли, имеющие эквивалентные базовые роли, меняются API на их базовые аналоги. См. [официальную документацию](https://cloud.google.com/bigquery/docs/access-control). | ||
| specialGroup string | success | Специальная группа, которой предоставляется доступ. Возможные значения включают: * `projectOwners`: Владельцы проекта. * `projectReaders`: Читатели проекта. * `projectWriters`: Пишущие в проект. * `allAuthenticatedUsers`: Все авторизованные пользователи BigQuery. | ||
| userByEmail string | success | Адрес электронной почты пользователя, которому предоставляется доступ. Например: fred@example.com. | ||
| view complex | success | Просмотр из другого набора данных, которому предоставляется доступ. Запросы, выполняемые над этим представлением, будут иметь доступ для чтения к таблицам в этом наборе данных. Поле role не требуется, когда установлено это поле. Если представление обновляется любым пользователем, доступ к представлению необходимо предоставить повторно с помощью операции обновления. | ||
| datasetId string | success | Идентификатор набора данных, содержащего эту таблицу. | ||
| projectId string | success | Идентификатор проекта, содержащего эту таблицу. | ||
| tableId string | success | Идентификатор таблицы. Идентификатор должен содержать только буквы (a-z, A-Z), цифры (0-9) или символы подчеркивания. Максимальная длина — 1024 символа. | ||
| creationTime integer | success | Время создания этого набора данных в миллисекундах с начала эпохи. | ||
| datasetReference complex | success | Ссылка, идентифицирующая набор данных. | ||
| datasetId string | success | Уникальный идентификатор этого набора данных без имени проекта. Идентификатор должен содержать только буквы (a-z, A-Z), цифры (0-9) или символы подчеркивания. Максимальная длина — 1024 символа. | ||
| projectId string | success | Идентификатор проекта, содержащего этот набор данных. | ||
| defaultEncryptionConfiguration complex | success | Ключ шифрования по умолчанию для всех таблиц в наборе данных. После установки этого свойства все вновь созданные разбиения таблиц в наборе данных будут иметь ключ шифрования, установленный в это значение, если запрос на создание таблицы (или запрос) не переопределит ключ. | ||
| kmsKeyName string | success | Описание ключа шифрования Cloud KMS, который будет использоваться для защиты целевой таблицы BigQuery. Учетной записи службы BigQuery, связанной с вашим проектом, требуется доступ к этому ключу шифрования. | ||
| defaultPartitionExpirationMs integer | success | Срок действия разбиения по умолчанию для всех разбиений таблиц в наборе данных в миллисекундах. После установки этого свойства все вновь созданные разбиения таблиц в наборе данных будут иметь свойство expirationMs в настройках timePartitioning, установленное в это значение, и изменение значения повлияет только на новые таблицы, а не на существующие. Хранилище в разбиении будет иметь срок действия, равный времени разбиения плюс это значение. Установка этого свойства переопределяет использование defaultTableExpirationMs для разбиений таблиц: только одно из defaultTableExpirationMs и defaultPartitionExpirationMs будет использоваться для любой новой разбиения таблицы. Если при создании или обновлении разбиения таблицы явно указать timePartitioning.expirationMs, это значение будет иметь приоритет над сроком действия разбиения по умолчанию, указанным в этом свойстве. | ||
| defaultTableExpirationMs integer | success | Срок действия всех таблиц в наборе данных в миллисекундах. Минимальное значение составляет 3600000 миллисекунд (один час). После установки этого свойства все вновь созданные таблицы в наборе данных будут иметь свойство expirationTime, установленное в время создания плюс значение в этом свойстве, и изменение значения повлияет только на новые таблицы, а не на существующие. Когда достигается expirationTime для данной таблицы, эта таблица автоматически удаляется. Если expirationTime таблицы изменяется или удаляется до истечения срока действия таблицы, или если при создании таблицы явно указать expirationTime, это значение имеет приоритет над сроком действия по умолчанию, указанным в этом свойстве. | ||
| description string | success | Пользовательское описание набора данных. | ||
| etag string | success | Хэш ресурса. | ||
| friendlyName string | success | Дескриптивное имя набора данных. | ||
| id string | success | Полное, уникальное имя набора данных в формате projectId:datasetId. Имя набора данных без имени проекта приведено в поле datasetId. | ||
| labels dictionary | success | Метки, связанные с этим набором данных. Вы можете использовать их для организации и группировки наборов данных. | ||
| lastModifiedTime integer | success | Дата последнего изменения этого набора данных или любой из его таблиц в миллисекундах с начала эпохи. | ||
| location string | success | Географическое расположение, где должен храниться набор данных. См. [официальную документацию](https://cloud.google.com/bigquery/docs/dataset-locations). Существует два типа расположений: региональное или многорегиональное. Региональное расположение — это конкретное географическое место, например, Токио, а многорегиональное расположение — это большая географическая область, например, США, которая содержит по крайней мере два географических места. Значение по умолчанию — многорегиональное расположение «США». Изменение этого параметра приводит к созданию нового ресурса. | ||
| name string | success | Имя набора данных. | ||
Авторы
- Google Inc. (@googlecloudplatform)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/google/cloud/gcp_bigquery_dataset_module.html