При работе с функцией подключенных таблиц, которая представляет собой коннектор данных, вы сможете просматривать, анализировать, представлять в наглядном виде и отправлять другим пользователям миллиарды строк данных из своих таблиц. С помощью подключенных таблиц также можно решать следующие задачи:
- работать в знакомом интерфейсе совместно с партнерами, аналитиками и другими пользователями;
- разрешить сотрудникам делегировать доступ соавторам;
- использовать единый источник данных для анализа без необходимости экспортировать дополнительные сведения в виде CSV-файлов;
- анализировать данные в пределах периметра безопасности, доступ к которому ограничен на основе различных атрибутов, например IP-адреса и информации об устройстве пользователя.
Выполнять запросы можно из подключенных таблиц в BigQuery или Looker вручную или по заданному расписанию. Сервис "Google Таблицы" сохраняет результаты этих запросов в таблице, чтобы вы могли проанализировать их и поделиться ими. Посмотрите эти видеоуроки, чтобы узнать больше об использовании подключенных таблиц с BigQuery.
Вы можете посмотреть события запросов подключенных таблиц в событиях журнала Диска.
Как настроить BigQuery для анализа данных
Развернуть раздел | Свернуть все
Шаг 1. Включите Google CloudУбедитесь, что сервис Google Cloud включен в вашей организации. Инструкции можно найти в статье Как узнать, какие приложения включены для пользователя, группы или организационного подразделения. При необходимости включите Google Cloud. Подробнее…
Инструкции по использованию функции "Подключенные таблицы" с BigQuery приведены в статье Как начать работу с данными BigQuery в Google Таблицах.
Роли управления учетными данными и доступом (IAM) используются для того, чтобы назначать пользователям разрешения на доступ к определенным данным. Чтобы пользователь мог добавить или использовать проект BigQuery в Таблицах, в BigQuery у него должна быть роль IAM bigquery.user или bigquery.jobUser и bigquery.dataViewer.
Подробнее о стандартных ролях IAM в BigQuery…
Доступные пользователям действия зависят от роли IAM и разрешений на работу с таблицей, а не от разрешений, которые имеет владелец таблицы. Пользователи не из организации могут работать с вашими таблицами, только если вы предоставите на это разрешение.
Действия в Таблицах | Необходимая роль IAM в BigQuery | Необходимые разрешения в Таблицах |
---|---|---|
Создание диаграмм, сводных таблиц, формул и извлечение данных с помощью таблиц или представлений BigQuery |
bigquery.user илиbigquery.jobUser и bigquery.dataViewer |
Редактор |
Просмотр диаграмм, сводных таблиц, формул, извлеченных данных и предварительный просмотр данных из BigQuery | Не требуется | Редактор или читатель |
Создание или изменение пользовательского запроса BigQuery |
bigquery.user или bigquery.jobUser и bigquery.dataViewer |
Редактор |
Просмотр пользовательского запроса BigQuery | Не требуется | Редактор или читатель |
Обновление данных из BigQuery |
bigquery.user или bigquery.jobUser и bigquery.dataViewer |
Редактор |
Роли IAM для наборов данных назначаются в консоли BigQuery. Подробнее о том, как настроить доступ к ресурсам с помощью IAM…
Помимо использования IAM для управления доступом пользователей к данным BigQuery, вы также можете с помощью Управления зонами безопасности VPC создать периметр безопасности, к которому ограничивается доступ на основе различных атрибутов, например IP-адреса и информации об устройстве пользователя. Пользователи смогут с помощью подключенных таблиц получать доступ к данным BigQuery, защищенным Управлением зонами безопасности VPC, только если вы настроите периметр таким образом, чтобы разрешить Таблицам копировать результаты запросов в таблицы пользователей. Подробнее об управлении доступом…
Как настроить Looker для анализа данных
Чтобы использовать подключенные таблицы с Looker, в консоли администратора Google необходимо включить доступ к сервисам, у которых нет отдельного переключателя. Дополнительные сведения приведены в статье Как управлять сервисами, у которых нет отдельного переключателя. Кроме того, администратор Looker должен сначала включить подключенные таблицы в интерфейсе администратора Looker. Подробнее об использовании подключенных таблиц для Looker…
Как разрешить пользователям делегировать доступ к подключенным таблицам для BigQuery
Вы можете разрешить сотрудникам делегировать доступ к подключенным таблицам для BigQuery, чтобы они могли совместно с другими пользователями анализировать данные и выполнять запросы.
Чтобы делегировать доступ, пользователю нужно предоставить соавтору доступ к таблице. Делегирование не допускается, если таблица доступна всем, у кого есть ссылка. Узнать, кто делегировал доступ, а кто выполнил запрос, можно в журнале событий Диска или журналах аудита Cloud.
Как включить или отключить делегированный доступ
-
Войдите в консоль администратора Google.
Войдите в аккаунт администратора (он не заканчивается на @gmail.com).
-
В консоли администратора нажмите на значок меню ПриложенияGoogle WorkspaceДиск и ДокументыФункции и приложения.
- Рядом с названием раздела Делегированный доступ к подключенным таблицам нажмите "Изменить" .
- Чтобы применить параметр только к части пользователей, сбоку выберите организационное подразделение (часто используется для отделов) или группу конфигурации (более сложный вариант). Инструкции
Настройки группы переопределяют значения для организационных подразделений. Подробнее…
- В разделе Настройки делегирования установите или снимите флажок Разрешить пользователям с правами на редактирование таблицы включать делегированный доступ к подключенным таблицам.
- Если вы настраиваете организационное подразделение или группу, выберите Делегирование доступно только пользователям из определенного организационного подразделения или группы.
- Чтобы разрешить делегировать доступ любому пользователю с доступом к таблице, выберите Делегирование доступно всем пользователям.
Этот параметр распространяется и на внешних пользователей, у которых есть доступ к таблице.
-
Нажмите Сохранить. Также можно нажать Переопределить для организационное подразделение.
Чтобы восстановить унаследованное значение, нажмите Наследовать (или Сбросить настройки для группы).
Если вы включите делегирование, предоставьте пользователям инструкции по делегированию доступа к таблице.
Как посмотреть события журнала для подключенных таблиц
Все обращения подключенных таблиц к данным BigQuery и Looker регистрируются в журнале событий Диска. Записи также регистрируются в журналах аудита Cloud в случае доступа к BigQuery и в истории событий системы в случае доступа к Looker. В журналах будет записано, кто и когда получал данные.
Развернуть раздел | Свернуть все
Как анализировать события журнала Диска с помощью Reports APIО том, как анализировать события журнала Диска в консоли администратора Google, можно узнать в разделе Просмотр данных о событиях в журнале Диска.
Используя Reports API, вы можете посмотреть события запросов данных из подключенных таблиц. С помощью следующего примера можно получить все события Диска по типу события запроса данных из подключенных таблиц:
GET https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/drive?eventName=connected_sheets_query
Полный ответ JSON на этот вызов API приведен в разделе "Полный ответ JSON".
В качестве исполнителя (actor) будет указан пользователь, который отправил запрос.
"actor": {
"email": "[email protected]",
"profileId": "user’s unique Google Workspace profile ID"
}
В Таблицах предоставляется дополнительная информация о выполненном запросе в виде параметров.
"parameters": [
{
"name": "execution_trigger",
"value": "sheets_ui"
},
{
"name": "query_type",
"value": "big_query"
},
{
"name": "data_connection_id",
"value": "The Cloud project ID"
},
{
"name": "execution_id",
"multiValue": [
"jobs/big_query_job_id"
]
},
{
"name": "delegating_principal",
"value": "[email protected]"
},
Значение поля execution_trigger
задается на основе того, как запрос вызывается из Таблиц:
Ярлык | Как выполняется запрос |
---|---|
sheets_ui | Вручную с помощью интерфейса Таблиц. |
schedule | С помощью функции запланированного обновления в Таблицах. |
api | С помощью Sheets API. |
apps-script | С помощью Apps Script. |
Значение поля
query_type
задается на основе коннектора данных.Ярлык | Коннектор данных |
---|---|
big_query | BigQuery |
looker | Looker |
Значение поля data_connection_id
задается на основе идентификатора передачи данных. Для BigQuery используется идентификатор платежного проекта. Для Looker используется URL экземпляра.
Значение поля execution_id
задается на основе идентификатора выполненного запроса.
Структура значения | Объект запроса |
---|---|
jobs/<идентификатор_задания> | Задание BigQuery |
datasets/<название_набора_данных>/tables/<название_таблицы> | Таблица BigQuery |
query_tasks/<идентификатор_задания_запроса> | Запрос Looker |
Адрес электронной почты пользователя, чьи учетные данные использовались, указан в журналах в поле delegating_principal
.
Полный ответ JSON
{
"kind": "admin#reports#activity",
"id": {
"time": "2022-10-26T17:33:51.929Z",
"uniqueQualifier": "report’s unique ID",
"applicationName": "drive",
"customerId": "ABC123xyz"
},
"actor": {
"email": "[email protected]",
"profileId": "user’s unique Google Workspace profile ID"
},
"events": [
{
"type": "access",
"name": "connected_sheets_query",
"parameters": [
{
"name": "execution_trigger",
"value": "sheets_ui"
},
{
"name": "query_type",
"value": "big_query"
},
{
"name": "data_connection_id",
"value": "The Cloud project ID"
},
{
"name": "execution_id",
"multiValue": [
"jobs/big_query_job_id"
]
},
{
"name": "doc_id",
"value": "aBC-123-xYz"
},
{
"name": "doc_type",
"value": "spreadsheet"
},
{
"name": "is_encrypted",
"boolValue": false
},
{
"name": "doc_title",
"value": "Document title"
},
{
"name": "visibility",
"value": "shared_internally"
},
{
"name": "actor_is_collaborator_account",
"boolValue": false
},
{
"name": "delegating_principal",
"value": "[email protected]"
},
{
"name": "owner",
"value": "[email protected]"
},
{
"name": "owner_is_shared_drive",
"boolValue": false
},
{
"name": "owner_is_team_drive",
"boolValue": false
}
]
}
]
}
У каждой таблицы есть идентификатор, который можно найти в ее URL. Записи в журнале в формате BigQueryAuditMetadata содержат идентификатор таблицы, из которой был отправлен запрос на доступ к данным BigQuery.
Вы можете создавать запросы, чтобы получать и анализировать журналы, используя Logs Explorer в консоли Google Cloud. В Logs Explorer введите:
protoPayload.metadata.firstPartyAppMetadata.sheetsMetadata.docId
!= NULL_VALUE
Будут выведены записи с непустым идентификатором таблицы, как показано в следующем примере:
metadata: {
@type: "type.googleapis.com/google.cloud.audit.BigQueryAuditMetadata"
firstPartyAppMetadata: {
sheetsMetadata: {
docId: "aBC-123_xYz"
}
}
Сервис "Google Таблицы" добавляет информацию к заданиям запросов, используя ярлыки заданий. С их помощью можно получить больше данных для анализа, как показано в следующем примере:
jobInsertion: {
job: {
jobConfig: {
labels: {
sheets_access_type: "normal"
sheets_connector: "connected_sheets"
sheets_trigger: "user"
}
Значение поля sheets_trigger задается на основе того, как запрос вызывается из Таблиц:
Ярлык | Как выполняется запрос |
---|---|
user | Вручную с помощью интерфейса Таблиц. |
schedule | С помощью функции запланированного обновления в Таблицах. |
api | С помощью Sheets API. |
apps-script | С помощью Apps Script. |
Например, чтобы найти записи, соответствующие запланированным обновлениям подключенных таблиц, используйте следующий запрос в Logs Explorer:
protoPayload.metadata.firstPartyAppMetadata.sheetsMetadata.docId
!= NULL_VALUE
protoPayload.metadata.jobInsertion.job.jobConfig.labels.sheets_trigger
= "schedule"
Если был включен делегированный доступ, в журналах можно найти адрес электронной почты пользователя, чьи учетные данные использовались для выполнения запроса. Кроме того, там будет указан адрес электронной почты пользователя, который активировал запрос, как показано в примере ниже.
"authenticationInfo": {
"principalEmail": "[email protected]",
"serviceAccountDelegationInfo": [
{
"firstPartyPrincipal": {
"principalEmail": "[email protected]",
"serviceMetadata": {
"service": "sheets"
}
}
}
]
}
Примечание. Поле serviceAccountDelegationInfo
будет присутствовать только в том случае, если для запроса использовался делегированный доступ. В таком случае в поле principalEmail
будет указан пользователь, который делегировал доступ.
Подробнее о том, как использовать Logs Explorer и как создавать запросы в Logs Explorer…
Подробнее о журналах аудита BigQuery, идентификаторах таблиц, формате BigQueryAuditMetadata, SheetsMetadata, предоставлении доступа к таблицам и Google Sheets API…
- В экземпляре Looker нажмите слева Explore (Обзор)History (История).
- В разделе Find a Field (Поиск поля) введите API Client Name (Название клиента API) и нажмите Filter (Фильтр) , чтобы добавить это поле в набор данных.
- В разделе Filters (Фильтры) выберите is equal to (равно), а в поле рядом укажите Connected Sheets (Подключенные таблицы).
- В разделе Find a Field введите Connected Sheets Spreadsheets ID (Идентификатор таблиц функции "Подключенные таблицы"), чтобы добавить это поле в набор данных.
- В разделе Find a Field укажите Connected Sheets Trigger (Триггер подключенных таблиц), чтобы добавить это поле в набор данных.
- В разделе Find a Field введите History Slug (Часть истории), чтобы добавить это поле в набор данных.
- Значение поля History Slug равно значению идентификатора задания запроса (QUERY_TASK_ID), которое записывается для событий журнала Диска. Вы можете добавить фильтр по этому полю, если понадобится найти определенный запрос в журнале Диска.
- Чтобы добавить в набор данных другие поля, например User Name (Имя пользователя) или History Created Date (Дата создания истории), выберите их.
- При необходимости выберите фильтры.
Например, можно добавить для поля History Created Date фильтр is in the past 7 days (в течение последних 7 дней) или выбрать определенное значение Spreadsheet ID, чтобы получить только те запросы Looker, которые были активированы из таблицы с определенным идентификатором. - Нажмите Выполнить.
Устранение неполадок
Развернуть раздел | Свернуть все
В случае сбоя ТаблицВ верхней части таблицы нажмите Отправить отзыв.
Нажмите Обновить в файлах Таблиц, чтобы обновить данные BigQuery в подключенных таблицах. Чтобы обновить все элементы подключенных таблиц, выберите ДанныеКоннекторы данныхОбновить данныеОбновить все.
Если вы настроили определенные разрешения для работы с файлами Таблиц в организации, например ограничили доступ для пользователей не из организации, то такие пользователи не смогут открывать файлы подключенных таблиц. Подробнее о том, как настроить разрешения совместного доступа для пользователей Диска…
Если проблемы все равно возникают, узнайте, как устранить неполадки с данными BigQuery в Google Таблицах и с подключенными таблицами для Looker.
Статьи по теме
- Как начать работу с данными BigQuery в Google Таблицах
- Как сортировать и фильтровать данные BigQuery в Google Таблицах
- Как анализировать и обновлять данные BigQuery в Google Таблицах с помощью подключенных листов
- Как создавать и редактировать запросы данных BigQuery
- Документация по BigQuery
- Платные услуги поддержки Google Cloud