Všetci sa dnes stretávame s obrovským množstvom dát. Mnohí práve v Google Sheets, ktorý je skvelým pomocníkom pri každodennej práci. V podstate je to jednoduchý nástroj, no pod kapotou skrýva obrovské možnosti. Jednou z nich je aj prepojenie Google Sheets a BigQuery.
Spojenie dát z Google Sheets napríklad s dátami z Google Analytics alebo Search Console v BigQuery vám otvorí dvere k oveľa hlbším analýzam a lepším prehľadom.
A funguje to aj naopak – dáta z BigQuery si viete jednoducho stiahnuť a ďalej s nimi pracovať v prostredí tabuliek.
V tomto článku si ukážeme, ako na to. Zameriame sa na prepojenie pomocou AppScriptu, ale aj na natívnu integráciu, ktorú ponúka priamo Google Sheets. 🚀
Čo je Google Apps Script?
Google Apps Script je skriptovací jazyk založený na Javascripte, ktorý je určený na automatizáciu, integráciu a rozšírenie funkcionality aplikácií v rámci balíka Google Workspace (vrátane Google Sheets, Docs, Gmail a iných).
Pre marketérov to znamená možnosť automatizovať procesy, ktoré by inak museli byť vykonávané manuálne – napríklad pravidelný export reportov alebo aktualizáciu dát v dashboardoch.
Stačí len raz napísať (alebo skopírovať 🙂 skript a následne ho spúšťať jedným kliknutím. Ušetríte si tým množstvo času.
Predtým než začnete
Pre nastavenie prepojenia budete potrebovať:
- Google Sheets dokument (ako cieľový alebo zdrojový bod dát).
- Prístupové oprávnenie (autorizácia) do služby Google BigQuery.
- Aktivované BigQuery API v príslušnom projekte služby Google Cloud Platform.
Minimálne budete potrebovať rolu BigQuery Data Viewer (pre čítanie dát) alebo BigQuery Data Editor (pre zápis). Nedostatočné oprávnenia sú najčastejšou príčinou zlyhania prepojenia.
Z Google Sheets do BigQuery
Chcete dáta z vašej tabuľky dostať do BigQuery? Pomocou nasledujúceho skriptu to zvládnete v niekoľkých krokoch.
-
Pripravte si dokument
Začnite otvorením Google Sheets so zdrojovými dátami. Dôležité je, aby prvý riadok tabuľky obsahoval názvy stĺpcov (headers) – tie sa totiž automaticky použijú ako názvy polí v BigQuery tabuľke.
-
Otvorte Apps Script a vložte kód
V menu kliknite na Rozšírenia → Apps Script.
Zmažte všetok predpripravený kód a vložte kód, ktorý nájdete zadarmo v našom Gist.
-
Nastavte konfiguráciu
V skripte je potrebné upraviť základné identifikátory projektu, datasetu a tabuľky. Na začiatku skriptu teda doplňte hodnoty pre PROJECT_ID, DATASET_ID, TABLE_ID a SHEET_NAME. Tým určíte, kam sa majú dáta odoslať.
!!! Hodnota premennej SHEET_NAME sa musí zhodovať s názvom hárku, v ktorom máte uloženú tabuľku na export.
-
Povoľte BigQuery službu
Aby skript mohol s BigQuery komunikovať, je potrebné povoliť aj tzv. BigQuery Service. Urobíte to priamo v editore AppScriptu kliknutím na „+“ vedľa položky Services a pridaním BigQuery API.
-
Autorizujte skript
Ulože zmeny v skripte. V hornom menu vyberte funkciu exportSheetToBigQuery a kliknite na tlačidlo Spustiť (▶). Prejdite jednorazovým autorizačným procesom, aby ste skriptu povolili prístup k vášmu BigQuery.
Výsledkom je, že všetky dáta z vášho hárku sa prenesú do vybranej tabuľky v BigQuery. Tento postup sa dá ďalej automatizovať – napríklad spúšťať skript každý deň o 03:45 hod.
Skript si, môžete prispôsobiť presne podľa vašich požiadaviek. Stačí trochu vibe codingu. Môžete pridať validačné pravidlá pre kontrolu integrity konkrétnych stĺpcov, filtrovanie riadkov, transformáciu formátov, či dokonca logovanie (zaznamenávanie) priebehu celého exportu.
Z BigQuery do Google Sheets
Ak potrebujete preniesť dáta z BigQuery priamo do Google Sheets tabuľky, máte k dispozícii niekoľko spôsobov. Najjednoduchší je využitie natívnej integrácie.
Natívny dátový konektor vám umožní pripojiť celú tabuľku alebo použiť vlastný SQL dopyt (query) na extrakciu len tých dát, ktoré naozaj potrebujete.
Postup je skutočne jednoduchý:
-
- Prejdite do menu: Dáta → Dátové konektory → Pripojiť k BigQuery.
- Vyberte požadovaný projekt, dataset a konkrétnu tabuľku.
Ak by ste mali problém s prístupovými právami alebo potrebovali zložitejšie riešenie na mieru, opäť prichádza na rad Apps Script. Postup je podobný ako pri exporte dát do BigQuery.
- V editore Apps Script vytvoríte nový skript.
- Vložíte doň funkciu určenú pre import dát. Príklad takejto funkcie je dostupný v našom Gist.
- Doplníte potrebné parametre, ako sú query, project id a názov cieľového hárku.
!!! Sheet ID je unikátny číselný identifikátor, ktorý nájdete v URL adrese prehliadača, keď máte daný hárok otvorený. !!!
Bonus: Pridajte si vlastné menu
Ak chcete mať prepojenie BigQuery a Sheets vždy po ruke, môžete si v hárku vytvoriť vlastné menu. Do AppScriptu stačí pridať krátky kód, ktorý po načítaní dokumentu vytvorí novú položku „BigQuery“ v hlavnej lište. V nej si potom môžete priamo vybrať, či chcete dáta exportovať alebo importovať. Bez nutnosti otvárať editor skriptov.
Ako na to? V Apps Scripte vytvorte nový súbor, vymažte predpripravený kód a vložte túto funkciu:
function onOpen() {
const ui = SpreadsheetApp.getUi();
ui.createMenu('BigQuery')
.addItem('Exportovať do BigQuery', 'exportSheetToBigQuery')
.addItem('Importovať z BigQuery', 'importBigQueryToSheet')
.addToUi();
}
Uložte skript a znovu načítajte váš Google Sheet. V hlavnom menu by ste teraz mali vidieť novú položku „BigQuery“.
Záver
Prepojenie Google Sheets a BigQuery ponúka efektívny spôsob, ako prepojiť flexibilitu tabuliek s výkonom databázového riešenia. Vďaka tomu môžete analyzovať väčšie objemy dát, testovať hypotézy alebo vytvárať vlastné reportingové riešenia.
Apps Script pritom umožňuje celý proces automatizovať – či už ide o denné exporty výsledkov kampaní, prepojenie viacerých zdrojov dát alebo generovanie reportov pre klientov. Výsledkom je plynulejší tok dát a menej manuálnej práce. A to chceme, nie? 🤔🧠





