Vous pouvez consulter, analyser, visualiser et partager des milliards de lignes de données à partir d'une feuille de calcul grâce aux feuilles connectées, le connecteur de données Sheets. Vous pouvez également utiliser les feuilles connectées pour :
- Collaborez avec des partenaires, des analystes ou d'autres intervenants dans une interface de feuille de calcul que vous connaissez.
- permettre aux utilisateurs de déléguer leur accès à des collaborateurs ;
- garantir une source unique d'information pour l'analyse de données, sans avoir à exporter de fichiers .csv ;
- analyser les données d'un périmètre qui limite l'accès en fonction d'attributs tels que l'adresse IP de l'utilisateur et des informations sur l'appareil.
Vous pouvez exécuter des requêtes depuis des feuilles connectées sur BigQuery ou Looker, manuellement ou selon un calendrier défini. Sheets enregistre les résultats de ces requêtes dans votre feuille de calcul afin que vous puissiez les analyser et les partager. Regardez ces tutoriels vidéo pour en savoir plus sur l'utilisation des feuilles connectées avec BigQuery.
Vous pouvez consulter les événements de requête des feuilles connectées dans les événements de journaux Drive.
Configurer BigQuery pour analyser les données
Ouvrir la section | Tout réduire
Étape 1 : Activez Google CloudAssurez-vous que Google Cloud est activé pour votre organisation. Pour obtenir des instructions, consultez Afficher les applications activées pour un utilisateur, un groupe ou une unité organisationnelle. Si vous devez activer Google Cloud, consultez Activer ou désactiver Google Cloud pour les utilisateurs.
Pour découvrir comment utiliser les feuilles connectées avec BigQuery, consultez Premiers pas avec les données BigQuery dans Google Sheets.
Les rôles IAM (gestion de l'authentification et des accès) vous permettent d'accorder des autorisations indiquant à quelles données les utilisateurs ont accès. Pour qu'un utilisateur puisse ajouter ou utiliser un projet BigQuery dans Sheets, il doit avoir rôle IAM bigquery.user (ou les rôles bigquery.jobUser et bigquery.dataViewer) dans BigQuery.
Pour en savoir plus sur ces rôles, consultez Rôles IAM prédéfinis dans BigQuery.
Les actions qu'un utilisateur peut effectuer dans Sheets dépendent de son rôle IAM et de ses autorisations (pas de celles du propriétaire de la feuille de calcul). Les personnes extérieures à votre organisation ne peuvent interagir avec Sheets dans votre organisation que si vous les y autorisez.
Actions dans Sheets | Rôle IAM requis dans BigQuery | Autorisations requises dans Sheets |
---|---|---|
Créer des graphiques, tableaux croisés dynamiques, formules ou extraits à l'aide de tables ou de vues BigQuery |
bigquery.user oubigquery.jobUser et bigquery.dataViewer |
Éditeur |
Afficher les graphiques, tableaux croisés dynamiques, formules, extraits ou aperçus créés à partir des données BigQuery | Aucun | Éditeur ou lecteur |
Créer ou modifier une requête BigQuery personnalisée |
bigquery.user ou bigquery.jobUser et bigquery.dataViewer |
Éditeur |
Afficher une requête BigQuery personnalisée | Aucun | Éditeur ou lecteur |
Actualiser les données de BigQuery |
bigquery.user ou bigquery.jobUser et bigquery.dataViewer |
Éditeur |
Vous pouvez accorder des rôles IAM à vos ensembles de données dans la console BigQuery. Pour en savoir plus, consultez Contrôler l'accès aux ressources avec IAM.
En plus d'utiliser IAM pour autoriser les utilisateurs à accéder aux données BigQuery, vous pouvez utiliser VPC Service Controls pour créer un périmètre de service qui restreint l'accès en fonction d'attributs tels que l'adresse IP de l'utilisateur et des informations sur l'appareil. Les utilisateurs peuvent utiliser des feuilles connectées pour accéder aux données BigQuery protégées par VPC Service Controls uniquement si vous configurez le périmètre pour autoriser Sheets à copier les résultats de requête dans les feuilles de calcul des utilisateurs. Pour en savoir plus, consultez Contrôle des accès.
Configurer Looker pour analyser les données
Pour utiliser les feuilles connectées avec Looker, vous devez activer l'accès aux services qui ne sont pas contrôlés individuellement dans la console d'administration Google. Pour en savoir plus, consultez Gérer l'accès aux services qui ne sont pas contrôlés individuellement. De plus, un administrateur Looker doit d'abord activer les feuilles connectées dans l'interface administrateur Looker. Pour en savoir plus, consultez Utiliser des feuilles connectées pour Looker.
Permettre aux utilisateurs de déléguer leur accès aux feuilles connectées pour BigQuery
Vous pouvez autoriser les utilisateurs à déléguer leur accès aux feuilles connectées pour BigQuery pour leur permettre de collaborer avec d'autres utilisateurs. Ils pourront ainsi analyser des données et exécuter des requêtes.
Pour déléguer leur accès, ils doivent partager la feuille avec les autres utilisateurs. Toutefois, ils ne peuvent pas déléguer l'accès à une feuille partagée publiquement via un lien. Pour identifier l'utilisateur qui délègue son accès et celui qui exécute une requête, accédez aux événements de journaux Drive ou à Cloud Audit Logs.
Activer ou désactiver l'accès délégué
-
Connectez-vous à la Console d'administration Google.
Connectez-vous avec votre compte administrateur (ne se terminant pas par "@gmail.com").
-
Dans la console d'administration, accédez au menu ApplicationsGoogle WorkspaceDrive et DocsFonctionnalités et applications.
- Pour Délégation des accès aux feuilles connectées, cliquez sur Modifier.
- Pour appliquer le paramètre à tous les utilisateurs, vérifiez que l'unité organisationnelle racine est sélectionnée. Sinon, sélectionnez une unité organisationnelle enfant ou un groupe de configuration.
- Pour Paramètres de délégation, cochez ou décochez Autoriser les utilisateurs ayant le droit de modifier une feuille de calcul à activer la délégation des accès aux feuilles connectées.
- Si vous configurez une unité organisationnelle ou un groupe, sélectionnez Only users within a specific organizational unit or group can use delegation (Seuls les membres d'une unité organisationnelle ou d'un groupe spécifique peuvent utiliser la délégation).
- Si vous souhaitez autoriser tous les utilisateurs ayant accès à la feuille à déléguer l'accès, sélectionnez Tous les utilisateurs peuvent utiliser la délégation.
Cette option inclut les utilisateurs externes à votre organisation qui peuvent accéder à la feuille.
-
Cliquez sur Enregistrer. Si vous avez configuré une unité organisationnelle ou un groupe, vous pourrez peut-être utiliser les options Hériter ou Remplacer pour une unité organisationnelle parente ou Non défini pour un groupe.
Si vous activez la délégation, informez vos utilisateurs qu'ils peuvent déléguer leur accès à une feuille.
Afficher les événements de journaux des feuilles connectées
Lorsque les feuilles connectées accèdent aux données BigQuery et Looker, les entrées sont enregistrées dans les événements de journaux Drive. Les entrées sont également enregistrées dans Cloud Audit Logs pour l'accès à BigQuery et dans Explorer l'historique d'activité système pour l'accès à Looker. Les journaux indiquent qui a accédé aux données et quand.
Ouvrir la section | Tout réduire
Analyser les événements de journaux Drive à l'aide de l'API ReportsPour savoir comment analyser les événements de journaux Drive dans la console d'administration Google, consultez Accéder aux données des événements de journaux Drive.
L'API Reports vous permet d'afficher les événements de requête des feuilles connectées. L'exemple suivant récupère tous les événements Drive par type d'événement de requête des feuilles connectées :
GET https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/drive?eventName=connected_sheets_query
La réponse JSON complète à cet appel d'API est affichée dans la section "Réponse JSON complète" ci-dessous.
L'utilisateur à l'origine de la requête est indiqué sous "actor".
"actor": {
"email": "collaborator@example.com",
"profileId": "user’s unique Google Workspace profile ID"
}
Sheets fournit des informations supplémentaires sur la requête exécutée sous "parameters".
"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": "trix01@scary.docsplustesting.com"
},
Le champ execution_trigger
est défini en fonction de la manière dont la requête est appelée à partir de Sheets :
Libellé | Façon dont la requête est exécutée |
---|---|
sheets_ui | Manuellement, via l'interface utilisateur de Sheets |
schedule | Via la fonctionnalité d'actualisation programmée de Sheets |
api | Via l'API Sheets |
apps-script | Via Apps Script |
Le champ
query_type
est défini en fonction du connecteur de données.Libellé | Connecteur de données |
---|---|
big_query | BigQuery |
looker | Looker |
Le champ data_connection_id
est défini en fonction de l'ID de la connexion de données. Pour BigQuery, il s'agit de l'ID du projet de facturation. Pour Looker, il s'agit de l'URL de l'instance.
Le champ execution_id
est défini sur la base de l'ID de la requête qui a été exécutée.
Structure des valeurs | Entité de requête |
---|---|
jobs/<JOB_ID> | Job BigQuery |
datasets/<DATASET_NAME>/tables/<TABLE_NAME> | Table BigQuery |
query_tasks/<QUERY_TASK_ID> | Requête Looker |
L'adresse e-mail de l'utilisateur dont les identifiants ont été utilisés est disponible dans les journaux dans le champ delegating_principal
.
Réponse JSON complète
{
"kind": "admin#reports#activity",
"id": {
"time": "2022-10-26T17:33:51.929Z",
"uniqueQualifier": "report’s unique ID",
"applicationName": "drive",
"customerId": "ABC123xyz"
},
"actor": {
"email": "collaborator@example.com",
"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": "owner@example.com"
},
{
"name": "owner",
"value": "owner@example.com"
},
{
"name": "owner_is_shared_drive",
"boolValue": false
},
{
"name": "owner_is_team_drive",
"boolValue": false
}
]
}
]
}
Chaque feuille de calcul possède un identifiant de feuille unique figurant dans l'URL de la feuille de calcul. Les entrées de journal au format BigQueryAuditMetadata contiennent l'ID de la feuille de calcul d'où provient la demande d'accès aux données BigQuery.
Vous pouvez créer des requêtes pour récupérer et analyser des journaux à l'aide de l'explorateur de journaux de la console Google Cloud. Dans l'explorateur de journaux, saisissez :
protoPayload.metadata.firstPartyAppMetadata.sheetsMetadata.docId
!= NULL_VALUE
Cette commande renvoie les entrées dont l'identifiant de feuille de calcul n'est pas vide, comme dans l'exemple suivant :
metadata: {
@type: "type.googleapis.com/google.cloud.audit.BigQueryAuditMetadata"
firstPartyAppMetadata: {
sheetsMetadata: {
docId: "aBC-123_xYz"
}
}
Sheets fournit des informations pour interroger des tâches à l'aide de libellés de tâche. Ces libellés peuvent vous fournir des données supplémentaires à analyser, comme le montre cet exemple :
jobInsertion: {
job: {
jobConfig: {
labels: {
sheets_access_type: "normal"
sheets_connector: "connected_sheets"
sheets_trigger: "user"
}
La valeur indiquée dans le champ sheets_trigger dépend de la façon dont la requête est appelée depuis Sheets :
Libellé | Façon dont la requête est exécutée |
---|---|
user | Manuellement, via l'interface utilisateur de Sheets |
schedule | Via la fonctionnalité d'actualisation programmée de Sheets |
api | Via l'API Sheets |
apps-script | Via Apps Script |
Par exemple, pour rechercher des entrées correspondant aux actualisations programmées des feuilles connectées, utilisez la requête suivante dans l'explorateur de journaux :
protoPayload.metadata.firstPartyAppMetadata.sheetsMetadata.docId
!= NULL_VALUE
protoPayload.metadata.jobInsertion.job.jobConfig.labels.sheets_trigger
= "schedule"
Si l'accès délégué a été activé, les journaux contiennent l'adresse e-mail de l'utilisateur dont les identifiants ont été utilisés pour exécuter la requête. Vous pouvez également trouver l'adresse e-mail de l'utilisateur ayant déclenché la requête, comme illustré dans l'exemple suivant :
"authenticationInfo": {
"principalEmail": "owner@example.com",
"serviceAccountDelegationInfo": [
{
"firstPartyPrincipal": {
"principalEmail": "collaborator@example.com",
"serviceMetadata": {
"service": "sheets"
}
}
}
]
}
Remarque : Le champ serviceAccountDelegationInfo
n'est présent que si un accès délégué a été utilisé pour la requête. Dans ce cas, la personne répertoriée sous principalEmail
est celle qui a délégué l'accès.
Pour plus de détails, consultez Utiliser l'explorateur de journaux et Créer des requêtes dans l'explorateur de journaux.
Découvrez-en davantage sur les journaux d'audit BigQuery, les identifiants de feuille de calcul, le format BigQueryAuditMetadata, SheetsMetadata, le partage de feuilles de calcul et l'API Google Sheets.
- Sur votre instance Looker, à gauche, cliquez sur Explorer Historique.
- Pour Trouver un champ, saisissez Nom de client API, puis cliquez sur Filtrer pour ajouter ce champ à l'ensemble de données.
- Sous Filtres, sélectionnez est égal à, puis saisissez Feuilles connectées dans le champ situé à côté.
- Dans le champ Trouver un champ, saisissez Connected Sheets Spreadsheets ID (ID des feuilles de calcul des feuilles connectées) pour ajouter ce champ à l'ensemble de données.
- Pour Trouver un champ, saisissez Connected Sheets Trigger (Déclencheur de feuilles connectées), pour ajouter ce champ à l'ensemble de données.
- Dans le champ Trouver un champ, saisissez History Slug (Slug d'historique) pour ajouter ce champ à l'ensemble de données.
- La valeur du champ History Slug correspond à la valeur QUERY_TASK_ID enregistrée dans les événements de journaux Drive. Si vous souhaitez rechercher une requête spécifique dans le journal Drive, ajoutez un filtre à ce champ.
- (Facultatif) Pour ajouter d'autres champs, tels que Nom d'utilisateur et History Created Date (Date de création de l'historique), à l'ensemble de données, sélectionnez-les.
- (Facultatif) Pour ajouter des filtres, sélectionnez-les.
Par exemple, vous pouvez utiliser le filtre History Created Date (Date de création de l'historique) défini sur is in the past 7 days (au cours des sept derniers jours) ou filtrer selon un ID de feuille de calcul spécifique pour afficher uniquement les requêtes Looker lancées à partir de celui-ci. - Cliquez sur Exécuter.
Résoudre les problèmes
Ouvrir la section | Tout réduire
Si Sheets planteEn haut de la feuille, cliquez sur Envoyer des commentaires.
Dans les fichiers Sheets, cliquez sur Actualiser pour que les modifications apportées aux données BigQuery apparaissent dans les feuilles connectées. Pour actualiser tous les éléments des feuilles connectées, cliquez sur DonnéesConnecteurs de donnéesActualiser les donnéesTout actualiser.
Si vous configurez certaines autorisations sur les fichiers Sheets de votre organisation, par exemple pour empêcher les utilisateurs extérieurs à votre organisation d'accéder aux fichiers Sheets, ces utilisateurs ne pourront pas ouvrir les fichiers de feuilles connectées. Pour modifier les autorisations, consultez Définir les autorisations de partage des utilisateurs Drive.
Si vous rencontrez toujours des problèmes, consultez Résoudre les problèmes liés aux données BigQuery dans Google Sheets et Résoudre les problèmes liés aux feuilles connectées pour Looker.
Articles associés
- Premiers pas avec les données BigQuery dans Google Sheets
- Trier et filtrer les données BigQuery dans Google Sheets
- Analyser et actualiser les données BigQuery dans Google Sheets à l'aide des feuilles connectées
- Rédiger et modifier une requête
- Documentation BigQuery
- Formules d'assistance Google Cloud