Domanda

Ho una riga con colonna URL.

Mi piace rompere l'URL nel dominio e nel percorso.Posso fare un dominio usando il dominio (URL) nella sintassi BigQuery.

La mia domanda è come ottengo il percorso dell'URL?

E.G. http://www.somedomain.com/x/y/abc

Voglio ottenere x, y e ABC come Colums separatonn.

È stato utile?

Soluzione

È possibile utilizzare Regexp per estrarre ciò che è necessario

SELECT Regexp_extract(URL,r'^http://www(?:[^/]*)/(.*)') as full_path,
 Regexp_extract(URL,r'^http://www(?:[^/]*)/(?:[^/]*/){0}([^/]*)') as full_path0,
 Regexp_extract(URL,r'^http://www(?:[^/]*)/(?:[^/]*/){1}([^/]*)') as full_path1,
 Regexp_extract(URL,r'^http://www(?:[^/]*)/(?:[^/]*/){2}([^/]*)') as full_path2,
 Regexp_extract(URL,r'^http://www(?:[^/]*)/(?:[^/]*/){3}([^/]*)') as full_path3,
FROM 
(Select 'http://www.somedomain.com/X/Y/abc' as URL)
.

e per quanto riguarda il confronto con MS Log Parser.

    .
  • log parser esegue dritto sui file piatti dei registri mentre è necessario in Bq per caricarlo prima.
  • Log Parser funziona su una macchina dedicata mentre BQ funziona come una nuvola Servizio (molte macchine, non importa quanti ...)
  • Scoprirai che le prestazioni sagge Bq fa le cose più velocemente e con Nessuna preoccupazione per quanto riguarda le risorse disponibili per in lavorazione.(Log Parses può eseguire multi-thread solo come numero di Le unità della CPU disponibili e consumano molto cache della macchina corre su)
  • Le funzioni Regex in BQ ti danno tutte le flessibilità in Estrazione di qualsiasi modello di dati dai registri.

goditi

Altri suggerimenti

GA_Sessions ha colpito le tabelle delle foglie che rompe automaticamente il tuo URL

con il tuo esempio di

http://www.somedomain.com/X/Y/abc

hits.page.pagePathLevel1 will have 'www.somedomian.com/'
hits.page.pagePathLevel2 will have '/X/'
hits.page.pagePathLevel3 will have '/Y/'
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top