Trasferimenti di canali YouTube
Il connettore BigQuery Data Transfer Service per YouTube consente di pianificare e gestire automaticamente i job di caricamento ricorrenti per i report dei canali YouTube.
Report supportati
- Report sui canali (caricati automaticamente in BigQuery)
BigQuery Data Transfer Service per i report dei canali YouTube supporta le seguenti opzioni di generazione di report:
Opzione di segnalazione | Assistenza |
---|---|
Versione dell'API supportata | 18 giugno 2018 |
Frequenza di ripetizione | Ogni giorno alle ore 14:10 circa UTC Puoi configurare l'ora |
Aggiorna finestra | Ultimo giorno Non configurabile. |
Durata massima del backfill | 30 giorni Da luglio 2018, i report di YouTube contenenti dati storici sono disponibili per 30 giorni dalla relativa data di generazione. I report contenenti dati non storici sono disponibili per 60 giorni. Per ulteriori informazioni, consulta Dati storici nella documentazione dell'API di reporting di YouTube. |
Per informazioni su come i report dei canali YouTube vengono trasformati in tabelle e viste BigQuery, consulta Trasformazioni dei report dei canali YouTube.
Importazione dei dati dai trasferimenti dei canali YouTube
Quando trasferisci i dati da un canale YouTube a BigQuery, questi vengono caricati nelle tabelle BigQuery partizionate per data. La partizione della tabella in cui vengono caricati i dati corrisponde alla data dell'origine dati. Se pianifichi più trasferimenti per la stessa data, BigQuery Data Transfer Service sovrascrive la partizione per quella data specifica con i dati più recenti. Più trasferimenti nello stesso giorno o l'esecuzione di backfill non generano dati duplicati e le partizioni per altre date non sono interessate.Aggiornare le finestre
Una finestra di aggiornamento è il numero di giorni per i quali un trasferimento di dati recupera i dati quando si verifica un trasferimento di dati. Ad esempio, se la finestra di aggiornamento è di tre giorni e si verifica un trasferimento giornaliero, BigQuery Data Transfer Service recupera tutti i dati dalla tabella di origine degli ultimi tre giorni. In questo esempio, quando si verifica un trasferimento giornaliero, BigQuery Data Transfer Service crea una nuova partizione della tabella di destinazione BigQuery con una copia dei dati della tabella di origine del giorno corrente, quindi attiva automaticamente le esecuzioni di backfill per aggiornare le partizioni della tabella di destinazione BigQuery con i dati della tabella di origine degli ultimi due giorni. Le esecuzioni di backfill attivate automaticamente sovrascrivono o aggiornano in modo incrementale la tabella di destinazione BigQuery, a seconda che gli aggiornamenti incrementali siano supportati o meno nel connettore BigQuery Data Transfer Service.
Quando esegui un trasferimento dati per la prima volta, vengono recuperati tutti i dati di origine disponibili all'interno della finestra di aggiornamento. Ad esempio, se la finestra di aggiornamento è di tre giorni ed esegui il trasferimento dei dati per la prima volta, BigQuery Data Transfer Service recupera tutti i dati di origine entro tre giorni.
Le finestre di aggiornamento sono mappate al campo dell'API TransferConfig.data_refresh_window_days
.
Per recuperare i dati al di fuori della finestra di aggiornamento, ad esempio i dati storici, o per recuperare i dati da eventuali interruzioni o lacune del trasferimento, puoi avviare o pianificare una esecuzione di backfill.
Limitazioni
- La dimensione massima supportata per ciascun report è 1710 GB.
- La frequenza minima con cui puoi pianificare un trasferimento di dati è una volta ogni 24 ore. Per impostazione predefinita, un trasferimento di dati inizia al momento della sua creazione. Tuttavia, puoi configurare l'ora di inizio del trasferimento dei dati quando configuri il trasferimento.
- BigQuery Data Transfer Service non supporta i trasferimenti incrementali dei dati durante un trasferimento del proprietario dei contenuti di YouTube. Quando specifichi una data per un trasferimento di dati, vengono trasferiti tutti i dati disponibili per quella data.
- Non puoi creare un trasferimento dei dati del canale YouTube se hai eseguito l'accesso come identità federata. Puoi creare un trasferimento del canale YouTube solo se hai eseguito l'accesso con un Account Google.
Prima di iniziare
Prima di creare un trasferimento dei dati del canale YouTube:
- Verifica di aver completato tutte le azioni necessarie per abilitare BigQuery Data Transfer Service.
- Crea un set di dati BigQuery per archiviare i dati di YouTube.
Autorizzazioni obbligatorie
Per creare un trasferimento di dati del canale YouTube sono necessari i seguenti elementi:
- YouTube: proprietà del canale YouTube
BigQuery: le seguenti autorizzazioni di Identity and Access Management (IAM) in BigQuery:
bigquery.transfers.update
per creare il trasferimento.bigquery.datasets.get
ebigquery.datasets.update
nel set di dati di destinazione.- Se intendi configurare le notifiche di esecuzione del trasferimento per Pub/Sub, devi disporre delle autorizzazioni
pubsub.topics.setIamPolicy
. Le autorizzazioni Pub/Sub non sono necessarie se configuri solo le notifiche via email. Per ulteriori informazioni, consulta Notifiche di esecuzione di BigQuery Data Transfer Service.
Il ruolo IAM predefinito bigquery.admin
include tutte le autorizzazioni BigQuery necessarie per creare un trasferimento dei dati del canale YouTube. Per saperne di più sui ruoli IAM in
BigQuery, consulta Ruoli e autorizzazioni predefiniti.
Configurare il trasferimento di un canale YouTube
Per configurare il trasferimento dei dati di un canale YouTube, è necessario:
- Suffisso tabella: un nome facile da ricordare per il canale fornito da te quando hai configurato il trasferimento dei dati. Il suffisso viene aggiunto all'ID job per creare il nome della tabella, ad esempio reportTypeId_suffix. Il suffisso viene utilizzato per impedire che trasferimenti separati scrivano nelle stesse tabelle. Il suffisso della tabella deve essere univoco in tutti i trasferimenti che caricano i dati nello stesso set di dati e deve essere breve per ridurre al minimo la lunghezza del nome della tabella risultante.
Se utilizzi l'API YouTube Reporting e hai job di generazione di report esistenti, BigQuery Data Transfer Service carica i dati dei report. Se non hai job di generazione di report esistenti, la configurazione del trasferimento attiva automaticamente i job di generazione di report di YouTube.
Per creare un trasferimento di dati del canale YouTube:
Console
Vai alla pagina Trasferimenti dati nella console Google Cloud.
Fai clic su
Crea trasferimento.Nella pagina Crea trasferimento:
Nella sezione Tipo di origine, seleziona Canale YouTube per Origine.
Nella sezione Nome configurazione di trasferimento, in Nome visualizzato, inserisci un nome per il trasferimento dei dati, ad esempio
My Transfer
. Il nome del trasferimento può essere qualsiasi valore che ti consenta di identificare il trasferimento se devi modificarlo in un secondo momento.Nella sezione Opzioni di programmazione:
Per Frequenza di ripetizione, scegli un'opzione per la frequenza con cui eseguire il trasferimento di dati. Se selezioni Giorni, specifica un'ora valida in UTC.
- Ore
- Giorni
- On demand
Se applicabile, seleziona Inizia ora o Inizia all'ora impostata e fornisci una data di inizio e un'ora di esecuzione.
Nella sezione Impostazioni di destinazione, per Set di dati di destinazione, scegli il set di dati che hai creato per archiviare i dati.
Nella sezione Dettagli dell'origine dati:
- In Suffisso tabella, inserisci un suffisso come
MT
. Seleziona la casella Configura job per consentire a BigQuery di gestire i job per i report di YouTube per tuo conto. Se esistono report di YouTube che non sono ancora disponibili per il tuo account, vengono creati nuovi job di generazione di report per attivarli.
- In Suffisso tabella, inserisci un suffisso come
(Facoltativo) Nella sezione Opzioni di notifica:
- Fai clic sul pulsante di attivazione/disattivazione per attivare le notifiche via email. Se attivi questa opzione, l'amministratore dei trasferimenti riceve una notifica via email quando un'esecuzione del trasferimento non va a buon fine.
- In Seleziona un argomento Pub/Sub, scegli il nome dell'argomento o fai clic su Crea un argomento. Questa opzione configura le notifiche di esecuzione di Pub/Sub per il trasferimento dei dati.
Fai clic su Salva.
bq
Inserisci il comando bq mk
e specifica il flag di creazione del trasferimento:
--transfer_config
. Sono obbligatori anche i seguenti flag:
--data_source
--target_dataset
--display_name
--params
bq mk \ --transfer_config \ --project_id=project_id \ --target_dataset=dataset \ --display_name=name \ --params='parameters' \ --data_source=data_source
Dove:
- project_id è l'ID progetto.
- dataset è il set di dati di destinazione per la configurazione del trasferimento.
- name è il nome visualizzato della configurazione di trasferimento. Il nome del trasferimento di dati può essere qualsiasi valore che ti consenta di identificare il trasferimento se devi modificarlo in un secondo momento.
- parameters contiene i parametri per la configurazione del trasferimento creata in formato JSON. Ad esempio:
--params='{"param":"param_value"}'
. Per i trasferimenti di dati dei canali YouTube, devi fornire il parametrotable_suffix
. Se vuoi, puoi impostare il parametroconfigure_jobs
sutrue
per consentire a BigQuery Data Transfer Service di gestire i job di generazione di report di YouTube per tuo conto. Se al momento non esistono report di YouTube per il tuo canale, vengono creati nuovi job di generazione di report per attivarli. - data_source è l'origine dati -
youtube_channel
.
Puoi anche fornire il flag --project_id
per specificare un determinato progetto. Se --project_id
non è specificato, viene utilizzato il progetto predefinito.
Ad esempio, il comando seguente crea un trasferimento di dati del canale YouTube denominato
My Transfer
utilizzando il suffisso tabella MT
e il set di dati di destinazione mydataset
. Il trasferimento dei dati viene creato nel progetto predefinito:
bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"table_suffix":"MT","configure_jobs":"true"}' \
--data_source=youtube_channel
API
Utilizza il metodo projects.locations.transferConfigs.create
e fornisci un'istanza della risorsa TransferConfig
.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo di BigQuery con le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API BigQuery Java.
Per autenticarti in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Esegui query sui dati
Quando vengono trasferiti a BigQuery, i tuoi dati vengono scritti in tabelle partizionate per data di importazione. Per ulteriori informazioni, consulta Introduzione alle tabelle partizionate.
Se esegui query direttamente sulle tabelle anziché utilizzare le viste generate automaticamente, devi utilizzare la pseudocolonna _PARTITIONTIME
nella query. Per ulteriori informazioni, consulta Esecuzione di query sulle tabelle partizionate.
Risolvere i problemi di configurazione del trasferimento del canale YouTube
Se riscontri problemi durante la configurazione del trasferimento dei dati, consulta la sezione Problemi di trasferimento di YouTube in Risoluzione dei problemi relativi alle configurazioni di trasferimento.