[GA4] BigQuery Export-Schema

In diesem Artikel werden das Format und das Schema der Daten erläutert, die aus Google Analytics 4-Properties und Google Analytics for Firebase in BigQuery exportiert werden.

Datasets

Für jede Google Analytics 4-Property und jedes Firebase-Projekt, die mit BigQuery verknüpft sind, wird in Ihrem BigQuery-Projekt ein einzelnes Dataset mit dem Namen „analytics_<Property-ID>“ erstellt. Die Property-ID bezieht sich auf die Analytics-Property-ID. Diese finden Sie für Ihre Google Analytics 4-Property in den Property-Einstellungen und für Firebase in den Einstellungen für App-Analysen. Die Daten aus jeder Google Analytics 4-Property und jeder App, für die BigQuery-Exporte aktiviert sind, werden in dieses Dataset exportiert.

Tabellen

In jedem Dataset wird jeden Tag eine Tabelle mit dem Namen events_JJJJMMTT erstellt, wenn die Option für den täglichen Export aktiviert ist.

Wenn die Option für den Streaming-Export aktiviert ist, wird eine Tabelle mit dem Namen events_intraday_JJJJMMTT erstellt. Diese Tabelle wird kontinuierlich mit Ereignissen ergänzt, die im Laufe des Tages erfasst werden. Sie wird am Ende des Tages gelöscht, sobald events_JJJJMMTT vollständig ist.

Nicht alle Geräte, auf denen Ereignisse ausgelöst werden, senden die entsprechenden Daten noch am selben Tag an Analytics. Um diese Latenz zu berücksichtigen, werden die täglichen Tabellen (events_JJJJMMTT) in Analytics bis zu drei Tage nach dem Ereignisdatum mit den jeweiligen Daten aktualisiert. Ereignisse werden mit dem korrekten Zeitstempel versehen, auch wenn ihre Daten verzögert eingehen. Ereignisse, deren Daten nach mehr als drei Tagen eingehen, werden nicht erfasst.

 

Wenn Sie die BigQuery-Sandbox verwenden, werden keine Tagesverlaufsdaten importiert. Außerdem gelten dann zusätzliche Limits.

Führen Sie ein Upgrade über die Sandbox aus, wenn Sie Tagesverlaufsdaten importieren möchten.

Spalten

Jede Spalte in der Tabelle events_JJJJMMTT stellt einen ereignisspezifischen Parameter dar. Manche Parameter sind innerhalb von DATENSÄTZEN verschachtelt und einige DATENSÄTZE wie items und event_params sind wiederholbar. Tabellenspalten werden unten beschrieben.

termin
Die Ereignisfelder enthalten Informationen, die ein Ereignis eindeutig identifizieren.
Feldname Datentyp Beschreibung
event_date STRING Datum, an dem das Ereignis erfasst wurde (Format JJJJMMTT in der registrierten Zeitzone der App)
event_timestamp GANZZAHL Zeitpunkt, zu dem das Ereignis im Client erfasst wurde (Angabe in Mikrosekunden – UTC)
event_previous_timestamp GANZZAHL Zeitpunkt, zu dem das Ereignis zuvor im Client erfasst wurde (Angabe in Mikrosekunden – UTC)
event_name STRING Name des Ereignisses
event_value_in_usd GLEITKOMMAZAHL In US-Dollar umgerechneter Wert des Ereignisparameters „value“
event_bundle_sequence_id GANZZAHL Sequenz-ID des Bundles, in das diese Ereignisse hochgeladen wurden
event_server_timestamp_offset GANZZAHL Zeitstempelunterschied zwischen Erfassungs- und Uploadzeitpunkt in Mikrosekunden

DATENSATZ „event_params“

Im DATENSATZ „event_params“ können Ereignisparameter auf Kampagnenebene und kontextbezogene Ereignisparameter sowie alle benutzerdefinierten Ereignisparameter gespeichert werden. Der DATENSATZ „event_params“ wird für jeden Schlüssel wiederholt, der mit einem Ereignis verknüpft ist.

Die im DATENSATZ „event_params“ gespeicherten Parameter sind spezifisch für jede Implementierung. Mit dieser Abfrage erhalten Sie eine vollständige Liste der Ereignisparameter für Ihre Implementierung. 

Feldname Datentyp Beschreibung
event_params.key STRING Name des Ereignisparameters
event_params.value DATENSATZ Datensatz mit dem Ereignisparameterwert
event_params.value.string_value STRING Wenn der Ereignisparameter durch einen String dargestellt wird (z. B. URL oder Kampagnenname), wird der Wert in dieses Feld eingefügt.
event_params.value.int_value GANZZAHL Wird der Ereignisparameter durch eine Ganzzahl dargestellt, wird der Wert in dieses Feld eingefügt.
event_params.value.double_value GLEITKOMMAZAHL Wird der Ereignisparameter durch einen doppelten Wert dargestellt, wird dieser in dieses Feld eingefügt.
event_params.value.float_value GLEITKOMMAZAHL Wird der Ereignisparameter durch einen Gleitkommawert dargestellt, wird dieser in dieses Feld eingefügt. Das Feld wird derzeit nicht verwendet.

DATENSATZ „item_params“

Im DATENSATZ „item_params“ können sowohl vordefinierte als auch benutzerdefinierte Artikelparameter gespeichert werden. Die im DATENSATZ „item_params“ gespeicherten Parameter sind spezifisch für jede Implementierung.

Feldname Datentyp Beschreibung
item_params.key STRING Der Name des Artikelparameters.
item_params.value DATENSATZ Datensatz, der den Wert des Artikelparameters enthält.
item_params.value.string_value STRING Wird der Artikelparameter durch einen String dargestellt, wird er in dieses Feld eingefügt.
item_params.value.int_value GANZZAHL Wird der Artikelparameter durch eine Ganzzahl dargestellt, wird sie in dieses Feld eingefügt.
item_params.value.double_value GLEITKOMMAZAHL Wird der Artikelparameter durch einen doppelten Wert dargestellt, wird er in dieses Feld eingefügt.
item_params.value.float_value GLEITKOMMAZAHL Wird der Artikelparameter durch einen Gleitkommawert dargestellt, wird er in dieses Feld eingefügt.
Nutzer
Die „user“-Felder enthalten Informationen, die den mit dem Ereignis verknüpften Nutzer eindeutig identifizieren.
Feldname Datentyp Beschreibung
is_active_user BOOLESCH

Gibt an, ob der Nutzer zu einem beliebigen Zeitpunkt am Kalendertag aktiv („True“) oder inaktiv („False“) war.

Nur in den täglichen Tabellen (events_JJJJMMTT) enthalten.

user_id STRING Die eindeutige ID, die einem Nutzer zugewiesen ist
user_pseudo_id STRING Pseudonym-ID für den Nutzer (z. B. App-Instanz-ID)
user_first_touch_timestamp GANZZAHL Zeit (in Mikrosekunden), zu der der Nutzer erstmals die App geöffnet oder die Website besucht hat

„privacy_info“-Felder

Die „privacy_info“-Felder enthalten Informationen, die auf dem Einwilligungsstatus des Nutzers basieren, wenn der Einwilligungsmodus aktiviert ist.
Feldname Datentyp Beschreibung
privacy_info.ads_storage STRING

Gibt an, ob für einen Nutzer die Anzeigenausrichtung aktiviert ist.

Mögliche Werte: „Yes“, „No“, „Unset“.

privacy_info.analytics_storage STRING

Gibt an, ob für den Nutzer Analytics-Speicher aktiviert ist.

Mögliche Werte: „Yes“, „No“, „Unset“.

privacy_info.uses_transient_token STRING

Gibt an, ob ein Web-Nutzer den Analytics-Speicher abgelehnt und der Entwickler die Messung ohne Cookies basierend auf temporären Tokens in Serverdaten aktiviert hat.

Mögliche Werte: „Yes“, „No“, „Unset“.

DATENSATZ „user_properties“

Der DATENSATZ „user_properties“ enthält alle Nutzereigenschaften, die Sie festgelegt haben. Er wird für jeden Schlüssel wiederholt, der mit einem Nutzer verknüpft ist.
Feldname Datentyp Beschreibung
user_properties.key STRING Name der Nutzereigenschaft
user_properties.value DATENSATZ Datensatz für den Wert der Nutzereigenschaft
user_properties.value.string_value STRING Stringwert der Nutzereigenschaft
user_properties.value.int_value GANZZAHL Ganzzahlwert der Nutzereigenschaft
user_properties.value.double_value GLEITKOMMAZAHL Doppelter Wert der Nutzereigenschaft
user_properties.value.float_value GLEITKOMMAZAHL Dieses Feld wird momentan nicht verwendet.
user_properties.value.set_timestamp_micros GANZZAHL Zeit (in Mikrosekunden), zu der die Nutzereigenschaft zuletzt festgelegt wurde

DATENSATZ „user_ltv“

Der DATENSATZ „user_ltv“ enthält Informationen zum Lifetime-Wert des Nutzers. Dieser DATENSATZ wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
Feldname Datentyp Beschreibung
user_ltv.revenue GLEITKOMMAZAHL Lifetime-Wert (Umsatz) des Nutzers. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
user_ltv.currency STRING Lifetime-Wert (Währung) des Nutzers. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
device
Der DATENSATZ „device“ enthält Informationen zu dem Gerät, von dem das Ereignis stammt.
Feldname Datentyp Beschreibung
device.category STRING Gerätekategorie (Smartphone, Tablet, Computer)
device.mobile_brand_name STRING Gerätemarke
device.mobile_model_name STRING Name des Gerätemodells
device.mobile_marketing_name STRING Handelsbezeichnung des Geräts
device.mobile_os_hardware_model STRING Angaben zum Gerätemodell, die direkt vom Betriebssystem abgerufen wurden
device.operating_system STRING Betriebssystem des Geräts
device.operating_system_version STRING Version des Betriebssystems
device.vendor_id STRING IDFV (nur vorhanden, wenn IDFA nicht erfasst wird)
device.advertising_id STRING Werbe-ID/IDFA
device.language STRING Sprache des Betriebssystems
device.time_zone_offset_seconds GANZZAHL Abweichung von GMT in Sekunden
device.is_limited_ad_tracking BOOLESCH

Geräteeinstellung zum Beschränken von Anzeigen-Tracking

Ab iOS 14+ wird „falsch“ zurückgegeben, wenn der IDFA ungleich null ist.

device.web_info.browser STRING Browser, mit dem sich der Nutzer Inhalte angesehen hat
device.web_info.browser_version STRING Version des Browsers, mit dem sich der Nutzer Inhalte angesehen hat
device.web_info.hostname STRING Mit dem protokollierten Ereignis verknüpfter Hostname

geo

Der DATENSATZ „geo“ enthält Informationen über den geografischen Standort, an dem das Ereignis ausgelöst wurde.
Feldname Datentyp Beschreibung
geo.continent STRING Der Kontinent, von dem die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
geo.sub_continent STRING Der Subkontinent, von dem die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
geo.country STRING Das Land, aus dem die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
geo.region STRING Die Region, aus der die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
geo.metro STRING Der Großraum, aus dem die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
geo.city STRING Die Stadt, aus der die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
app_info
Der DATENSATZ „app_info“ enthält Informationen zu der App, in der das Ereignis ausgelöst wurde.
Feldname Datentyp Beschreibung
app_info.id STRING Paketname oder Bundle-ID der App
app_info.firebase_app_id STRING Die mit der App verknüpfte Firebase App-ID
app_info.install_source STRING App-Store, über den die App installiert wurde
app_info.version STRING Versionsname (Android) oder kurze Bundle-Version (iOS) der App
collected_traffic_source

Der RECORD collected_traffic_source enthält die Besucherquellendaten, die mit dem Ereignis erfasst wurden

Feldname Datentyp Beschreibung
manual_campaign_id STRING Die Kampagnen-ID (manuell) (utm_id), die mit dem Ereignis erfasst wurde
manual_campaign_name STRING Der Kampagnenname (manuell) (utm_campaign), der mit dem Ereignis erfasst wurde
manual_source STRING Die Kampagnenquelle (manuell) (utm_source), die mit dem Ereignis erfasst wurde. Umfasst auch geparste Parameter von Verweisparametern, nicht nur UTM-Werte. 
manual_medium STRING Das Kampagnenmedium (manuell) (utm_medium), das mit dem Ereignis erfasst wurde. Umfasst auch geparste Parameter von Verweisparametern, nicht nur UTM-Werte.
manual_term STRING Keyword/Begriff der Kampagne (manuell) (utm_term), das/der mit dem Ereignis erfasst wurde
manual_content STRING Die zusätzlichen manuellen Metadaten der Kampagne (utm_content), die mit dem Ereignis erfasst wurden
gclid STRING Der Google Click Identifier, der mit dem Ereignis erfasst wurde
dclid STRING Die GMP-ID (Google Marketing Platform), die mit dem Ereignis erfasst wurde
srsltid  STRING Die Google Merchant Center-ID, die mit dem Ereignis erfasst wurde
traffic_source

Der DATENSATZ „traffic_source“ enthält Informationen zur Besucherquelle, über die der Nutzer gewonnen wurde. Dieser Datensatz wird in Tabellen zum Tagesverlauf nicht ausgefüllt.

Hinweis: Die „traffic_source“-Werte ändern sich nicht, wenn der Nutzer nach der Installation mit weiteren Kampagnen interagiert.

Feldname Datentyp Beschreibung
traffic_source.name STRING Dies ist der Name der Marketingkampagne, mit der der Nutzer akquiriert wurde. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
traffic_source.medium STRING Dies ist der Name des Mediums (bezahlte Suche, organische Suche, E-Mail usw.), über das der Nutzer akquiriert wurde. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
traffic_source.source STRING Dies ist der Name des Netzwerks, in dem der Nutzer akquiriert wurde. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
„stream“ und „platform“
Die Felder „stream“ und „platform“ enthalten Informationen zum Stream und zur App-Plattform.
Feldname Datentyp Beschreibung
stream_id STRING Numerische ID des Datenstreams, von dem das Ereignis stammt.
platform STRING Die Datenstreamplattform (Web, iOS oder Android), von der das Ereignis stammt.
E-Commerce
Der DATENSATZ „ecommerce“ enthält Informationen zu allen E-Commerce-Ereignissen, die auf einer Website oder in einer App eingerichtet wurden.
Feldname Datentyp Beschreibung
ecommerce.total_item_quantity GANZZAHL Die Gesamtzahl der Artikel für dieses Ereignis, also die Summe von items.quantity
ecommerce.purchase_revenue_in_usd GLEITKOMMAZAHL Der Kaufumsatz für dieses Ereignis, angegeben in US-Dollar mit Standardeinheit. Wird nur für Kaufereignisse ausgefüllt.
ecommerce.purchase_revenue GLEITKOMMAZAHL Der Kaufumsatz für dieses Ereignis, angegeben in Landeswährung mit Standardeinheit. Wird nur für Kaufereignisse ausgefüllt.
ecommerce.refund_value_in_usd GLEITKOMMAZAHL Der Erstattungsbetrag für dieses Ereignis, angegeben in US-Dollar mit Standardeinheit. Wird nur für Erstattungsereignisse ausgefüllt.
ecommerce.refund_value GLEITKOMMAZAHL Der Erstattungsbetrag für dieses Ereignis, angegeben in Landeswährung mit Standardeinheit. Wird nur für Erstattungsereignisse ausgefüllt.
ecommerce.shipping_value_in_usd GLEITKOMMAZAHL Die Versandkosten für dieses Ereignis, angegeben in US-Dollar mit Standardeinheit
ecommerce.shipping_value GLEITKOMMAZAHL Die Versandkosten für dieses Ereignis, angegeben in Landeswährung
ecommerce.tax_value_in_usd GLEITKOMMAZAHL Der Steuerwert für dieses Ereignis, angegeben in US-Dollar mit Standardeinheit
ecommerce.tax_value GLEITKOMMAZAHL Der Steuerwert für dieses Ereignis, angegeben in Landeswährung mit Standardeinheit
ecommerce.transaction_id STRING Die ID der E-Commerce-Transaktion
ecommerce.unique_items GANZZAHL Die Anzahl der eindeutigen Artikel für dieses Ereignis, basierend auf „item_id”, „item_name” und „item_brand”
items
Der DATENSATZ „items“ enthält Informationen zu den Artikeln in einem Ereignis und wird für jeden Artikel wiederholt.
Feldname Datentyp Beschreibung
items.item_id STRING Die ID des Artikels
items.item_name STRING Der Name des Artikels
items.item_brand STRING Die Marke des Artikels
items.item_variant STRING Die Variante des Artikels
items.item_category STRING Die Kategorie des Artikels
items.item_category2 STRING Die Unterkategorie des Artikels
items.item_category3 STRING Die Unterkategorie des Artikels
items.item_category4 STRING Die Unterkategorie des Artikels
items.item_category5 STRING Die Unterkategorie des Artikels
items.price_in_usd GLEITKOMMAZAHL Der Preis des Artikels in US-Dollar mit Standardeinheit
items.price GLEITKOMMAZAHL Der Preis des Artikels in Landeswährung
items.quantity GANZZAHL Die Menge des Artikels. Wird auf 1 gesetzt, wenn kein Wert angegeben ist.
items.item_revenue_in_usd GLEITKOMMAZAHL Der Umsatz dieses Artikels, berechnet als price_in_usd * quantity. Wird nur für Kaufereignisse ausgefüllt, in US-Dollar mit Standardeinheit.
items.item_revenue GLEITKOMMAZAHL Der Umsatz dieses Artikels, berechnet als price * quantity. Wird nur für Kaufereignisse ausgefüllt, in Landeswährung mit Standardeinheit.
items.item_refund_in_usd GLEITKOMMAZAHL Der Erstattungswert dieses Artikels, berechnet als price_in_usd * quantity. Wird nur für Erstattungsereignisse ausgefüllt, in US-Dollar mit Standardeinheit.
items.item_refund GLEITKOMMAZAHL Der Erstattungswert dieses Artikels, berechnet als price * quantity. Wird nur für Erstattungsereignisse ausgefüllt, in Landeswährung mit Standardeinheit.
items.coupon STRING Auf diesen Artikel angewendeter Gutscheincode
items.affiliation STRING Eine Produktzugehörigkeit zur Angabe eines Lieferanten oder Ladengeschäfts
items.location_id STRING Der dem Artikel zugeordnete Standort
items.item_list_id STRING Die ID der Liste, in der dem Nutzer der Artikel präsentiert wurde
items.item_list_name STRING Der Name der Liste, in der dem Nutzer der Artikel präsentiert wurde
Items.item_list_index STRING Die Position des Artikels in einer Liste
items.promotion_id STRING Die ID eines Produktangebots
items.promotion_name STRING Der Name eines Produktangebots
items.creative_name STRING Der Name eines Creatives, das in einer Werbeanzeige für ein Produktangebot verwendet wird
items.creative_slot STRING Der Name einer Creative-Fläche.

DATENSATZ „item_params“

Im DATENSATZ „item_params“ werden Ihre benutzerdefinierten Artikelparameter gespeichert. Vordefinierte Artikelparameter wie „item_id“ oder „item_name“ sind hier nicht enthalten. Sie werden stattdessen als explizite Felder exportiert.

Die im DATENSATZ „item_params“ gespeicherten Parameter sind spezifisch für jede Implementierung. Weitere Informationen zu E-Commerce-Implementierungen und zum „items“-Array von Google Analytics 4 finden Sie unter E-Commerce messen.

Feldname Datentyp Beschreibung
items.item_params.key STRING Der Name des Artikelparameters.
items.item_params.value DATENSATZ Datensatz, der den Wert des Artikelparameters enthält.
items.item_params.value.string_value STRING Wird der Artikelparameter durch einen String dargestellt, wird er in dieses Feld eingefügt.
items.item_params.value.int_value GANZZAHL Wird der Artikelparameter durch eine Ganzzahl dargestellt, wird sie in dieses Feld eingefügt.
items.item_params.value.double_value GLEITKOMMAZAHL Wird der Artikelparameter durch einen doppelten Wert dargestellt, wird er in dieses Feld eingefügt.
items.item_params.value.float_value GLEITKOMMAZAHL Wird der Artikelparameter durch einen Gleitkommawert dargestellt, wird er in dieses Feld eingefügt.

Zeilen

Die Daten für ein einzelnes Ereignis können in einer oder mehreren Zeilen dargestellt werden, je nachdem, ob es wiederholte DATENSÄTZE enthält. Ein page_view-Ereignis mit mehreren event_params etwa würde ungefähr der Darstellung in der nachstehenden Tabelle entsprechen. Die erste Zeile enthält den Namen, das Datum und den Zeitstempel des Ereignisses sowie andere nicht wiederholte Datenelemente. Der DATENSATZ event_params wird für jeden Parameter wiederholt, der mit dem Ereignis verknüpft ist. Diese wiederholten DATENSÄTZE werden in die nachfolgenden Zeilen direkt unter der ersten Zeile des Ereignisses eingefügt.

event_date event_timestamp event_name event_params.key event_params_value.string_value
20220222 1643673600483790 page_view page_location https://example.com
      page_title Startseite
      medium Empfehlung
      source google
      page_referrer https://www.google.com
      <parameters...> <values...>

 

Diese Ereignisdaten werden in der GA4-Benutzeroberfläche so dargestellt:

Hinweise zum Aktualisieren von SDKs auf Android 17.2.5 (oder höher) und/oder iOS 16.20.0 (oder höher)

Wenn Sie frühere Versionen eines der SDKs verwendet haben und ein Upgrade auf Android 17.2.5 (oder höher) und/oder iOS 16.20.0 (oder höher) planen, sollten Sie Folgendes berücksichtigen:

  • Wenn Sie das aktuelle Schema von BigQuery Export verwenden möchten, müssen Sie Ihr SDK auf Android 17.2.5 (oder höher) und/oder iOS 16.20.0 (oder höher) aktualisieren. Wenn Sie frühere SDK-Versionen verwenden, entsprechen die exportierten Daten dem bisherigen Schema
  • Beim Upgrade und danach können Sie nur noch auf Artikeldaten im Array mit wiederholten Artikeln zugreifen. In den Standardereignisparametern sind genau wie bei früheren SDK-Versionen keine Artikeldaten mehr verfügbar.
  • Diese Änderung wurde vorgenommen, um die Analyse mehrerer Produkte zu unterstützen.
  • Eventuell müssen Sie daher Ihre Verweise auf Artikel- oder Produktdaten anpassen.
Script für die Migration vorhandener BigQuery-Datasets in ein neues Exportschema
  1. Melden Sie sich in der Cloud Platform Console an und gehen Sie zur Seite Ressourcen verwalten.
  2. Rufen Sie das Projekt auf, dessen Daten Sie migrieren möchten, und klicken Sie oben auf der Seite auf Google Cloud Shell aktivieren.
  3. When the shell opens, copy the script below to a file named migration_script.sql:
    1. Führen Sie den Befehl cat > migration_script.sql aus.
    2. Kopieren Sie das Script unten und fügen Sie es in die Shell ein.
    3. Drücken Sie Strg + D, um die Shell zu speichern und zu schließen.
    Script (migration_script.sql):
      SELECT
      @date AS event_date,
      event.timestamp_micros AS event_timestamp,
      event.previous_timestamp_micros AS event_previous_timestamp,
      event.name AS event_name,
      event.value_in_usd  AS event_value_in_usd,
       user_dim.bundle_info.bundle_sequence_id AS event_bundle_sequence_id,
      user_dim.bundle_info.server_timestamp_offset_micros as event_server_timestamp_offset,
      (
      SELECT
        ARRAY_AGG(STRUCT(event_param.key AS key,
            STRUCT(event_param.value.string_value AS string_value,
              event_param.value.int_value AS int_value,
              event_param.value.double_value AS double_value, 
              event_param.value.float_value AS float_value) AS value))
      FROM
        UNNEST(event.params) AS event_param) AS event_params,
      user_dim.first_open_timestamp_micros AS user_first_touch_timestamp,
      user_dim.user_id AS user_id,
      user_dim.app_info.app_instance_id AS user_pseudo_id,
      "" AS stream_id,
      user_dim.app_info.app_platform AS platform,
      STRUCT( user_dim.ltv_info.revenue AS revenue,
        user_dim.ltv_info.currency AS currency ) AS user_ltv,
      STRUCT( user_dim.traffic_source.user_acquired_campaign AS name,
          user_dim.traffic_source.user_acquired_medium AS medium,
          user_dim.traffic_source.user_acquired_source AS source ) AS traffic_source,
      STRUCT( user_dim.geo_info.continent AS continent,
        user_dim.geo_info.country AS country,
        user_dim.geo_info.region AS region,
        user_dim.geo_info.city AS city ) AS geo,
      STRUCT( user_dim.device_info.device_category AS category,
        user_dim.device_info.mobile_brand_name,
        user_dim.device_info.mobile_model_name,
        user_dim.device_info.mobile_marketing_name,
        user_dim.device_info.device_model AS mobile_os_hardware_model,
        @platform AS operating_system,
        user_dim.device_info.platform_version AS operating_system_version,
        user_dim.device_info.device_id AS vendor_id,
        user_dim.device_info.resettable_device_id AS advertising_id,
        user_dim.device_info.user_default_language AS language,
        user_dim.device_info.device_time_zone_offset_seconds AS time_zone_offset_seconds,
        IF(user_dim.device_info.limited_ad_tracking, "Yes", "No") AS is_limited_ad_tracking ) AS device,
      STRUCT( user_dim.app_info.app_id AS id,
        @firebase_app_id  AS firebase_app_id,
        user_dim.app_info.app_version AS version,
        user_dim.app_info.app_store AS install_source ) AS app_info,
      (
      SELECT
        ARRAY_AGG(STRUCT(user_property.key AS key,
            STRUCT(user_property.value.value.string_value AS string_value,
              user_property.value.value.int_value AS int_value,
              user_property.value.value.double_value AS double_value,
              user_property.value.value.float_value AS float_value,
              user_property.value.set_timestamp_usec AS set_timestamp_micros ) AS value))
      FROM
        UNNEST(user_dim.user_properties) AS user_property) AS user_properties
    FROM
      `SCRIPT_GENERATED_TABLE_NAME`,
      UNNEST(event_dim) AS event
      
  4. Open a new shell, and copy the bash script below to a file named migration.sh:
    1. Führen Sie den Befehl cat > migration.sh aus.
    2. Kopieren Sie das Script unten und fügen Sie es in die Shell ein.
    3. Drücken Sie Strg + D, um die Shell zu speichern und zu schließen.
    Passen Sie das folgende Script an, indem Sie die Analytics-Property-ID, die BigQuery-Projekt-ID, die Firebase App-ID, den Namen des BigQuery-Datasets sowie das Start- und Enddatum der gewünschten Daten einfügen.
    Script (migration.sh):
    # Analytics-Property-ID für das Projekt. Diese finden Sie in den Analytics-Einstellungen in Firebase.
    PROPERTY_ID=Ihre Analytics-Property-ID
    
    # BigQuery Export-Projekt.
    BQ_PROJECT_ID="Ihre BigQuery-Projekt-ID" (z. B. "öffentliches-firebase-projekt“)
    
    # Firebase-App-ID für die App.
    FIREBASE_APP_ID="Ihre Firebase-App-ID" (z. B. "1:300830567303:ios:09b1ab1d3ca29bda")
    
    # Dataset, aus dem importiert wird.
    BQ_DATASET="Name des BigQuery-Datasets, aus dem importiert werden soll" (z. B. „com_firebase_demo_IOS“)
    
    # Plattform.
    PLATFORM="Plattform der App. ANDROID oder IOS"
    
    # Zeitraum, in dem die Migration ausgeführt werden soll, einschließlich [START_DATE,END_DATE].
    START_DATE=20180324
    END_DATE=20180327
    
    # Ändern Sie das Skript unten nicht, es sei denn, Sie sind sich Ihrer Sache sicher :)
    startdate=$(date -d"$START_DATE"  +%Y%m%d) || exit -1
    enddate=$(date -d"$END_DATE"  +%Y%m%d) || exit -1
    
    # Eine Schleife mit den Daten durchlaufen
    DATE="$startdate"
    while [ "$DATE" -le "$enddate" ]; do
    
            # BQ-Tabelle mithilfe der Parameter oben erstellt
            BQ_TABLE="$BQ_PROJECT_ID.$BQ_DATASET.app_events_$DATE"
    
            echo "$BQ_TABLE wird migriert"
    
            cat migration_script.sql | sed -e "s/SCRIPT_GENERATED_TABLE_NAME/$BQ_TABLE/g" | bq query \
            --debug_mode \
            --allow_large_results \
            --noflatten_results \
            --use_legacy_sql=False \
            --destination_table analytics_$PROPERTY_ID.events_$DATE \
            --batch \
            --append_table \
            --parameter=firebase_app_id::$FIREBASE_APP_ID \
            --parameter=date::$DATE \
            --parameter=platform::$PLATFORM \
            --project_id=$BQ_PROJECT_ID
    
    
            temp=$(date -I -d "$DATE + 1 day")
            DATE=$(date -d "$temp" +%Y%m%d)
    
    done
    exit
    
    # ENDE DES SKRIPTS
    
    
  5. Öffnen Sie eine neue Shell und führen Sie den Befehl bash migration.sh aus.
Bisheriges Exportschema

user_dim

Feldname Datentyp Beschreibung
user_dim DATENSATZ Datensatz mit den Dimensionen des Nutzers
user_dim.user_id STRING Durch die setUserId API festgelegte User ID
user_dim.first_open_timestamp_micros GANZZAHL Zeit (in Mikrosekunden), zu der der Nutzer die App erstmals geöffnet hat
user_dim.user_properties DATENSATZ Wiederholter Datensatz der Nutzereigenschaften, die mit der setUserProperty API festgelegt wurden
user_dim.user_properties.key STRING Name der Nutzereigenschaft
user_dim.user_properties.value DATENSATZ Datensatz für Informationen zur Nutzereigenschaft
user_dim.user_properties.value.value DATENSATZ Datensatz für den Wert der Nutzereigenschaft
user_dim.user_properties.value.value.string_value STRING Stringwert der Nutzereigenschaft
user_dim.user_properties.value.value.int_value GANZZAHL Ganzzahlwert der Nutzereigenschaft
user_dim.user_properties.value.value.double_value GLEITKOMMAZAHL Doppelter Wert der Nutzereigenschaft
user_dim.user_properties.value.set_timestamp_usec GANZZAHL Zeit (in Mikrosekunden), zu der die Nutzereigenschaft zuletzt festgelegt wurde
user_dim.user_properties.value.index GANZZAHL Index (0–24) der Nutzereigenschaft
user_dim.device_info DATENSATZ Datensatz mit Geräteinformationen
user_dim.device_info.device_category STRING Gerätekategorie (Smartphone, Tablet, Computer)
user_dim.device_info.mobile_brand_name STRING Gerätemarke
user_dim.device_info.mobile_model_name STRING Name des Gerätemodells
user_dim.device_info.mobile_marketing_name STRING Handelsbezeichnung des Geräts
user_dim.device_info.device_model STRING Gerätemodell
user_dim.device_info.platform_version STRING Version des Betriebssystems
user_dim.device_info.device_id STRING IDFV (nur vorhanden, wenn IDFA nicht verfügbar ist)
user_dim.device_info.resettable_device_id STRING Werbe-ID/IDFA
user_dim.device_info.user_default_language STRING Sprache des Betriebssystems
user_dim.device_info.device_time_zone_offset_seconds GANZZAHL Abweichung von GMT in Sekunden
user_dim.device_info.limited_ad_tracking BOOLESCH Geräteeinstellung zum Beschränken von Anzeigen-Tracking
user_dim.geo_info DATENSATZ Datensatz mit den geografischen Daten des Nutzers
user_dim.geo_info.continent STRING Der Kontinent, von dem die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
user_dim.geo_info.country STRING Das Land, aus dem die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
user_dim.geo_info.region STRING Die Region, aus der die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
user_dim.geo_info.city STRING Die Stadt, aus der die Ereignisse gemeldet wurden, basierend auf der IP-Adresse
user_dim.app_info DATENSATZ Datensatz mit den Informationen zur App
user_dim.app_info.app_version STRING Versionsname (Android) oder kurze Bundle-Version (iOS) der App
user_dim.app_info.app_instance_id STRING Eindeutige ID für diese Instanz der App
user_dim.app_info.app_store STRING App-Store, über den die App installiert wurde
user_dim.app_info.app_platform STRING Plattform, auf der die App läuft
user_dim.traffic_source DATENSATZ Name der Besucherquelle, über die der Nutzer akquiriert wurde. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
user_dim.traffic_source.user_acquired_campaign STRING Name der Marketingkampagne, mit der der Nutzer akquiriert wurde. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
user_dim.traffic_source.user_acquired_medium STRING Name des Mediums (bezahlte Suche, organische Suche, E-Mail usw.), über das der Nutzer akquiriert wurde. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
user_dim.traffic_source.user_acquired_source STRING Name des Netzwerks, in dem der Nutzer akquiriert wurde. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
user_dim.bundle_info DATENSATZ Datensatz mit Informationen zum Bundle, in das diese Ereignisse hochgeladen wurden
user_dim.bundle_info.bundle_sequence_id GANZZAHL Sequenz-ID des Bundles, in das diese Ereignisse hochgeladen wurden
user_dim.ltv_info DATENSATZ Datensatz mit Informationen zum Lifetime-Wert des Nutzers. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
user_dim.ltv_info.revenue GLEITKOMMAZAHL Lifetime-Wert (Umsatz) des Nutzers. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
user_dim.ltv_info.currency STRING Lifetime-Wert (Währung) des Nutzers. Dieses Feld wird in Tabellen zum Tagesverlauf nicht ausgefüllt.
 

event_dim

Feldname Datentyp Beschreibung
event_dim DATENSATZ Wiederholter Datensatz mit Informationen, die zu Ereignissen in diesem Bundle gehören
event_dim.date STRING Datum, an dem das Ereignis erfasst wurde (Format JJJJMMTT in der registrierten Zeitzone der App)
event_dim.name STRING Name dieses Ereignisses
event_dim.params DATENSATZ Wiederholter Datensatz mit den Parametern, die diesem Ereignis zugeordnet sind
event_dim.params.key STRING Ereignisparameterschlüssel
event_dim.params.value DATENSATZ Datensatz des Ereignisparameterwerts
event_dim.params.value.string_value STRING Stringwert des Ereignisparameters
event_dim.params.value.int_value GANZZAHL Ganzzahlwert des Ereignisparameters
event_dim.params.value.double_value GLEITKOMMAZAHL Doppelter Wert des Ereignisparameters
event_dim.timestamp_micros GANZZAHL Zeitpunkt, zu dem dieses Ereignis im Client erfasst wurde (Angabe in Mikrosekunden – UTC)
event_dim.previous_timestamp_micros GANZZAHL Zeitpunkt, zu dem dieses Ereignis zuvor im Client erfasst wurde (Angabe in Mikrosekunden – UTC)

War das hilfreich?

Wie können wir die Seite verbessern?
Suche
Suche löschen
Suche schließen
Google-Apps
Hauptmenü