Schema en voorbeeldquery's voor Drive-inventarisexporten in BigQuery

Ondersteunde edities voor deze functie: Frontline Plus; Enterprise Standard en Enterprise Plus; Education Standard en Education Plus; Enterprise Essentials Plus; Cloud Identity Premium. Vergelijk uw editie

Nadat u de export van Drive-inventaris hebt ingesteld , kunt u de gegevensset analyseren in BigQuery. Deze pagina beschrijft het tabelschema en voorbeeldquery's voor veelvoorkomende rapporten die u met BigQuery kunt genereren.

Let op: u moet facturering instellen voor uw Google Cloud-project, omdat er kosten verbonden zijn aan het exporteren en opvragen van uw Drive-inventaris in BigQuery. Schakel facturering in voor een project .

Exportschema voor voorraadbeheer

Schema en definities

De export van de Drive-inventaris wordt aan de BigQuery-dataset toegevoegd met het volgende schema:

Naam Schema-veld Beschrijving
Artikel-ID id De unieke Drive-item-ID van het item.
Versie version Het meest recente versienummer van het bestand. Het bestandsversienummer is een monotoon oplopend nummer. Dit weerspiegelt elke wijziging die op de server in het bestand is aangebracht, zelfs wijzigingen die niet zichtbaar zijn voor de gebruiker.

Eigenaar

owner.user.id

Voor items die eigendom zijn van een gebruiker, de gebruikers-ID van de eigenaar van het bestand.

owner.user.email

Voor items die eigendom zijn van een gebruiker, het e-mailadres van de eigenaar van het bestand.

owner.shared_drive.id

Voor items op een gedeelde schijf, de ID van de gedeelde schijf.

Schepper creator Het e-mailadres en de gebruikers-ID van de maker van het item. Dit veld wordt niet ingevuld als de maker geen toegang meer heeft tot het item.
Momentopname-tijdstempels snapshot_start_time_micros en snapshot_end_time_micros De tijdstempels waarop het genereren van het rapport begon en eindigde.
Leestijd read_time_micros Het tijdstempel van het moment waarop de metagegevens van het Drive-item zijn gelezen.
Titel title

De door de gebruiker opgegeven bestandsnaam.

Beschrijving description Een korte beschrijving van het artikel.
Verprutste status trashed Of het item nu wel of niet naar de prullenbak is verplaatst, maar nog niet is verwijderd.
MIME-type mime_type Het MIME-type van het item. Zie de lijst met ondersteunde MIME-typen voor Google Workspace en Google Drive.
Bestandsextensie file_extension Het laatste onderdeel van de volledige bestandsextensie, dat wordt afgeleid van het naamveld. Dit is alleen beschikbaar voor items met binaire inhoud in Google Drive.
Scheppingstijd create_time_micros Het tijdstempel waarop het item is aangemaakt.
Laatst gewijzigd last_modified_time_micros Het tijdstempel van de laatste keer dat het item door iemand is gewijzigd.
Grootte in bytes size_bytes De grootte in bytes van blobs en Docs Editor-bestanden. Deze grootte wordt niet weergegeven voor items zonder opgegeven grootte, zoals snelkoppelingen en mappen.
Verbruikte quota consumed_quota_bytes Het aantal bytes aan opslagquota dat door het item wordt gebruikt. Dit omvat de meest recente revisie en eerdere revisies die bewaard zijn gebleven.
Organisatie-eenheid org_unit_path De organisatorische eenheid waartoe de eigenaar van het item behoort.
Controlesom md5_checksum De MD5-checksum voor de inhoud van het item.
Client-side encryptie client_side_encrypted Een booleanwaarde die aangeeft of het item aan de clientzijde is versleuteld .
Hoofdmap parent De ID van de bovenliggende map voor het item.

De bovenliggende map wordt in de volgende gevallen niet gevuld:

  1. Het bestand bevindt zich in de hoofdmap van 'Mijn Drive' van de gebruiker.
  2. De bovenliggende map is niet eigendom van het domein.
Toegepaste labels* applied_labels.id Het ID van het label dat op het artikel is aangebracht.
applied_labels.title De bronnaam van het label dat op het item is toegepast.
applied_labels.field_values.id

De ID van een veld, uniek binnen een label of bibliotheek.

applied_labels.field_values.type

Het type veld. Kan een van de volgende zijn:

applied_labels.field_values.display_name

De tekst die in de gebruikersinterface wordt weergegeven en die het veld identificeert.
Snelkoppeling Doel-ID shortcut_target_id De ID van het bestand of de map waarnaar deze snelkoppeling verwijst.
Toestemmingen access.permissions.permission_id

Het ID van deze machtiging. Dit is een unieke identificatiecode voor de begunstigde.

Let op: de machtigings-ID is niet hetzelfde als de gebruikers-ID.

access.permissions.name

De "mooie" naam van de waarde van de machtiging. Hieronder volgt een lijst met voorbeelden voor elk type machtiging:

  • user - De volledige naam van de gebruiker, zoals gedefinieerd voor hun Google-account, bijvoorbeeld "Dana Cruz"
  • group - Naam van de groep, bijvoorbeeld "Voorbeeldbeheerders"
  • domain - De domeinnaam als tekenreeks, bijvoorbeeld "example.com"
  • anyone - Geen naam gemeld
access.permissions.type

Het type machtiging. Geldige waarden zijn:

  • user
  • group
  • domain
  • anyone
access.permissions.role

De rol die door deze machtiging wordt verleend. Geldige waarden zijn:

  • owner
  • organizer
  • fileOrganizer
  • writer
  • commenter
  • reader

Opmerking: Zie rollen en machtigingen voor details over het type.

access.permissions.view

Als de toestemming bij een weergave hoort, wordt de waarde published .

access.permissions.allow_file_discovery

Geeft aan of de machtiging het bestand doorzoekbaar maakt. Wordt alleen gerapporteerd voor machtigingen van het type domain of anyone .
access.permissions.email Het e-mailadres van de gebruiker of groep waarop deze toestemming betrekking heeft.
access.permissions.domain De domeinnaam van de entiteit waarnaar deze machtiging verwijst. Deze is aanwezig wanneer het machtigingstype user , group of domain is.
access.permissions.user_id De gebruikers-ID die is gekoppeld aan het e-mailadres in de machtigingen.
access.permissions.permission_details
.permission_type
Het type machtiging voor de gebruiker.
access.permissions.permission_details.role De primaire rol voor de gebruiker.
access.permissions.permission_details
.inherited_from
De ID van het item waarvan deze machtiging is overgenomen. Dit veld wordt alleen ingevuld voor items in gedeelde schijven.
access.permissions.permission_details
.inherited
Een booleanwaarde die aangeeft of de toestemming wordt overgeërfd.
access.permissions.inherited_permissions
_disabled
Geeft aan of overgeërfde machtigingen voor dit item zijn uitgeschakeld. Dit geldt alleen voor mappen met beperkte toegang.

* Verwijst naar labels die zijn toegepast op items in Drive .

Schema voor gedeelde schijven

Tabel met gedeelde schijven

De tabel geeft een overzicht van het schema voor gedeelde schijfspecifieke velden in de schijfinventarisexport.

Naam Schema-veld Beschrijving
Gedeelde schijf-ID shared_drive_id De unieke identificatiecode voor gedeelde schijven.
Naam van de gedeelde schijf name De naam van de gedeelde schijf, zoals opgegeven door de gebruiker.
Leestijd read_time_micros Het tijdstempel van het moment waarop de metagegevens van de gedeelde schijf zijn gelezen, in microseconden.

Voorbeelden van zoekopdrachten

Deze queryvoorbeelden gaan uit van de oudere SQL-versie. Lees meer over het opvragen van gegevens uit BigQuery .

Vervang project_name.dataset_name door de naam van uw project en de naam van uw dataset.

Deze query retourneert een tabel met bestands-ID, titel, e-mailadres van de eigenaar en bestandstype.

SELECT id, title, mime_type, owner.user.email
FROM project_name.dataset_name
WHERE EXISTS (
  SELECT 1
  FROM UNNEST(access.permissions) AS permission
  WHERE permission.allow_file_discovery = true
)

Zoek naar artikelen met een specifiek label.

Vervang project_name.dataset_name door de naam van uw project en de naam van uw dataset. Vervang label_id door uw label-ID, die u kunt vinden in de labelmanager .

Deze query retourneert een tabel met bestands-ID, titel, e-mailadres van de eigenaar en bestandstype.

SELECT id, title, mime_type, owner.user.email
FROM project_name.dataset_name
WHERE EXISTS (
  SELECT 1
  FROM UNNEST(applied_labels) AS label
  WHERE label.id = label_id
)

Zoek gebruikers die een drempelwaarde voor Drive-opslaggebruik overschrijden.

Vervang project_name.dataset_name door uw projectnaam en datasetnaam. Vervang threshold door uw drempelwaarde in MB. Om bijvoorbeeld gebruikers te vinden met meer dan 15 GB Drive-opslaggebruik, is de voorlaatste regel HAVING total_storage_mb > 15000 .

Deze query retourneert een tabel met gebruikers-e-mailadressen en het totale Drive-opslaggebruik in MB, gesorteerd in aflopende volgorde.

SELECT owner.user.email AS user_email,
  SUM(size_bytes) / (1000000) AS total_storage_mb
FROM project_name.dataset_name
GROUP BY user_email
HAVING total_storage_mb > threshold
ORDER BY total_storage_mb DESC

Ontdek welke artikeltypen de meeste ruimte in beslag nemen.

Vervang project_name.dataset_name door de naam van uw project en de naam van uw dataset.

Deze query retourneert een tabel met artikeltypen, gesorteerd op grootte in aflopende volgorde.

SELECT mime_type, SUM(consumed_quota_bytes) AS total_consumed
FROM project_name.dataset_name
GROUP BY mime_type
ORDER BY total_consumed DESC

Zoek naar items die zijn versleuteld met client-side encryption (CSE).

Vervang project_name.dataset_name door de naam van uw project en de naam van uw dataset.

SELECT id, owner.user.email, title
FROM project_name.dataset_name
WHERE mime_type LIKE '%.encrypted'

Zoek naar items die met een specifieke gebruiker zijn gedeeld.

Vervang project_name.dataset_name door de naam van uw project en de naam van uw dataset. Vervang user@example.com door uw specifieke gebruiker.

Opmerking: Deze zoekopdracht vindt geen deelopties voor de gebruiker via groepen of lidmaatschap van een doelgroep.

SELECT id, title, mime_type, owner.user.email as owner_email
FROM project_name.dataset_name
WHERE EXISTS (
  SELECT 1
  FROM UNNEST(access.permissions) AS permissions
  WHERE permissions.email = user@example.com
)

Zoek naar items met gedeelde schijfnamen

Vervang project_name.dataset_name door de naam van uw project en de naam van uw dataset.

Deze query retourneert een tabel met de titel van het schijfitem en de naam van de gedeelde schijf.

SELECT i.title, s.name
FROM project_name.dataset_name.inventory AS i
JOIN project_name.dataset_name.shared_drives AS s
ON i.owner.shared_drive.id = s.shared_drive_id;

Vind het aantal items op een gedeelde schijf

Vervang project_name.dataset_name door de naam van uw project en de naam van uw dataset.

Deze query retourneert een tabel met de naam van de gedeelde schijf en het aantal items.

SELECT  s.name as shared_drive, count(*) as item_count
FROM project_name.dataset_name.inventory AS i
JOIN project_name.dataset_name.shared_drives AS s
ON i.owner.shared_drive.id = s.shared_drive_id
GROUP BY shared_drive;