[GA4] Schema di BigQuery Export

Questo articolo descrive il formato e lo schema dei dati delle proprietà Google Analytics 4 e i dati di Google Analytics per Firebase esportati in BigQuery.

Set di dati

Per ogni proprietà Google Analytics 4 e ogni progetto Firebase collegato a BigQuery, un singolo set di dati denominato "analytics_<property_id>" viene aggiunto al progetto BigQuery. L'ID proprietà si riferisce all'ID proprietà di Analytics, che puoi trovare nelle impostazioni della proprietà Google Analytics 4 e nelle impostazioni dell'analisi dell'app in Firebase. Ciascuna proprietà Google Analytics 4 e ogni app per cui è attivata l'esportazione in BigQuery esporteranno i relativi dati in quel singolo set di dati.

Tabelle

In ogni set di dati, viene creata ogni giorno una tabella denominata events_AAAAMMGG se l'opzione per l'esportazione giornaliera è attivata.

Se è attivata l'opzione per l'esportazione streaming, viene creata una tabella denominata events_intraday_AAAAMMGG. Questa tabella viene compilata continuamente man mano che gli eventi vengono registrati nell'arco dell'intera giornata ed eliminata alla fine di ogni giornata una volta completato il campo events_AAAAMMGG.

Non tutti i dispositivi su cui vengono attivati gli eventi inviano i propri dati ad Analytics lo stesso giorno in cui si verificano gli eventi. Per tenere conto di questa latenza, Analytics aggiorna le tabelle giornaliere (events_AAAAMMGG) con gli eventi relativi a queste date e fino a tre giorni dopo le date degli eventi. Gli eventi avranno il timestamp corretto indipendentemente dal ritardo con cui vengono inviati. Gli eventi ricevuti dopo questo periodo di tre giorni non vengono registrati.

 

Se utilizzi la sandbox di BigQuery, non è prevista l'importazione infragiornaliera degli eventi e vengono applicati limiti aggiuntivi.

Esegui l'upgrade dalla sandbox se vuoi utilizzare le importazioni infragiornaliere.

Colonne

Ogni colonna della tabella events_YYYYMMDD rappresenta un parametro specifico per evento. Tieni presente che alcuni parametri sono nidificati all'interno di RECORD e alcuni RECORD come items ed event_params sono ripetibili. Le colonne della tabella sono descritte di seguito.

event
I campi event contengono informazioni che identificano in modo univoco un evento.
Nome campo Tipo di dati Descrizione
event_date STRING La data in cui è stato registrato l'evento in formato AAAAMMGG, nel fuso orario di registrazione dell'app.
event_timestamp INTEGER L'ora (in microsecondi, UTC) in cui l'evento è stato registrato nel client.
event_previous_timestamp INTEGER L'ora (in microsecondi, UTC) in cui l'evento è stato precedentemente registrato nel client.
event_name STRING Il nome dell'evento.
event_value_in_usd FLOAT Il valore convertito in valuta (in $) del parametro "value" dell'evento.
event_bundle_sequence_id INTEGER L'ID sequenziale del bundle in cui sono stati caricati gli eventi.
event_server_timestamp_offset INTEGER Scostamento del timestamp tra tempo di raccolta e tempo di caricamento in microsecondi.

RECORD event_params

Il RECORD event_params può memorizzare i parametri evento a livello di campagna e contestuali, oltre a qualsiasi parametro evento definito dall'utente. Il RECORD event_params viene ripetuto per ogni chiave associata a un evento.

L'insieme di parametri memorizzato nel RECORD event_params dell'evento è univoco per ogni implementazione. Per visualizzare l'elenco completo dei parametri evento per l'implementazione, esegui una query sull'elenco dei parametri evento

Nome campo Tipo di dati Descrizione
event_params.key STRING Il nome del parametro evento.
event_params.value RECORD Un record contenente il valore del parametro evento.
event_params.value.string_value STRING Se il parametro evento è rappresentato da una stringa, come un URL o un nome di campagna, viene inserito in questo campo.
event_params.value.int_value INTEGER Se il parametro evento è rappresentato da un numero intero, viene inserito in questo campo.
event_params.value.double_value FLOAT Se il parametro evento è rappresentato da un valore doppio, viene inserito in questo campo.
event_params.value.float_value FLOAT Se il parametro evento è rappresentato da un valore con virgola mobile, viene inserito in questo campo. Questo campo non è attualmente in uso.

RECORD item_params

Il RECORD item_params può memorizzare i parametri degli elementi oltre a qualsiasi parametro elemento definito dall'utente. L'insieme di parametri memorizzato nel RECORD item_params è unico per ogni implementazione.

Nome campo Tipo di dati Descrizione
item_params.key STRING Il nome del parametro elemento.
item_params.value RECORD Un record contenente il valore del parametro elemento.
item_params.value.string_value STRING Se il parametro elemento è rappresentato da una stringa, viene inserito in questo campo.
item_params.value.int_value INTEGER Se il parametro elemento è rappresentato da un numero intero, viene inserito in questo campo.
item_params.value.double_value FLOAT Se il parametro elemento è rappresentato da un valore doppio, viene inserito in questo campo.
item_params.value.float_value FLOAT Se il parametro elemento è rappresentato da un valore con virgola mobile, viene inserito in questo campo.
user
I campi user contengono informazioni che identificano in modo univoco l'utente associato all'evento.
Nome campo Tipo di dati Descrizione
is_active_user BOOLEAN

Se l'utente era attivo (True) o non attivo (False) in un qualsiasi momento del giorno di calendario

Incluso solo nelle tabelle giornaliere (events_YYYYMMDD).

user_id STRING L'ID univoco assegnato a un utente.
user_pseudo_id STRING L'ID pseudonimo dell'utente, ad esempio l'ID istanza dell'app.
user_first_touch_timestamp INTEGER L'ora (in microsecondi) in cui l'utente ha aperto l'app o visitato il sito per la prima volta.

campi privacy_info

I campi privacy_info contengono informazioni basate sullo stato del consenso di un utente quando è attiva la modalità di consenso.
Nome campo Tipo di dati Descrizione
privacy_info.ads_storage STRING

Indica se il targeting degli annunci è attivato per un utente.

Valori possibili: Yes, No, Unset

privacy_info.analytics_storage STRING

Indica se lo spazio di archiviazione di Analytics è abilitato per l'utente.

Valori possibili: Yes, No, Unset

privacy_info.uses_transient_token STRING

Indica se un utente web ha negato l'accesso allo spazio di archiviazione di Analytics e lo sviluppatore ha attivato la misurazione senza cookie in base ai token temporanei nei dati del server.

Valori possibili: Yes, No, Unset

RECORD user_properties

Il RECORD user_properties contiene qualsiasi proprietà utente che hai impostato. Viene ripetuto per ogni chiave associata a un utente.
Nome campo Tipo di dati Descrizione
user_properties.key STRING Il nome della proprietà utente.
user_properties.value RECORD Un record per il valore proprietà utente.
user_properties.value.string_value STRING Il valore stringa della proprietà utente.
user_properties.value.int_value INTEGER Il valore numerico intero della proprietà utente.
user_properties.value.double_value FLOAT Il valore decimale della proprietà utente.
user_properties.value.float_value FLOAT Questo campo non è al momento utilizzato.
user_properties.value.set_timestamp_micros INTEGER L'ora (in microsecondi) in cui la proprietà utente è stata impostata per l'ultima volta.

RECORD user_ltv

Il RECORD user_ltv contiene informazioni sul lifetime value dell'utente. Questo RECORD non viene compilato nelle tabelle infragiornaliere.
Nome campo Tipo di dati Descrizione
user_ltv.revenue FLOAT Il lifetime value (entrate) dell'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
user_ltv.currency STRING Il lifetime value (valuta) dell'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
device
Il RECORD device contiene informazioni sul dispositivo da cui ha avuto origine l'evento.
Nome campo Tipo di dati Descrizione
device.category STRING La categoria del dispositivo (dispositivo mobile, tablet, computer).
device.mobile_brand_name STRING Il nome del brand del dispositivo.
device.mobile_model_name STRING Il nome del modello del dispositivo.
device.mobile_marketing_name STRING Il nome commerciale del dispositivo.
device.mobile_os_hardware_model STRING Le informazioni sul modello del dispositivo recuperate direttamente dal sistema operativo.
device.operating_system STRING Il sistema operativo del dispositivo.
device.operating_system_version STRING La versione del sistema operativo.
device.vendor_id STRING L'IDFV (presente solo se non è stato recuperato l'IDFA).
device.advertising_id STRING L'IDFA/ID pubblicità.
device.language STRING La lingua del sistema operativo.
device.time_zone_offset_seconds INTEGER La differenza in secondi rispetto al fuso orario GMT.
device.is_limited_ad_tracking BOOLEAN

L'impostazione della limitazione del monitoraggio degli annunci sul dispositivo.

In iOS14 e versioni successive, restituisce false se l'IDFA è diverso da zero.

device.web_info.browser STRING Il browser su cui l'utente ha visualizzato i contenuti.
device.web_info.browser_version STRING La versione del browser su cui l'utente ha visualizzato i contenuti.
device.web_info.hostname STRING Il nome host associato all'evento registrato.

geo

Il RECORD geo contiene informazioni sulla località geografica in cui è stato avviato l'evento.
Nome campo Tipo di dati Descrizione
geo.continent STRING Il continente da cui sono stati segnalati gli eventi, in base all'indirizzo IP.
geo.sub_continent STRING Il subcontinente da cui sono stati segnalati gli eventi, in base all'indirizzo IP.
geo.country STRING Il paese da cui sono stati segnalati gli eventi, in base all'indirizzo IP.
geo.region STRING La regione da cui sono stati segnalati gli eventi, in base all'indirizzo IP.
geo.metro STRING L'area metropolitana da cui sono stati segnalati gli eventi, in base all'indirizzo IP.
geo.city STRING La città da cui sono stati registrati gli eventi, in base all'indirizzo IP.
app_info
Il RECORD app_info contiene informazioni sull'app in cui è stato avviato l'evento.
Nome campo Tipo di dati Descrizione
app_info.id STRING Il nome del pacchetto o l'ID gruppo dell'app.
app_info.firebase_app_id STRING L'ID app Firebase associato all'app.
app_info.install_source STRING Lo store che ha installato l'app.
app_info.version STRING Il parametro versionName dell'app (Android) o la versione breve del bundle.
collected_traffic_source

Il RECORD collected_traffic_source contiene i dati sulla sorgente di traffico raccolti con l'evento.

Nome campo Tipo di dati Descrizione
manual_campaign_id STRING L'ID manuale della campagna (utm_id) raccolto con l'evento.
manual_campaign_name STRING Il nome manuale della campagna (utm_campaign) raccolto con l'evento.
manual_source STRING L'origine manuale della campagna (utm_source) raccolta con l'evento. Include anche i parametri analizzati dai parametri referral, non solo i valori UTM. 
manual_medium STRING Il mezzo manuale della campagna (utm_medium) raccolto con l'evento. Include anche i parametri analizzati dai parametri referral, non solo i valori UTM.
manual_term STRING La parola chiave o il termine manuale della campagna (utm_term) raccolto con l'evento.
manual_content STRING I metadati aggiuntivi manuali della campagna (utm_content) raccolti con l'evento.
gclid STRING L'identificatore di clic di Google raccolto con l'evento.
dclid STRING L'identificatore di Google Marketing Platform (GMP) raccolto con l'evento.
srsltid  STRING L'identificatore di Google Merchant Center raccolto con l'evento.
traffic_source

Il RECORD traffic_source contiene le informazioni sulla sorgente di traffico che ha acquisito per prima l'utente. Questo record non viene compilato nelle tabelle infragiornaliere.

Nota: i valori di traffic_source non cambiano se l'utente interagisce con altre campagne dopo l'installazione.

Nome campo Tipo di dati Descrizione
traffic_source.name STRING Il nome della campagna di marketing che ha acquisito per prima l'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
traffic_source.medium STRING Il nome del mezzo (ricerca a pagamento, ricerca organica, email e così via) che ha acquisito per primo l'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
traffic_source.source STRING Il nome della rete che ha acquisito per prima l'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
stream e platform
I campi stream e platform contengono informazioni sullo stream e sulla piattaforma dell'app.
Nome campo Tipo di dati Descrizione
stream_id STRING L'ID numerico dello stream di dati da cui ha avuto origine l'evento.
platform STRING La piattaforma dello stream di dati (web, iOS o Android) da cui ha avuto origine l'evento.
ecommerce
Questo RECORD ecommerce contiene informazioni su qualsiasi evento di e-commerce configurato su un sito web o un'app.
Nome campo Tipo di dati Descrizione
ecommerce.total_item_quantity INTEGER Numero totale di articoli in questo evento, ovvero la somma di items.quantity.
ecommerce.purchase_revenue_in_usd FLOAT Le entrate generate dall'acquisto per questo evento, espresse in dollari USA con unità standard. Il campo viene compilato solo per l'evento di acquisto.
ecommerce.purchase_revenue FLOAT Le entrate generate dall'acquisto per questo evento, espresse in valuta locale con unità standard. Il campo viene compilato solo per l'evento di acquisto.
ecommerce.refund_value_in_usd FLOAT L'importo del rimborso in questo evento, espresso in dollari USA con unità standard. Il campo viene compilato solo per l'evento di rimborso.
ecommerce.refund_value FLOAT L'importo del rimborso in questo evento, espresso in valuta locale con unità standard. Il campo viene compilato solo per l'evento di rimborso.
ecommerce.shipping_value_in_usd FLOAT Il costo di spedizione in questo evento, espresso in dollari USA con unità standard.
ecommerce.shipping_value FLOAT Il costo di spedizione in questo evento, espresso in valuta locale.
ecommerce.tax_value_in_usd FLOAT Il valore dell'imposta in questo evento, espresso in dollari USA con unità standard.
ecommerce.tax_value FLOAT Il valore dell'imposta in questo evento, espresso in valuta locale con unità standard.
ecommerce.transaction_id STRING L'ID della transazione e-commerce.
ecommerce.unique_items INTEGER Il numero di articoli unici in questo evento, basati su item_id, item_name e item_brand.
items
Il RECORD items contiene informazioni sugli articoli inclusi in un evento. Viene ripetuto per ogni articolo.
Nome campo Tipo di dati Descrizione
items.item_id STRING ID dell'articolo.
items.item_name STRING Il nome dell'articolo.
items.item_brand STRING Il brand dell'articolo.
items.item_variant STRING La variante dell'articolo.
items.item_category STRING La categoria dell'articolo.
items.item_category2 STRING La sottocategoria dell'articolo.
items.item_category3 STRING La sottocategoria dell'articolo.
items.item_category4 STRING La sottocategoria dell'articolo.
items.item_category5 STRING La sottocategoria dell'articolo.
items.price_in_usd FLOAT Il prezzo dell'articolo in dollari USA con unità standard.
items.price FLOAT Il prezzo dell'articolo espresso nella valuta locale.
items.quantity INTEGER La quantità dell'articolo. Se non specificata, la quantità è impostata su 1.
items.item_revenue_in_usd FLOAT Le entrate dell'articolo calcolate utilizzando la formula price_in_usd * quantità. Il campo viene compilato solo per gli eventi di acquisto in dollari USA con unità standard.
items.item_revenue FLOAT Le entrate dell'articolo calcolate utilizzando la formula quantità * prezzo. Il campo viene compilato solo per gli eventi di acquisto in valuta locale con unità standard.
items.item_refund_in_usd FLOAT Il valore del rimborso di questo articolo, calcolato utilizzando la formula price_in_usd * quantità. Il campo viene compilato solo per gli eventi di rimborso in dollari USA con unità standard.
items.item_refund FLOAT Il valore del rimborso di questo articolo calcolato utilizzando la formula prezzo * quantità. Il campo viene compilato solo per gli eventi di rimborso in valuta locale con unità standard.
items.coupon STRING Codice coupon applicato a questo articolo.
items.affiliation STRING Un'affiliazione di prodotto per indicare un'azienda di fornitura o la località di un negozio fisico.
items.location_id STRING La località associata all'articolo.
items.item_list_id STRING L'ID dell'elenco in cui l'articolo è stato presentato all'utente.
items.item_list_name STRING Il nome dell'elenco in cui l'articolo è stato presentato all'utente.
Items.item_list_index STRING La posizione dell'articolo in un elenco.
items.promotion_id STRING L'ID della promozione di un prodotto.
items.promotion_name STRING Il nome della promozione di un prodotto.
items.creative_name STRING Il nome di una creatività utilizzata in uno spot promozionale.
items.creative_slot STRING Il nome di un'area creatività.

RECORD item_params

Il RECORD item_params memorizza i parametri elemento personalizzati che hai definito. Tieni presente che i parametri elemento predefiniti, come item_id, item_name e così via, non sono inclusi qui, ma vengono esportati come campi espliciti.

L'insieme di parametri memorizzato nel RECORD item_params è unico per ogni implementazione. Per scoprire di più sulle implementazioni dell'e-commerce e sull'array di articoli di Google Analytics 4, consulta Misurare l'e-commerce.

Nome campo Tipo di dati Descrizione
items.item_params.key STRING Il nome del parametro elemento.
items.item_params.value RECORD Un record contenente il valore del parametro elemento.
items.item_params.value.string_value STRING Se il parametro elemento è rappresentato da una stringa, viene inserito in questo campo.
items.item_params.value.int_value INTEGER Se il parametro elemento è rappresentato da un numero intero, viene inserito in questo campo.
items.item_params.value.double_value FLOAT Se il parametro elemento è rappresentato da un valore doppio, viene inserito in questo campo.
items.item_params.value.float_value FLOAT Se il parametro elemento è rappresentato da un valore con virgola mobile, viene inserito in questo campo.

Righe

I dati relativi a un singolo evento possono essere rappresentati in una o più righe a seconda che contengano RECORD ripetuti. Ad esempio, un evento page_view con più event_params sarà simile a quanto illustrato nella tabella seguente. La riga iniziale contiene il nome, la data e il timestamp dell'evento, oltre ad altri elementi di dati non ripetuti. Il RECORD event_params viene ripetuto per ogni parametro associato all'evento. Questi RECORD ripetuti vengono compilati nelle righe successive direttamente sotto la riga dell'evento iniziale.

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 Home
      medium referral
      source google
      page_referrer https://www.google.com
      <parametri…> <valori…>

 

Questi dati sugli eventi vengono visualizzati come segue nell'interfaccia utente di GA4.

Considerazioni sull'aggiornamento degli SDK ad Android 17.2.5 o versioni successive e/o a iOS 16.20.0 o versioni successive

Se hai utilizzato versioni precedenti di uno degli SDK e prevedi di eseguire l'upgrade ad Android 17.2.5 (o versioni successive) e/o a iOS 16.20.0 (o versioni successive), tieni presente quanto segue:

  • Per utilizzare lo schema di BigQuery Export attuale, devi eseguire l'upgrade del tuo SDK ad Android 17.2.5 o versioni successive e/o a iOS 16.20.0 o versioni successive.  Se utilizzi versioni precedenti dell'SDK, i dati esportati riflettono lo schema precedente
  • Dal momento dell'upgrade in poi, potrai accedere ai dati degli articoli solo nell'array di articoli ripetuti. Diversamente da quanto accadeva nelle versioni precedenti degli SDK, questi dati non saranno più disponibili nei parametri evento standard.
  • Questa modifica è stata apportata per supportare l'analisi di più prodotti.
  • Di conseguenza, potresti dover modificare i riferimenti ai dati degli articoli/di prodotto.
Utilizza questo script per eseguire la migrazione dei set di dati BigQuery esistenti dal precedente schema di esportazione a quello nuovo
  1. Accedi alla pagina Gestisci risorse nella console di Cloud Platform.
  2. Apri il progetto per cui vuoi eseguire la migrazione dei dati e fai clic su Attiva Google Cloud Shell nella parte superiore della pagina.
  3. Quando viene aperta la shell, copia lo script riportato di seguito in un file denominato migration_script.sql:
    1. Esegui il comando cat > migration_script.sql
    2. Copia e incolla nella shell lo script indicato di seguito.
    3. Premi CTRL+D per salvare e uscire.
    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. Apri una nuova shell e copia lo script Bash riportato di seguito in un file denominato migration.sh:
    1. Esegui il comando cat > migration.sh
    2. Copia e incolla nella shell lo script indicato di seguito.
    3. Premi Ctrl+D per salvare e uscire.
    Modifica il seguente script in modo che includa l'ID proprietà Analytics, l'ID progetto BigQuery, l'ID app Firebase, il nome del set di dati BigQuery e le date di inizio e fine dei dati che ti interessano.
    Script (migration.sh):
    # ID proprietà Analytics del progetto. Si trova nelle impostazioni di Analytics in Firebase.
    PROPERTY_ID=ID proprietà Analytics
    
    # Progetto di esportazione Big Query.
    BQ_PROJECT_ID="ID del progetto BigQuery" (ad esempio "firebase-public-project")
    
    # ID dell'app Firebase.
    FIREBASE_APP_ID="ll tuo ID dell'app Firebase" (ad es. "1:300830567303:ios:09b1ab1d3ca29bda")
    
    # Set di dati da cui eseguire l'importazione.
    BQ_DATASET="nome del set di dati BigQuery da cui eseguire l'importazione" (ad esempio "com_firebase_demo_IOS")
    
    # Piattaforma
    PLATFORM="piattaforma dell'app. ANDROID o IOS"
    
    # Intervallo di date per il quale eseguire la migrazione, inclusi i giorni [START_DATE,END_DATE].
    START_DATE=20180324
    END_DATE=20180327
    
    # Non modificare lo script seguente, a meno che tu non sappia esattamente cosa fare :)
    startdate=$(date -d"$START_DATE"  +%Y%m%d) || exit -1
    enddate=$(date -d"$END_DATE"  +%Y%m%d) || exit -1
    
    # Ripetizione durante le date.
    DATE="$startdate"
    while [ "$DATE" -le "$enddate" ]; do
    
            # Tabella BQ creata dai parametri in alto.
            BQ_TABLE="$BQ_PROJECT_ID.$BQ_DATASET.app_events_$DATE"
    
            echo "Migrating $BQ_TABLE"
    
            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
    
    # END OF SCRIPT
    
    
  5. Apri una nuova shell ed esegui il comando bash migration.sh
Schema di esportazione precedente

user_dim

Nome campo Tipo di dati Descrizione
user_dim RECORD Un record delle dimensioni degli utenti.
user_dim.user_id STRING Lo User ID impostato tramite l'API setUserId.
user_dim.first_open_timestamp_micros INTEGER Il momento (in microsecondi) in cui l'utente ha aperto l'applicazione per la prima volta.
user_dim.user_properties RECORD Un record ripetuto delle proprietà utente impostate con l'API setUserProperty.
user_dim.user_properties.key STRING Il nome della proprietà utente.
user_dim.user_properties.value RECORD Un record per le informazioni sulla proprietà utente.
user_dim.user_properties.value.value RECORD Un record per il valore proprietà utente.
user_dim.user_properties.value.value.string_value STRING Il valore stringa della proprietà utente.
user_dim.user_properties.value.value.int_value INTEGER Il valore numerico intero della proprietà utente.
user_dim.user_properties.value.value.double_value FLOAT Il valore decimale della proprietà utente.
user_dim.user_properties.value.set_timestamp_usec INTEGER L'ora (in microsecondi) in cui la proprietà utente è stata impostata per l'ultima volta.
user_dim.user_properties.value.index INTEGER L'indice (0-24) della proprietà utente.
user_dim.device_info RECORD Un record di informazioni sul dispositivo.
user_dim.device_info.device_category STRING La categoria del dispositivo (dispositivo mobile, tablet, computer).
user_dim.device_info.mobile_brand_name STRING Il nome del brand del dispositivo.
user_dim.device_info.mobile_model_name STRING Il nome del modello del dispositivo.
user_dim.device_info.mobile_marketing_name STRING Il nome commerciale del dispositivo.
user_dim.device_info.device_model STRING Il modello del dispositivo.
user_dim.device_info.platform_version STRING La versione del sistema operativo.
user_dim.device_info.device_id STRING L'IDFV (presente solo se l'IDFA non è disponibile).
user_dim.device_info.resettable_device_id STRING L'IDFA/ID pubblicità.
user_dim.device_info.user_default_language STRING La lingua del sistema operativo.
user_dim.device_info.device_time_zone_offset_seconds INTEGER La differenza in secondi rispetto al fuso orario GMT.
user_dim.device_info.limited_ad_tracking BOOLEAN L'impostazione della limitazione del monitoraggio degli annunci sul dispositivo.
user_dim.geo_info RECORD Un record delle informazioni geografiche dell'utente.
user_dim.geo_info.continent STRING Il continente da cui sono stati segnalati gli eventi, in base all'indirizzo IP.
user_dim.geo_info.country STRING Il paese da cui sono stati segnalati gli eventi, in base all'indirizzo IP.
user_dim.geo_info.region STRING La regione da cui sono stati segnalati gli eventi, in base all'indirizzo IP.
user_dim.geo_info.city STRING La città da cui sono stati registrati gli eventi, in base all'indirizzo IP.
user_dim.app_info RECORD Un record di informazioni sull'app.
user_dim.app_info.app_version STRING Il parametro versionName dell'app (Android) o la versione breve del bundle.
user_dim.app_info.app_instance_id STRING L'ID univoco per questa istanza dell'app.
user_dim.app_info.app_store STRING Lo store dal quale è stata installata l'app.
user_dim.app_info.app_platform STRING La piattaforma sulla quale viene eseguita l'app.
user_dim.traffic_source RECORD Il nome della sorgente di traffico utilizzata per acquisire l'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
user_dim.traffic_source.user_acquired_campaign STRING Il nome della campagna di marketing che ha acquisito l'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
user_dim.traffic_source.user_acquired_medium STRING Il nome del mezzo (ricerca a pagamento, ricerca organica, email e così via) con cui è stato acquisito l'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
user_dim.traffic_source.user_acquired_source STRING Il nome della rete che ha acquisito l'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
user_dim.bundle_info RECORD Un record di informazioni riguardanti il bundle in cui sono stati caricati gli eventi.
user_dim.bundle_info.bundle_sequence_id INTEGER L'ID sequenziale del bundle in cui sono stati caricati gli eventi.
user_dim.ltv_info RECORD Un record di informazioni sul lifetime value dell'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
user_dim.ltv_info.revenue FLOAT Il lifetime value (entrate) dell'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
user_dim.ltv_info.currency STRING Il lifetime value (valuta) dell'utente. Questo campo non viene compilato nelle tabelle infragiornaliere.
 

event_dim

Nome campo Tipo di dati Descrizione
event_dim RECORD Un record ripetuto di informazioni relative agli eventi nel pacchetto.
event_dim.date STRING La data in cui è stato registrato l'evento (in formato AAAAMMGG, nel fuso orario di registrazione dell'app).
event_dim.name STRING Il nome dell'evento.
event_dim.params RECORD Un record ripetuto dei parametri associati all'evento.
event_dim.params.key STRING La chiave del parametro evento.
event_dim.params.value RECORD Un record del valore del parametro evento.
event_dim.params.value.string_value STRING Il valore stringa del parametro evento.
event_dim.params.value.int_value INTEGER Il valore numero intero del parametro evento.
event_dim.params.value.double_value FLOAT Il valore decimale del parametro evento.
event_dim.timestamp_micros INTEGER L'ora (in microsecondi, UTC) in cui l'evento è stato registrato sul client.
event_dim.previous_timestamp_micros INTEGER L'ora (in microsecondi, UTC) in cui l'evento era stato precedentemente registrato sul client.

È stato utile?

Come possiamo migliorare l'articolo?
Ricerca
Cancella ricerca
Chiudi ricerca
Menu principale
5023693721738159295
true
Cerca nel Centro assistenza
true
true
true
true
true
69256
false
false