SlideShare a Scribd company logo
1 of 40
Download to read offline
10 tipů, jak pracovat s
Václav Ráš
776 221 096
vaclav.ras@dataras.cz
Kdo je Vašek?
Datový analytik
- Specialista na BigQuery a odpovídání komplexních datových otázek
- Tvůrce toolu (www.ga4dataimport.com)
Václav Ráš
776 221 096
vaclav.ras@dataras.cz
Tipy
Pro koho to je?
O čem to nebude?
Dobře...
O čem to tedy bude?
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
SELECT
*
FROM
project_name.dataset_name.table_name;
SELECT
user_id,
purchase_value
FROM
project_name.dataset_name.table_name
WHERE
date = "2023-10-19";
1. Jak na základní optimalizaci? SQL
Tipy
SELECT
user_id,
purchase_value
FROM
project_name.dataset_name.table_name;
SELECT
user_id,
purchase_value
FROM
project_name.dataset_name.table_name
WHERE
date = "2023-10-19"
AND event_name = "purchase";
1) 2)
3) 4)
SELECT
user_id,
purchase_value
FROM
project_name.dataset_name.table_name;
SELECT
user_id,
purchase_value
FROM
project_name.dataset_name.table_name
WHERE
date = "2023-10-19"
AND event_name = "purchase";
SELECT
*
FROM
project_name.dataset_name.table_name;
SELECT
user_id,
purchase_value
FROM
project_name.dataset_name.table_name
WHERE
date = "2023-10-19";
1. Jak na základní optimalizaci? SQL
Tipy
1) 2)
3) 4)
= 1 084 Kč
= 0,12 Kč
1. Jak na základní optimalizaci? Premisy
Tipy
1. Partitioning tabulky dle date
2. Clustering dle event_name
3. BigQuery = Sloupcová databáze
(čím míň sloupců chci, tím méně to stojí)
1. Jak na základní optimalizaci? Final tuning
Tipy
1. Při selectování dat z GA4 datasetu používejte _TABLE_SUFFIX místo event_date
LIMIT = 10 na konci SQL nic nezlevní
2. INT64 je levnější (a rychlejší) než STRING
3. Nebojte se číselných datových typů
→ existuje SAFE_CAST(), nespadne to …
-- Tento select stojí 0 Kč
SELECT
PARSE_DATE("%Y%m%d", _TABLE_SUFFIX) AS event_date,
COUNT(*) AS event_count
FROM
`analytics_XXXXXXXXX.events_*`/* <-- GA4 DATASET */
WHERE
_TABLE_SUFFIX IS NOT NULL
GROUP BY 1;
--
-- Tento select stojí klidně desítky Kč
SELECT
event_date,
COUNT(*) AS event_count
FROM
`analytics_XXXXXXXXX.events_*`/* <-- GA4 DATASET */
GROUP BY 1
LIMIT 10;
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
2. Pár tipů při psaní SQL | Hromadný kurzor
Tipy
Geniální pro hromadné úpravy více řádků - šetří spoustu času
2. Pár tipů při psaní SQL | F1 je kámoš
Tipy
Opět skvělé pro hromadné úpravy většího množství textu
2. Pár tipů při psaní SQL | CTRL (CMD ⌘) + Klik
Tipy
Prokliknutí detailu tabulky (musí být v závorkách ``)
2. Pár tipů při psaní SQL | Historie SQL
Tipy
- Personal history
- Project history
Výsledky (results) každé query jsou uložené 24h
Samotné query jsou uložené měsíce
2. Pár tipů při psaní SQL | Nepište jak 🐷
Tipy
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
3. Nebojím se nákladů za BigQuery: Ceník
Query:
- 6.25 USD / zprocesovaný TB
- První TB měsíčně je zdarma
Úložiště
- Active logical storage: 23 USD / TB / měsíc
- Prvních 10 GB měsíčně zdarma
- Long-term logical storage 16 USD / TB / měsíc
- Prvních 10 GB měsíčně zdarma
- Long-term = data nebyla změněna alespoň 90 dní
(k 19.10.2023)
Tipy
Quotas (limit):
1 TB / denně / projekt
… max 6.25 USD / denně
… max 4 400 Kč / měsíčně
3. Nebojím se nákladů za BigQuery: Quotas
Tipy
3. Nebojím se nákladů za BigQuery: Notifikace
Tipy
V rámci Billingu se dají nastavit notifikace na email, při překročení určité částky v daném měsíci.
-- Dotaz ukáže, kdo za posledních 31 dní (a čím) vytížil nejvíce databázi
WITH
dates AS (
SELECT
DATE_SUB(CURRENT_DATE(), INTERVAL 31 DAY) AS last_month,
CURRENT_DATE() AS today
)
SELECT
info.project_id,
user_email || COALESCE(" - (" || (SELECT l.value FROM UNNEST(labels) l WHERE l.key = 'requestor') || ")", "") AS user,
info.job_type,
COUNT(info.job_type) AS queries_counter,
ROUND(SUM(CAST(info.total_bytes_billed / 1024 / 1024 / 1024 AS FLOAT64)), 0) || ' GB' AS data_billed,
ROUND(SUM(CAST(info.total_bytes_billed / 1024 / 1024 / 1024 AS FLOAT64)) * 0.00625, 0) || ' USD' AS cost, -- $6.25 per TB
ROUND(SUM(DATETIME_DIFF(DATETIME(info.end_time), DATETIME(info.start_time), SECOND)) / 60) || ' minutes' AS run_time
FROM
`region-eu`.INFORMATION_SCHEMA.JOBS_BY_PROJECT info,
dates
WHERE
DATE(info.creation_time) BETWEEN dates.last_month AND dates.today
GROUP BY
1, 2, 3
ORDER BY
SUM(info.total_bytes_billed) DESC;
3. Nebojím se nákladů za BigQuery: Stalking
Tipy
Dokumentace
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
-- Vytvoření EU Datasetu
CREATE SCHEMA IF NOT EXISTS `common`
OPTIONS(
description="Dataset pro globálně používané funkce a procedury.",
location="eu");
--
-- getURLParametr
CREATE OR REPLACE FUNCTION `common.getURLParameter`(url STRING, parameter STRING) AS ((
SELECT REGEXP_EXTRACT(url, r'[?&]'||parameter||'=([^&]+)')
));
--
-- URL Decode:
CREATE OR REPLACE FUNCTION `common.URLDecode`(url STRING) AS ((
SELECT SAFE_CONVERT_BYTES_TO_STRING(
ARRAY_TO_STRING(
ARRAY_AGG(
IF(STARTS_WITH(y, '%'), FROM_HEX(SUBSTR(y, 2)), CAST(y AS BYTES)) ORDER BY i
),
b'')
)
FROM UNNEST(REGEXP_EXTRACT_ALL(url, r"%[0-9a-fA-F]{2}|[^%]+")) AS y WITH OFFSET AS i
));
4. Uživatelské funkce a procedury | Vytvoření
Tipy
1) Vytvoření Datasetu
2) Vytvoření funkce
getURLParametr
3) Vytvoření funkce
URLDecode
Vstupní parametry funkce
SELECT
common.URLDecode("https://www.ceskatelevize.cz/tv-program/hledani/?filtr%5Bslova-casti%5D=Velk%C3%A1+pardubick%C3%A1") AS result
SELECT
common.getURLParameter(
common.URLDecode("https://www.ceskatelevize.cz/tv-program/hledani/?filtr%5Bslova-casti%5D=Velk%C3%A1+pardubick%C3%A1"),
"filtr[slova-casti]"
) AS result
4. Uživatelské funkce a procedury | Použití
Tipy
Naše
vytvořené
funkce
URL, kterou chceme dekódovat
Dekódovaná URL
URL Parametr
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
Tabulky v BQ mohou mít dva
typy expirace:
1) Celkové tabulky
(tabulka se v čase celá smaže)
2) Partitioningu
(tabulka se postupně odmazává)
5. Expirace tabulek | Co a kde to je?
Tipy
Při založení Google Cloud Projektu
bez Billing účtu je defaultní expirace
tabulek (a datasetů) 60 dní.
-> Data vydrží max 60 dnů!
2 řešení:
1) Před založením datasetů a tabulek
nejdříve založit / přiřadit Billing účet
2) Ohlídat si to při přidávání Billing účtu
5. Expirace tabulek | Začátečnický fuckup
Tipy
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
6. Time travel - vymazaná tabulka? Není problém!
Workshop
SELECT
event_name
FROM
dataset_name.table_name
FOR SYSTEM_TIME AS OF TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR); Dokumentace
Při změně tabulky stačí SQL
Při vymazání tabulky musí člověk do Cloud Shellu
* Lze až 7 dní do minulosti ~ 604 799 000 milisekund
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
Externí zdroje
Typy souborů
7. Externí zdroje do BigQuery
Tipy
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
Umožňuje sledovat:
- Jak vznikla tabulka
- Jaké má návaznosti
Predispozice:
Zapnuté Data Lineage API
Cena:
Prvních 1000 API callů zdarma
Potom $0.0005 per API call.
8. Data Lineage | K čemu to je dobrý?
Tipy
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
CREATE SCHEMA IF NOT EXISTS `project_name.ml_models`
OPTIONS(
description="Dataset pro machine learning (AI) modely.",
location="eu");
--
CREATE OR REPLACE MODEL `ml_models.event_count_anomaly_detector`
OPTIONS (
model_type='arima_plus',
TIME_SERIES_DATA_COL='event_count',
TIME_SERIES_TIMESTAMP_COL='event_date',
HOLIDAY_REGION='CZ')
AS (
SELECT
PARSE_DATE("%Y%m%d", _TABLE_SUFFIX) AS event_date,
COUNT(*) AS event_count
FROM
`analytics_XXXXXXXXX.events_*`/* <-- SEM VLOŽTE GA4 DATASET */
WHERE
_TABLE_SUFFIX IS NOT NULL
GROUP BY 1);
------------------------------------------------
SELECT
*
FROM
ML.DETECT_ANOMALIES(
MODEL ml_models.event_count_anomaly_detector,
STRUCT (0.95 AS anomaly_prob_threshold)) -- Při 95 % = anomálie
ORDER BY event_date DESC;
9. Detekce anomálií v datech | celkový počet událostí GA4
Tipy
* Téměř zdarma
9. Detekce anomálií v datech | individuální události
Tipy
CREATE OR REPLACE MODEL `ml_models.specific_event_count_anomaly_detector`
OPTIONS (
MODEL_TYPE='arima_plus',
TIME_SERIES_DATA_COL='event_count',
TIME_SERIES_TIMESTAMP_COL='event_date',
TIME_SERIES_ID_COL='event_name',
HOLIDAY_REGION='CZ')
AS (
SELECT
PARSE_DATE("%Y%m%d", _TABLE_SUFFIX) AS event_date,
event_name,
COUNT(*) AS event_count
FROM
`analytics_XXXXXXXXX.events_*`/* <-- SEM VLOŽTE GA4 DATASET */
WHERE
_TABLE_SUFFIX BETWEEN FORMAT_DATE("%Y%m%d", DATE_SUB(CURRENT_DATE(), INTERVAL 31 DAY))
AND FORMAT_DATE("%Y%m%d", DATE_SUB(CURRENT_DATE(), INTERVAL 2 DAY))
GROUP BY 1, 2);
------------------------------------------------
SELECT
*
FROM
ML.DETECT_ANOMALIES(
MODEL ml_models.specific_event_count_anomaly_detector,
STRUCT (0.95 AS anomaly_prob_threshold)) -- Při 95 % = anomálie
ORDER BY event_date DESC, event_count DESC;
* Pozor, tohle už něco stojí! :-)
10 tipů, jak pracovat s BigQuery
1. Jak na základní optimalizaci?
2. Pár tipů při psaní queries
3. Nebojím se nákladů za BigQuery
4. Uživatelské funkce a procedury jsou super
5. Expirace tabulek může být super
6. Time travel - vymazaná tabulka? Není problém!
7. Externí zdroje do BigQuery
8. Data Lineage
9. ML - Detekce anomálií v datech
10. ML - Analýza sentimentu v datech
10. Analýza sentimentu | Bard (PaLM 2)
Tipy
-- Step 1: Povolte "BigQuery connection API" a "Vertex AI API"
-- Step 2: Vytvořte external connection v USA "ml_models" https://cloud.google.com/bigquery/docs/create-cloud-resource-connection#console
--
CREATE SCHEMA IF NOT EXISTS `ml_models_us`
OPTIONS(
description="Dataset pro machine learning (AI) modely v USA.",
location="us");
--
CREATE MODEL IF NOT EXISTS `ml_models_us.llm_model`
REMOTE WITH CONNECTION `us.ml_models`
OPTIONS(remote_service_type = 'CLOUD_AI_LARGE_LANGUAGE_MODEL_V1');
--
WITH
testovaci_texty AS (
SELECT "Perfektní pořady , které jinde nejsou. Škoda ale , že přehrávání na androidu je na malém okně a musím se na to dívat z 20 cm." AS review
)
SELECT
review,
JSON_VALUE(ml_generate_text_result, '$.predictions[0].content') AS sentiment
FROM
ML.GENERATE_TEXT(
MODEL `ml_models_us.llm_model`,
(
SELECT
CONCAT('Perform sentiment analysis on the following text, return one the following categories "positive", "negative", "neutral": ', review) AS prompt,
review
FROM
testovaci_texty
),
STRUCT(
0.3 AS temperature,
100 AS max_output_tokens
)
);
Díky za pozornost! ✌

More Related Content

What's hot

Data Restart 2023: Jan Tichý - Keynote: Už je čas začít používat data
Data Restart 2023: Jan Tichý - Keynote: Už je čas začít používat dataData Restart 2023: Jan Tichý - Keynote: Už je čas začít používat data
Data Restart 2023: Jan Tichý - Keynote: Už je čas začít používat dataTaste
 
PPC Restart 2022: Tomáš Hurt - Proč a jak využije PPC specialista BigQuery
PPC Restart 2022: Tomáš Hurt - Proč a jak využije PPC specialista BigQueryPPC Restart 2022: Tomáš Hurt - Proč a jak využije PPC specialista BigQuery
PPC Restart 2022: Tomáš Hurt - Proč a jak využije PPC specialista BigQueryTaste
 
PPC Restart 2023: Tomáš Beňo - Marketing Mix Modeling: Budoucnost vyhodnocová...
PPC Restart 2023: Tomáš Beňo - Marketing Mix Modeling: Budoucnost vyhodnocová...PPC Restart 2023: Tomáš Beňo - Marketing Mix Modeling: Budoucnost vyhodnocová...
PPC Restart 2023: Tomáš Beňo - Marketing Mix Modeling: Budoucnost vyhodnocová...Taste
 
PPC Restart 2022: Milan Formánek - Moderní marketing
PPC Restart 2022: Milan Formánek - Moderní marketingPPC Restart 2022: Milan Formánek - Moderní marketing
PPC Restart 2022: Milan Formánek - Moderní marketingTaste
 
PPC Restart 2023: Petra Nulíčková - Jsou PPCčkaři diamanty ve světě reklamy?
PPC Restart 2023: Petra Nulíčková - Jsou PPCčkaři diamanty ve světě reklamy?PPC Restart 2023: Petra Nulíčková - Jsou PPCčkaři diamanty ve světě reklamy?
PPC Restart 2023: Petra Nulíčková - Jsou PPCčkaři diamanty ve světě reklamy?Taste
 
PPC Restart 2023: Lukáš Hvizdoš - Ako vyškálovať PMAX tak, aby sme dosiahli d...
PPC Restart 2023: Lukáš Hvizdoš - Ako vyškálovať PMAX tak, aby sme dosiahli d...PPC Restart 2023: Lukáš Hvizdoš - Ako vyškálovať PMAX tak, aby sme dosiahli d...
PPC Restart 2023: Lukáš Hvizdoš - Ako vyškálovať PMAX tak, aby sme dosiahli d...Taste
 
PPC Restart 2022: David Janoušek - Share of Search - Nejdůležitější metrika, ...
PPC Restart 2022: David Janoušek - Share of Search - Nejdůležitější metrika, ...PPC Restart 2022: David Janoušek - Share of Search - Nejdůležitější metrika, ...
PPC Restart 2022: David Janoušek - Share of Search - Nejdůležitější metrika, ...Taste
 
PPC Restart 2022: Milan Cidilo - Ako vyškálovať TikTok ads z 0 na 500tis. Kč ...
PPC Restart 2022: Milan Cidilo - Ako vyškálovať TikTok ads z 0 na 500tis. Kč ...PPC Restart 2022: Milan Cidilo - Ako vyškálovať TikTok ads z 0 na 500tis. Kč ...
PPC Restart 2022: Milan Cidilo - Ako vyškálovať TikTok ads z 0 na 500tis. Kč ...Taste
 
PPC Restart 2022: Jan Svoboda - Keynote
PPC Restart 2022: Jan Svoboda - KeynotePPC Restart 2022: Jan Svoboda - Keynote
PPC Restart 2022: Jan Svoboda - KeynoteTaste
 
Data Restart 2022: Pavel Jašek - Jak se řídí výkonnostní marketing s nedokona...
Data Restart 2022: Pavel Jašek - Jak se řídí výkonnostní marketing s nedokona...Data Restart 2022: Pavel Jašek - Jak se řídí výkonnostní marketing s nedokona...
Data Restart 2022: Pavel Jašek - Jak se řídí výkonnostní marketing s nedokona...Taste
 
PPC Restart 2023: Ladislav Vitouš - AI pro PPC: Mezi hypem a realitou
PPC Restart 2023: Ladislav Vitouš - AI pro PPC: Mezi hypem a realitouPPC Restart 2023: Ladislav Vitouš - AI pro PPC: Mezi hypem a realitou
PPC Restart 2023: Ladislav Vitouš - AI pro PPC: Mezi hypem a realitouTaste
 
PPC Restart 2023: Libor Mattuš - Optimalizujte nejen kampaně, ale i sebe
PPC Restart 2023: Libor Mattuš - Optimalizujte nejen kampaně, ale i sebePPC Restart 2023: Libor Mattuš - Optimalizujte nejen kampaně, ale i sebe
PPC Restart 2023: Libor Mattuš - Optimalizujte nejen kampaně, ale i sebeTaste
 
PPC Restart 2023: David Janoušek a Jan Janoušek - SATO aneb jak přemýšlet nad...
PPC Restart 2023: David Janoušek a Jan Janoušek - SATO aneb jak přemýšlet nad...PPC Restart 2023: David Janoušek a Jan Janoušek - SATO aneb jak přemýšlet nad...
PPC Restart 2023: David Janoušek a Jan Janoušek - SATO aneb jak přemýšlet nad...Taste
 
PPC Restart 2023: Tomáš Sýkora - Jak zvýšit výkon digitálních médií o desítky...
PPC Restart 2023: Tomáš Sýkora - Jak zvýšit výkon digitálních médií o desítky...PPC Restart 2023: Tomáš Sýkora - Jak zvýšit výkon digitálních médií o desítky...
PPC Restart 2023: Tomáš Sýkora - Jak zvýšit výkon digitálních médií o desítky...Taste
 
PPC Restart 2023: André Heller - Co musí o Google Analytics 4 vědět každý PPC...
PPC Restart 2023: André Heller - Co musí o Google Analytics 4 vědět každý PPC...PPC Restart 2023: André Heller - Co musí o Google Analytics 4 vědět každý PPC...
PPC Restart 2023: André Heller - Co musí o Google Analytics 4 vědět každý PPC...Taste
 
SEO Restart 2023: Vojtěch Fiala - Praktické využití AI v SEO pro začátečníky ...
SEO Restart 2023: Vojtěch Fiala - Praktické využití AI v SEO pro začátečníky ...SEO Restart 2023: Vojtěch Fiala - Praktické využití AI v SEO pro začátečníky ...
SEO Restart 2023: Vojtěch Fiala - Praktické využití AI v SEO pro začátečníky ...Taste
 
SEO Restart 2023: Pavel Ungr - Transformace tvorby a optimalizace obsahu pomo...
SEO Restart 2023: Pavel Ungr - Transformace tvorby a optimalizace obsahu pomo...SEO Restart 2023: Pavel Ungr - Transformace tvorby a optimalizace obsahu pomo...
SEO Restart 2023: Pavel Ungr - Transformace tvorby a optimalizace obsahu pomo...Taste
 
PPC Restart 2023: Jiří Novotný - Zasáhněte svoji cílovou skupinu přesně a spo...
PPC Restart 2023: Jiří Novotný - Zasáhněte svoji cílovou skupinu přesně a spo...PPC Restart 2023: Jiří Novotný - Zasáhněte svoji cílovou skupinu přesně a spo...
PPC Restart 2023: Jiří Novotný - Zasáhněte svoji cílovou skupinu přesně a spo...Taste
 
PPC Restart 2022: Lukáš Bartošek - Produktová analytika na sociálních sítích
PPC Restart 2022: Lukáš Bartošek - Produktová analytika na sociálních sítíchPPC Restart 2022: Lukáš Bartošek - Produktová analytika na sociálních sítích
PPC Restart 2022: Lukáš Bartošek - Produktová analytika na sociálních sítíchTaste
 
Data Restart 2022: David Janoušek - Jak na výkonnostní kampaně v období cooki...
Data Restart 2022: David Janoušek - Jak na výkonnostní kampaně v období cooki...Data Restart 2022: David Janoušek - Jak na výkonnostní kampaně v období cooki...
Data Restart 2022: David Janoušek - Jak na výkonnostní kampaně v období cooki...Taste
 

What's hot (20)

Data Restart 2023: Jan Tichý - Keynote: Už je čas začít používat data
Data Restart 2023: Jan Tichý - Keynote: Už je čas začít používat dataData Restart 2023: Jan Tichý - Keynote: Už je čas začít používat data
Data Restart 2023: Jan Tichý - Keynote: Už je čas začít používat data
 
PPC Restart 2022: Tomáš Hurt - Proč a jak využije PPC specialista BigQuery
PPC Restart 2022: Tomáš Hurt - Proč a jak využije PPC specialista BigQueryPPC Restart 2022: Tomáš Hurt - Proč a jak využije PPC specialista BigQuery
PPC Restart 2022: Tomáš Hurt - Proč a jak využije PPC specialista BigQuery
 
PPC Restart 2023: Tomáš Beňo - Marketing Mix Modeling: Budoucnost vyhodnocová...
PPC Restart 2023: Tomáš Beňo - Marketing Mix Modeling: Budoucnost vyhodnocová...PPC Restart 2023: Tomáš Beňo - Marketing Mix Modeling: Budoucnost vyhodnocová...
PPC Restart 2023: Tomáš Beňo - Marketing Mix Modeling: Budoucnost vyhodnocová...
 
PPC Restart 2022: Milan Formánek - Moderní marketing
PPC Restart 2022: Milan Formánek - Moderní marketingPPC Restart 2022: Milan Formánek - Moderní marketing
PPC Restart 2022: Milan Formánek - Moderní marketing
 
PPC Restart 2023: Petra Nulíčková - Jsou PPCčkaři diamanty ve světě reklamy?
PPC Restart 2023: Petra Nulíčková - Jsou PPCčkaři diamanty ve světě reklamy?PPC Restart 2023: Petra Nulíčková - Jsou PPCčkaři diamanty ve světě reklamy?
PPC Restart 2023: Petra Nulíčková - Jsou PPCčkaři diamanty ve světě reklamy?
 
PPC Restart 2023: Lukáš Hvizdoš - Ako vyškálovať PMAX tak, aby sme dosiahli d...
PPC Restart 2023: Lukáš Hvizdoš - Ako vyškálovať PMAX tak, aby sme dosiahli d...PPC Restart 2023: Lukáš Hvizdoš - Ako vyškálovať PMAX tak, aby sme dosiahli d...
PPC Restart 2023: Lukáš Hvizdoš - Ako vyškálovať PMAX tak, aby sme dosiahli d...
 
PPC Restart 2022: David Janoušek - Share of Search - Nejdůležitější metrika, ...
PPC Restart 2022: David Janoušek - Share of Search - Nejdůležitější metrika, ...PPC Restart 2022: David Janoušek - Share of Search - Nejdůležitější metrika, ...
PPC Restart 2022: David Janoušek - Share of Search - Nejdůležitější metrika, ...
 
PPC Restart 2022: Milan Cidilo - Ako vyškálovať TikTok ads z 0 na 500tis. Kč ...
PPC Restart 2022: Milan Cidilo - Ako vyškálovať TikTok ads z 0 na 500tis. Kč ...PPC Restart 2022: Milan Cidilo - Ako vyškálovať TikTok ads z 0 na 500tis. Kč ...
PPC Restart 2022: Milan Cidilo - Ako vyškálovať TikTok ads z 0 na 500tis. Kč ...
 
PPC Restart 2022: Jan Svoboda - Keynote
PPC Restart 2022: Jan Svoboda - KeynotePPC Restart 2022: Jan Svoboda - Keynote
PPC Restart 2022: Jan Svoboda - Keynote
 
Data Restart 2022: Pavel Jašek - Jak se řídí výkonnostní marketing s nedokona...
Data Restart 2022: Pavel Jašek - Jak se řídí výkonnostní marketing s nedokona...Data Restart 2022: Pavel Jašek - Jak se řídí výkonnostní marketing s nedokona...
Data Restart 2022: Pavel Jašek - Jak se řídí výkonnostní marketing s nedokona...
 
PPC Restart 2023: Ladislav Vitouš - AI pro PPC: Mezi hypem a realitou
PPC Restart 2023: Ladislav Vitouš - AI pro PPC: Mezi hypem a realitouPPC Restart 2023: Ladislav Vitouš - AI pro PPC: Mezi hypem a realitou
PPC Restart 2023: Ladislav Vitouš - AI pro PPC: Mezi hypem a realitou
 
PPC Restart 2023: Libor Mattuš - Optimalizujte nejen kampaně, ale i sebe
PPC Restart 2023: Libor Mattuš - Optimalizujte nejen kampaně, ale i sebePPC Restart 2023: Libor Mattuš - Optimalizujte nejen kampaně, ale i sebe
PPC Restart 2023: Libor Mattuš - Optimalizujte nejen kampaně, ale i sebe
 
PPC Restart 2023: David Janoušek a Jan Janoušek - SATO aneb jak přemýšlet nad...
PPC Restart 2023: David Janoušek a Jan Janoušek - SATO aneb jak přemýšlet nad...PPC Restart 2023: David Janoušek a Jan Janoušek - SATO aneb jak přemýšlet nad...
PPC Restart 2023: David Janoušek a Jan Janoušek - SATO aneb jak přemýšlet nad...
 
PPC Restart 2023: Tomáš Sýkora - Jak zvýšit výkon digitálních médií o desítky...
PPC Restart 2023: Tomáš Sýkora - Jak zvýšit výkon digitálních médií o desítky...PPC Restart 2023: Tomáš Sýkora - Jak zvýšit výkon digitálních médií o desítky...
PPC Restart 2023: Tomáš Sýkora - Jak zvýšit výkon digitálních médií o desítky...
 
PPC Restart 2023: André Heller - Co musí o Google Analytics 4 vědět každý PPC...
PPC Restart 2023: André Heller - Co musí o Google Analytics 4 vědět každý PPC...PPC Restart 2023: André Heller - Co musí o Google Analytics 4 vědět každý PPC...
PPC Restart 2023: André Heller - Co musí o Google Analytics 4 vědět každý PPC...
 
SEO Restart 2023: Vojtěch Fiala - Praktické využití AI v SEO pro začátečníky ...
SEO Restart 2023: Vojtěch Fiala - Praktické využití AI v SEO pro začátečníky ...SEO Restart 2023: Vojtěch Fiala - Praktické využití AI v SEO pro začátečníky ...
SEO Restart 2023: Vojtěch Fiala - Praktické využití AI v SEO pro začátečníky ...
 
SEO Restart 2023: Pavel Ungr - Transformace tvorby a optimalizace obsahu pomo...
SEO Restart 2023: Pavel Ungr - Transformace tvorby a optimalizace obsahu pomo...SEO Restart 2023: Pavel Ungr - Transformace tvorby a optimalizace obsahu pomo...
SEO Restart 2023: Pavel Ungr - Transformace tvorby a optimalizace obsahu pomo...
 
PPC Restart 2023: Jiří Novotný - Zasáhněte svoji cílovou skupinu přesně a spo...
PPC Restart 2023: Jiří Novotný - Zasáhněte svoji cílovou skupinu přesně a spo...PPC Restart 2023: Jiří Novotný - Zasáhněte svoji cílovou skupinu přesně a spo...
PPC Restart 2023: Jiří Novotný - Zasáhněte svoji cílovou skupinu přesně a spo...
 
PPC Restart 2022: Lukáš Bartošek - Produktová analytika na sociálních sítích
PPC Restart 2022: Lukáš Bartošek - Produktová analytika na sociálních sítíchPPC Restart 2022: Lukáš Bartošek - Produktová analytika na sociálních sítích
PPC Restart 2022: Lukáš Bartošek - Produktová analytika na sociálních sítích
 
Data Restart 2022: David Janoušek - Jak na výkonnostní kampaně v období cooki...
Data Restart 2022: David Janoušek - Jak na výkonnostní kampaně v období cooki...Data Restart 2022: David Janoušek - Jak na výkonnostní kampaně v období cooki...
Data Restart 2022: David Janoušek - Jak na výkonnostní kampaně v období cooki...
 

Similar to Data Restart 2023: Václav Ráš - 10 tipů, jak pracovat s BigQuery

SEO pohledem datového analytika
SEO pohledem datového analytikaSEO pohledem datového analytika
SEO pohledem datového analytikaTaste Medio
 
Google Tag Manager pro mírně pokročilé
Google Tag Manager pro mírně pokročiléGoogle Tag Manager pro mírně pokročilé
Google Tag Manager pro mírně pokročiléMichal Blažek
 
Michal Blažek - Google Tag Manager pro mírně pokročilé
Michal Blažek - Google Tag Manager pro mírně pokročiléMichal Blažek - Google Tag Manager pro mírně pokročilé
Michal Blažek - Google Tag Manager pro mírně pokročiléeshopvikend
 
Automatizace search term optimalizace
Automatizace search term optimalizaceAutomatizace search term optimalizace
Automatizace search term optimalizaceTaste Medio
 
PROFICIO na PPC Restartu 2018
PROFICIO na PPC Restartu 2018PROFICIO na PPC Restartu 2018
PROFICIO na PPC Restartu 2018PROFICIO
 
Automatizace velkých účtů s využitím Google Big Query
Automatizace velkých účtů s využitím Google Big QueryAutomatizace velkých účtů s využitím Google Big Query
Automatizace velkých účtů s využitím Google Big QueryTaste Medio
 
Skalovaniv scif kubernetes
Skalovaniv scif kubernetesSkalovaniv scif kubernetes
Skalovaniv scif kubernetesJurajHantk
 
Analytika a online marketing v souladu s GDPR v ČR i zahraničí
Analytika a online marketing v souladu s GDPR v ČR i zahraničíAnalytika a online marketing v souladu s GDPR v ČR i zahraničí
Analytika a online marketing v souladu s GDPR v ČR i zahraničíMichal Blažek
 
2018 11-28 snidane-serie-kuchyne
2018 11-28 snidane-serie-kuchyne2018 11-28 snidane-serie-kuchyne
2018 11-28 snidane-serie-kuchyneProfinit
 
Relační databáze efektivně z pohledu vývojáře
Relační databáze efektivně z pohledu vývojářeRelační databáze efektivně z pohledu vývojáře
Relační databáze efektivně z pohledu vývojářeJan Smitka
 
Jak se vyhnout chybám při analýze nejen velkých dat
Jak se vyhnout chybám při analýze nejen velkých datJak se vyhnout chybám při analýze nejen velkých dat
Jak se vyhnout chybám při analýze nejen velkých datJan Janca
 
25. 2. 2016 produktivita a efektivita v digitálním světě - v1.01
25. 2. 2016   produktivita a efektivita v digitálním světě - v1.0125. 2. 2016   produktivita a efektivita v digitálním světě - v1.01
25. 2. 2016 produktivita a efektivita v digitálním světě - v1.01Jan Janca
 
Analýza klíčových slov - Plzeňský Barcamp 2015
Analýza klíčových slov - Plzeňský Barcamp 2015Analýza klíčových slov - Plzeňský Barcamp 2015
Analýza klíčových slov - Plzeňský Barcamp 2015Jakub Kašparů
 
Novinky Oracle db 12c
Novinky Oracle db 12cNovinky Oracle db 12c
Novinky Oracle db 12cTomas Solar
 
Přednáška: Google Analytics pro blogerky a blogery
Přednáška: Google Analytics pro blogerky a blogeryPřednáška: Google Analytics pro blogerky a blogery
Přednáška: Google Analytics pro blogerky a blogeryPavel Kotyza
 
Jak na Smartlook, nejen pro Shoptet
Jak na Smartlook, nejen pro ShoptetJak na Smartlook, nejen pro Shoptet
Jak na Smartlook, nejen pro ShoptetMarek Čech
 
Co sledovat a jak měřit u mobilního webu
Co sledovat a jak měřit u mobilního webuCo sledovat a jak měřit u mobilního webu
Co sledovat a jak měřit u mobilního webuAkce Dobrého webu
 

Similar to Data Restart 2023: Václav Ráš - 10 tipů, jak pracovat s BigQuery (20)

SEO pohledem datového analytika
SEO pohledem datového analytikaSEO pohledem datového analytika
SEO pohledem datového analytika
 
Google Tag Manager pro mírně pokročilé
Google Tag Manager pro mírně pokročiléGoogle Tag Manager pro mírně pokročilé
Google Tag Manager pro mírně pokročilé
 
Michal Blažek - Google Tag Manager pro mírně pokročilé
Michal Blažek - Google Tag Manager pro mírně pokročiléMichal Blažek - Google Tag Manager pro mírně pokročilé
Michal Blažek - Google Tag Manager pro mírně pokročilé
 
Automatizace search term optimalizace
Automatizace search term optimalizaceAutomatizace search term optimalizace
Automatizace search term optimalizace
 
PROFICIO na PPC Restartu 2018
PROFICIO na PPC Restartu 2018PROFICIO na PPC Restartu 2018
PROFICIO na PPC Restartu 2018
 
Django
DjangoDjango
Django
 
Automatizace velkých účtů s využitím Google Big Query
Automatizace velkých účtů s využitím Google Big QueryAutomatizace velkých účtů s využitím Google Big Query
Automatizace velkých účtů s využitím Google Big Query
 
Skalovaniv scif kubernetes
Skalovaniv scif kubernetesSkalovaniv scif kubernetes
Skalovaniv scif kubernetes
 
Analytika a online marketing v souladu s GDPR v ČR i zahraničí
Analytika a online marketing v souladu s GDPR v ČR i zahraničíAnalytika a online marketing v souladu s GDPR v ČR i zahraničí
Analytika a online marketing v souladu s GDPR v ČR i zahraničí
 
Mesour DataGrid
Mesour DataGridMesour DataGrid
Mesour DataGrid
 
2018 11-28 snidane-serie-kuchyne
2018 11-28 snidane-serie-kuchyne2018 11-28 snidane-serie-kuchyne
2018 11-28 snidane-serie-kuchyne
 
Relační databáze efektivně z pohledu vývojáře
Relační databáze efektivně z pohledu vývojářeRelační databáze efektivně z pohledu vývojáře
Relační databáze efektivně z pohledu vývojáře
 
Jak se vyhnout chybám při analýze nejen velkých dat
Jak se vyhnout chybám při analýze nejen velkých datJak se vyhnout chybám při analýze nejen velkých dat
Jak se vyhnout chybám při analýze nejen velkých dat
 
25. 2. 2016 produktivita a efektivita v digitálním světě - v1.01
25. 2. 2016   produktivita a efektivita v digitálním světě - v1.0125. 2. 2016   produktivita a efektivita v digitálním světě - v1.01
25. 2. 2016 produktivita a efektivita v digitálním světě - v1.01
 
Analýza klíčových slov - Plzeňský Barcamp 2015
Analýza klíčových slov - Plzeňský Barcamp 2015Analýza klíčových slov - Plzeňský Barcamp 2015
Analýza klíčových slov - Plzeňský Barcamp 2015
 
Novinky Oracle db 12c
Novinky Oracle db 12cNovinky Oracle db 12c
Novinky Oracle db 12c
 
Přednáška: Google Analytics pro blogerky a blogery
Přednáška: Google Analytics pro blogerky a blogeryPřednáška: Google Analytics pro blogerky a blogery
Přednáška: Google Analytics pro blogerky a blogery
 
Jak na Smartlook, nejen pro Shoptet
Jak na Smartlook, nejen pro ShoptetJak na Smartlook, nejen pro Shoptet
Jak na Smartlook, nejen pro Shoptet
 
CQRS v rohlik.cz
CQRS v rohlik.czCQRS v rohlik.cz
CQRS v rohlik.cz
 
Co sledovat a jak měřit u mobilního webu
Co sledovat a jak měřit u mobilního webuCo sledovat a jak měřit u mobilního webu
Co sledovat a jak měřit u mobilního webu
 

More from Taste

Project Restart 2024: Jiří Langr - Mytologie projektů
Project Restart 2024: Jiří Langr - Mytologie projektůProject Restart 2024: Jiří Langr - Mytologie projektů
Project Restart 2024: Jiří Langr - Mytologie projektůTaste
 
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?Taste
 
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...Taste
 
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...Taste
 
Project Restart 2024: Pavel Minář - Procesy pro lepší projekty
Project Restart 2024: Pavel Minář - Procesy pro lepší projektyProject Restart 2024: Pavel Minář - Procesy pro lepší projekty
Project Restart 2024: Pavel Minář - Procesy pro lepší projektyTaste
 
Project Restart 2024: Karel Smutný - Specializace patří do 19. století
Project Restart 2024: Karel Smutný - Specializace patří do 19. stoletíProject Restart 2024: Karel Smutný - Specializace patří do 19. století
Project Restart 2024: Karel Smutný - Specializace patří do 19. stoletíTaste
 
Project Restart 2024: Lenka Auerová - Budování holistické organizace
Project Restart 2024: Lenka Auerová - Budování holistické organizaceProject Restart 2024: Lenka Auerová - Budování holistické organizace
Project Restart 2024: Lenka Auerová - Budování holistické organizaceTaste
 
E-mail Date #2: Jakub Kalvoda a Barbora Pavlíčková - Jak si udržet skvělé výs...
E-mail Date #2: Jakub Kalvoda a Barbora Pavlíčková - Jak si udržet skvělé výs...E-mail Date #2: Jakub Kalvoda a Barbora Pavlíčková - Jak si udržet skvělé výs...
E-mail Date #2: Jakub Kalvoda a Barbora Pavlíčková - Jak si udržet skvělé výs...Taste
 
E-mail Date #2: Kazimír Krysta - CDP jako stavební kámen retence
E-mail Date #2: Kazimír Krysta - CDP jako stavební kámen retenceE-mail Date #2: Kazimír Krysta - CDP jako stavební kámen retence
E-mail Date #2: Kazimír Krysta - CDP jako stavební kámen retenceTaste
 
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...Taste
 
E-mail Date #2: Markéta Kryštůfková - Multikanálová retence: využijte data o ...
E-mail Date #2: Markéta Kryštůfková - Multikanálová retence: využijte data o ...E-mail Date #2: Markéta Kryštůfková - Multikanálová retence: využijte data o ...
E-mail Date #2: Markéta Kryštůfková - Multikanálová retence: využijte data o ...Taste
 
SEO Restart 2024: Martin Kopta a Jakub Goldmann - Jak se dnes navrhují weby a...
SEO Restart 2024: Martin Kopta a Jakub Goldmann - Jak se dnes navrhují weby a...SEO Restart 2024: Martin Kopta a Jakub Goldmann - Jak se dnes navrhují weby a...
SEO Restart 2024: Martin Kopta a Jakub Goldmann - Jak se dnes navrhují weby a...Taste
 
SEO Restart 2024: Tomáš Zahálka - Tajné SEO tipy pro Shoptet
SEO Restart 2024: Tomáš Zahálka - Tajné SEO tipy pro ShoptetSEO Restart 2024: Tomáš Zahálka - Tajné SEO tipy pro Shoptet
SEO Restart 2024: Tomáš Zahálka - Tajné SEO tipy pro ShoptetTaste
 
SEO Restart 2024: Roman Teuschel - Mezinárodní SEO v kontextu expanze
SEO Restart 2024: Roman Teuschel - Mezinárodní SEO v kontextu expanzeSEO Restart 2024: Roman Teuschel - Mezinárodní SEO v kontextu expanze
SEO Restart 2024: Roman Teuschel - Mezinárodní SEO v kontextu expanzeTaste
 
SEO Restart 2024: Sarah Presch - Kognitivní předsudky - jak psychologické teo...
SEO Restart 2024: Sarah Presch - Kognitivní předsudky - jak psychologické teo...SEO Restart 2024: Sarah Presch - Kognitivní předsudky - jak psychologické teo...
SEO Restart 2024: Sarah Presch - Kognitivní předsudky - jak psychologické teo...Taste
 
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...Taste
 
SEO Restart 2024: Vojtěch Fiala - Linkbuilding vs. (digitální) PR: Od odkazů ...
SEO Restart 2024: Vojtěch Fiala - Linkbuilding vs. (digitální) PR: Od odkazů ...SEO Restart 2024: Vojtěch Fiala - Linkbuilding vs. (digitální) PR: Od odkazů ...
SEO Restart 2024: Vojtěch Fiala - Linkbuilding vs. (digitální) PR: Od odkazů ...Taste
 
SEO Restart 2024: Martin Michálek - Nová metrika rychlosti INP a praktické ti...
SEO Restart 2024: Martin Michálek - Nová metrika rychlosti INP a praktické ti...SEO Restart 2024: Martin Michálek - Nová metrika rychlosti INP a praktické ti...
SEO Restart 2024: Martin Michálek - Nová metrika rychlosti INP a praktické ti...Taste
 
SEO Restart 2024: Richard Klačko - Klíčovka s AI pohonem
SEO Restart 2024: Richard Klačko - Klíčovka s AI pohonemSEO Restart 2024: Richard Klačko - Klíčovka s AI pohonem
SEO Restart 2024: Richard Klačko - Klíčovka s AI pohonemTaste
 
SEO Restart 2024: Martin Žatkovič - Můžeme jakožto SEO konzultanti uspět v Go...
SEO Restart 2024: Martin Žatkovič - Můžeme jakožto SEO konzultanti uspět v Go...SEO Restart 2024: Martin Žatkovič - Můžeme jakožto SEO konzultanti uspět v Go...
SEO Restart 2024: Martin Žatkovič - Můžeme jakožto SEO konzultanti uspět v Go...Taste
 

More from Taste (20)

Project Restart 2024: Jiří Langr - Mytologie projektů
Project Restart 2024: Jiří Langr - Mytologie projektůProject Restart 2024: Jiří Langr - Mytologie projektů
Project Restart 2024: Jiří Langr - Mytologie projektů
 
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
 
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
 
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
 
Project Restart 2024: Pavel Minář - Procesy pro lepší projekty
Project Restart 2024: Pavel Minář - Procesy pro lepší projektyProject Restart 2024: Pavel Minář - Procesy pro lepší projekty
Project Restart 2024: Pavel Minář - Procesy pro lepší projekty
 
Project Restart 2024: Karel Smutný - Specializace patří do 19. století
Project Restart 2024: Karel Smutný - Specializace patří do 19. stoletíProject Restart 2024: Karel Smutný - Specializace patří do 19. století
Project Restart 2024: Karel Smutný - Specializace patří do 19. století
 
Project Restart 2024: Lenka Auerová - Budování holistické organizace
Project Restart 2024: Lenka Auerová - Budování holistické organizaceProject Restart 2024: Lenka Auerová - Budování holistické organizace
Project Restart 2024: Lenka Auerová - Budování holistické organizace
 
E-mail Date #2: Jakub Kalvoda a Barbora Pavlíčková - Jak si udržet skvělé výs...
E-mail Date #2: Jakub Kalvoda a Barbora Pavlíčková - Jak si udržet skvělé výs...E-mail Date #2: Jakub Kalvoda a Barbora Pavlíčková - Jak si udržet skvělé výs...
E-mail Date #2: Jakub Kalvoda a Barbora Pavlíčková - Jak si udržet skvělé výs...
 
E-mail Date #2: Kazimír Krysta - CDP jako stavební kámen retence
E-mail Date #2: Kazimír Krysta - CDP jako stavební kámen retenceE-mail Date #2: Kazimír Krysta - CDP jako stavební kámen retence
E-mail Date #2: Kazimír Krysta - CDP jako stavební kámen retence
 
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
 
E-mail Date #2: Markéta Kryštůfková - Multikanálová retence: využijte data o ...
E-mail Date #2: Markéta Kryštůfková - Multikanálová retence: využijte data o ...E-mail Date #2: Markéta Kryštůfková - Multikanálová retence: využijte data o ...
E-mail Date #2: Markéta Kryštůfková - Multikanálová retence: využijte data o ...
 
SEO Restart 2024: Martin Kopta a Jakub Goldmann - Jak se dnes navrhují weby a...
SEO Restart 2024: Martin Kopta a Jakub Goldmann - Jak se dnes navrhují weby a...SEO Restart 2024: Martin Kopta a Jakub Goldmann - Jak se dnes navrhují weby a...
SEO Restart 2024: Martin Kopta a Jakub Goldmann - Jak se dnes navrhují weby a...
 
SEO Restart 2024: Tomáš Zahálka - Tajné SEO tipy pro Shoptet
SEO Restart 2024: Tomáš Zahálka - Tajné SEO tipy pro ShoptetSEO Restart 2024: Tomáš Zahálka - Tajné SEO tipy pro Shoptet
SEO Restart 2024: Tomáš Zahálka - Tajné SEO tipy pro Shoptet
 
SEO Restart 2024: Roman Teuschel - Mezinárodní SEO v kontextu expanze
SEO Restart 2024: Roman Teuschel - Mezinárodní SEO v kontextu expanzeSEO Restart 2024: Roman Teuschel - Mezinárodní SEO v kontextu expanze
SEO Restart 2024: Roman Teuschel - Mezinárodní SEO v kontextu expanze
 
SEO Restart 2024: Sarah Presch - Kognitivní předsudky - jak psychologické teo...
SEO Restart 2024: Sarah Presch - Kognitivní předsudky - jak psychologické teo...SEO Restart 2024: Sarah Presch - Kognitivní předsudky - jak psychologické teo...
SEO Restart 2024: Sarah Presch - Kognitivní předsudky - jak psychologické teo...
 
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
 
SEO Restart 2024: Vojtěch Fiala - Linkbuilding vs. (digitální) PR: Od odkazů ...
SEO Restart 2024: Vojtěch Fiala - Linkbuilding vs. (digitální) PR: Od odkazů ...SEO Restart 2024: Vojtěch Fiala - Linkbuilding vs. (digitální) PR: Od odkazů ...
SEO Restart 2024: Vojtěch Fiala - Linkbuilding vs. (digitální) PR: Od odkazů ...
 
SEO Restart 2024: Martin Michálek - Nová metrika rychlosti INP a praktické ti...
SEO Restart 2024: Martin Michálek - Nová metrika rychlosti INP a praktické ti...SEO Restart 2024: Martin Michálek - Nová metrika rychlosti INP a praktické ti...
SEO Restart 2024: Martin Michálek - Nová metrika rychlosti INP a praktické ti...
 
SEO Restart 2024: Richard Klačko - Klíčovka s AI pohonem
SEO Restart 2024: Richard Klačko - Klíčovka s AI pohonemSEO Restart 2024: Richard Klačko - Klíčovka s AI pohonem
SEO Restart 2024: Richard Klačko - Klíčovka s AI pohonem
 
SEO Restart 2024: Martin Žatkovič - Můžeme jakožto SEO konzultanti uspět v Go...
SEO Restart 2024: Martin Žatkovič - Můžeme jakožto SEO konzultanti uspět v Go...SEO Restart 2024: Martin Žatkovič - Můžeme jakožto SEO konzultanti uspět v Go...
SEO Restart 2024: Martin Žatkovič - Můžeme jakožto SEO konzultanti uspět v Go...
 

Data Restart 2023: Václav Ráš - 10 tipů, jak pracovat s BigQuery

  • 1. 10 tipů, jak pracovat s Václav Ráš 776 221 096 vaclav.ras@dataras.cz
  • 2. Kdo je Vašek? Datový analytik - Specialista na BigQuery a odpovídání komplexních datových otázek - Tvůrce toolu (www.ga4dataimport.com) Václav Ráš 776 221 096 vaclav.ras@dataras.cz Tipy
  • 4. O čem to nebude?
  • 5. Dobře... O čem to tedy bude?
  • 6. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 7. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 8. SELECT * FROM project_name.dataset_name.table_name; SELECT user_id, purchase_value FROM project_name.dataset_name.table_name WHERE date = "2023-10-19"; 1. Jak na základní optimalizaci? SQL Tipy SELECT user_id, purchase_value FROM project_name.dataset_name.table_name; SELECT user_id, purchase_value FROM project_name.dataset_name.table_name WHERE date = "2023-10-19" AND event_name = "purchase"; 1) 2) 3) 4)
  • 9. SELECT user_id, purchase_value FROM project_name.dataset_name.table_name; SELECT user_id, purchase_value FROM project_name.dataset_name.table_name WHERE date = "2023-10-19" AND event_name = "purchase"; SELECT * FROM project_name.dataset_name.table_name; SELECT user_id, purchase_value FROM project_name.dataset_name.table_name WHERE date = "2023-10-19"; 1. Jak na základní optimalizaci? SQL Tipy 1) 2) 3) 4) = 1 084 Kč = 0,12 Kč
  • 10. 1. Jak na základní optimalizaci? Premisy Tipy 1. Partitioning tabulky dle date 2. Clustering dle event_name 3. BigQuery = Sloupcová databáze (čím míň sloupců chci, tím méně to stojí)
  • 11. 1. Jak na základní optimalizaci? Final tuning Tipy 1. Při selectování dat z GA4 datasetu používejte _TABLE_SUFFIX místo event_date LIMIT = 10 na konci SQL nic nezlevní 2. INT64 je levnější (a rychlejší) než STRING 3. Nebojte se číselných datových typů → existuje SAFE_CAST(), nespadne to … -- Tento select stojí 0 Kč SELECT PARSE_DATE("%Y%m%d", _TABLE_SUFFIX) AS event_date, COUNT(*) AS event_count FROM `analytics_XXXXXXXXX.events_*`/* <-- GA4 DATASET */ WHERE _TABLE_SUFFIX IS NOT NULL GROUP BY 1; -- -- Tento select stojí klidně desítky Kč SELECT event_date, COUNT(*) AS event_count FROM `analytics_XXXXXXXXX.events_*`/* <-- GA4 DATASET */ GROUP BY 1 LIMIT 10;
  • 12. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 13. 2. Pár tipů při psaní SQL | Hromadný kurzor Tipy Geniální pro hromadné úpravy více řádků - šetří spoustu času
  • 14. 2. Pár tipů při psaní SQL | F1 je kámoš Tipy Opět skvělé pro hromadné úpravy většího množství textu
  • 15. 2. Pár tipů při psaní SQL | CTRL (CMD ⌘) + Klik Tipy Prokliknutí detailu tabulky (musí být v závorkách ``)
  • 16. 2. Pár tipů při psaní SQL | Historie SQL Tipy - Personal history - Project history Výsledky (results) každé query jsou uložené 24h Samotné query jsou uložené měsíce
  • 17. 2. Pár tipů při psaní SQL | Nepište jak 🐷 Tipy
  • 18. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 19. 3. Nebojím se nákladů za BigQuery: Ceník Query: - 6.25 USD / zprocesovaný TB - První TB měsíčně je zdarma Úložiště - Active logical storage: 23 USD / TB / měsíc - Prvních 10 GB měsíčně zdarma - Long-term logical storage 16 USD / TB / měsíc - Prvních 10 GB měsíčně zdarma - Long-term = data nebyla změněna alespoň 90 dní (k 19.10.2023) Tipy
  • 20. Quotas (limit): 1 TB / denně / projekt … max 6.25 USD / denně … max 4 400 Kč / měsíčně 3. Nebojím se nákladů za BigQuery: Quotas Tipy
  • 21. 3. Nebojím se nákladů za BigQuery: Notifikace Tipy V rámci Billingu se dají nastavit notifikace na email, při překročení určité částky v daném měsíci.
  • 22. -- Dotaz ukáže, kdo za posledních 31 dní (a čím) vytížil nejvíce databázi WITH dates AS ( SELECT DATE_SUB(CURRENT_DATE(), INTERVAL 31 DAY) AS last_month, CURRENT_DATE() AS today ) SELECT info.project_id, user_email || COALESCE(" - (" || (SELECT l.value FROM UNNEST(labels) l WHERE l.key = 'requestor') || ")", "") AS user, info.job_type, COUNT(info.job_type) AS queries_counter, ROUND(SUM(CAST(info.total_bytes_billed / 1024 / 1024 / 1024 AS FLOAT64)), 0) || ' GB' AS data_billed, ROUND(SUM(CAST(info.total_bytes_billed / 1024 / 1024 / 1024 AS FLOAT64)) * 0.00625, 0) || ' USD' AS cost, -- $6.25 per TB ROUND(SUM(DATETIME_DIFF(DATETIME(info.end_time), DATETIME(info.start_time), SECOND)) / 60) || ' minutes' AS run_time FROM `region-eu`.INFORMATION_SCHEMA.JOBS_BY_PROJECT info, dates WHERE DATE(info.creation_time) BETWEEN dates.last_month AND dates.today GROUP BY 1, 2, 3 ORDER BY SUM(info.total_bytes_billed) DESC; 3. Nebojím se nákladů za BigQuery: Stalking Tipy Dokumentace
  • 23. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 24. -- Vytvoření EU Datasetu CREATE SCHEMA IF NOT EXISTS `common` OPTIONS( description="Dataset pro globálně používané funkce a procedury.", location="eu"); -- -- getURLParametr CREATE OR REPLACE FUNCTION `common.getURLParameter`(url STRING, parameter STRING) AS (( SELECT REGEXP_EXTRACT(url, r'[?&]'||parameter||'=([^&]+)') )); -- -- URL Decode: CREATE OR REPLACE FUNCTION `common.URLDecode`(url STRING) AS (( SELECT SAFE_CONVERT_BYTES_TO_STRING( ARRAY_TO_STRING( ARRAY_AGG( IF(STARTS_WITH(y, '%'), FROM_HEX(SUBSTR(y, 2)), CAST(y AS BYTES)) ORDER BY i ), b'') ) FROM UNNEST(REGEXP_EXTRACT_ALL(url, r"%[0-9a-fA-F]{2}|[^%]+")) AS y WITH OFFSET AS i )); 4. Uživatelské funkce a procedury | Vytvoření Tipy 1) Vytvoření Datasetu 2) Vytvoření funkce getURLParametr 3) Vytvoření funkce URLDecode Vstupní parametry funkce
  • 26. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 27. Tabulky v BQ mohou mít dva typy expirace: 1) Celkové tabulky (tabulka se v čase celá smaže) 2) Partitioningu (tabulka se postupně odmazává) 5. Expirace tabulek | Co a kde to je? Tipy
  • 28. Při založení Google Cloud Projektu bez Billing účtu je defaultní expirace tabulek (a datasetů) 60 dní. -> Data vydrží max 60 dnů! 2 řešení: 1) Před založením datasetů a tabulek nejdříve založit / přiřadit Billing účet 2) Ohlídat si to při přidávání Billing účtu 5. Expirace tabulek | Začátečnický fuckup Tipy
  • 29. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 30. 6. Time travel - vymazaná tabulka? Není problém! Workshop SELECT event_name FROM dataset_name.table_name FOR SYSTEM_TIME AS OF TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR); Dokumentace Při změně tabulky stačí SQL Při vymazání tabulky musí člověk do Cloud Shellu * Lze až 7 dní do minulosti ~ 604 799 000 milisekund
  • 31. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 32. Externí zdroje Typy souborů 7. Externí zdroje do BigQuery Tipy
  • 33. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 34. Umožňuje sledovat: - Jak vznikla tabulka - Jaké má návaznosti Predispozice: Zapnuté Data Lineage API Cena: Prvních 1000 API callů zdarma Potom $0.0005 per API call. 8. Data Lineage | K čemu to je dobrý? Tipy
  • 35. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 36. CREATE SCHEMA IF NOT EXISTS `project_name.ml_models` OPTIONS( description="Dataset pro machine learning (AI) modely.", location="eu"); -- CREATE OR REPLACE MODEL `ml_models.event_count_anomaly_detector` OPTIONS ( model_type='arima_plus', TIME_SERIES_DATA_COL='event_count', TIME_SERIES_TIMESTAMP_COL='event_date', HOLIDAY_REGION='CZ') AS ( SELECT PARSE_DATE("%Y%m%d", _TABLE_SUFFIX) AS event_date, COUNT(*) AS event_count FROM `analytics_XXXXXXXXX.events_*`/* <-- SEM VLOŽTE GA4 DATASET */ WHERE _TABLE_SUFFIX IS NOT NULL GROUP BY 1); ------------------------------------------------ SELECT * FROM ML.DETECT_ANOMALIES( MODEL ml_models.event_count_anomaly_detector, STRUCT (0.95 AS anomaly_prob_threshold)) -- Při 95 % = anomálie ORDER BY event_date DESC; 9. Detekce anomálií v datech | celkový počet událostí GA4 Tipy * Téměř zdarma
  • 37. 9. Detekce anomálií v datech | individuální události Tipy CREATE OR REPLACE MODEL `ml_models.specific_event_count_anomaly_detector` OPTIONS ( MODEL_TYPE='arima_plus', TIME_SERIES_DATA_COL='event_count', TIME_SERIES_TIMESTAMP_COL='event_date', TIME_SERIES_ID_COL='event_name', HOLIDAY_REGION='CZ') AS ( SELECT PARSE_DATE("%Y%m%d", _TABLE_SUFFIX) AS event_date, event_name, COUNT(*) AS event_count FROM `analytics_XXXXXXXXX.events_*`/* <-- SEM VLOŽTE GA4 DATASET */ WHERE _TABLE_SUFFIX BETWEEN FORMAT_DATE("%Y%m%d", DATE_SUB(CURRENT_DATE(), INTERVAL 31 DAY)) AND FORMAT_DATE("%Y%m%d", DATE_SUB(CURRENT_DATE(), INTERVAL 2 DAY)) GROUP BY 1, 2); ------------------------------------------------ SELECT * FROM ML.DETECT_ANOMALIES( MODEL ml_models.specific_event_count_anomaly_detector, STRUCT (0.95 AS anomaly_prob_threshold)) -- Při 95 % = anomálie ORDER BY event_date DESC, event_count DESC; * Pozor, tohle už něco stojí! :-)
  • 38. 10 tipů, jak pracovat s BigQuery 1. Jak na základní optimalizaci? 2. Pár tipů při psaní queries 3. Nebojím se nákladů za BigQuery 4. Uživatelské funkce a procedury jsou super 5. Expirace tabulek může být super 6. Time travel - vymazaná tabulka? Není problém! 7. Externí zdroje do BigQuery 8. Data Lineage 9. ML - Detekce anomálií v datech 10. ML - Analýza sentimentu v datech
  • 39. 10. Analýza sentimentu | Bard (PaLM 2) Tipy -- Step 1: Povolte "BigQuery connection API" a "Vertex AI API" -- Step 2: Vytvořte external connection v USA "ml_models" https://cloud.google.com/bigquery/docs/create-cloud-resource-connection#console -- CREATE SCHEMA IF NOT EXISTS `ml_models_us` OPTIONS( description="Dataset pro machine learning (AI) modely v USA.", location="us"); -- CREATE MODEL IF NOT EXISTS `ml_models_us.llm_model` REMOTE WITH CONNECTION `us.ml_models` OPTIONS(remote_service_type = 'CLOUD_AI_LARGE_LANGUAGE_MODEL_V1'); -- WITH testovaci_texty AS ( SELECT "Perfektní pořady , které jinde nejsou. Škoda ale , že přehrávání na androidu je na malém okně a musím se na to dívat z 20 cm." AS review ) SELECT review, JSON_VALUE(ml_generate_text_result, '$.predictions[0].content') AS sentiment FROM ML.GENERATE_TEXT( MODEL `ml_models_us.llm_model`, ( SELECT CONCAT('Perform sentiment analysis on the following text, return one the following categories "positive", "negative", "neutral": ', review) AS prompt, review FROM testovaci_texty ), STRUCT( 0.3 AS temperature, 100 AS max_output_tokens ) );