Data Engineer
Povedaj mi viac o Spark: čo presne bolo realizované, aké metódy boli použité
Aký je rozdiel medzi WHERE a HAVING?
Čo je GIL (Global Interpreter Lock) a ako funguje v Pythone?
Potrebujeme engine pipeline — mechanizmus, ktorý umožní veľmi rýchle vytváranie tokov zadávaním kontraktov a parametrov. Ako by si to realizoval na vyššej úrovni?
Aké výhody a nevýhody ACID možno uviesť, okrem rýchlosti čítania?
Prečo nasledujúci dopyt nebude používať index, ak v tabuľke records (id) je vytvorený bežný B-strom index na id? select * from records where id % 2 = 0 - Pre id je potrebný index typu GIN - Indexy nepracujú s výrazmi v WHERE - % je operácia porovnania, nie filtrovania - limit a offset sú povinné pre optimalizáciu s indexom - Dopyt odkazuje na číselné pole, nie na textové pole
Ako ste pracovali s CI/CD?
Aké typy JOIN poznáte? (logické)
Akými operátormi ste používali Airflow? Ako ste komunikovali s dbt cez Airflow?
-- Pôvodná tabuľka stretch -- Je potrebné doplniť NULL hodnoty predchádzajúcou (ne NULL) hodnotou podľa id - vykonať doplnenie nadol id | ttime | val ---|-------|----- 1 | 07:30 | NULL 1 | 09:21 | 10 1 | 13:53 | NULL 1 | 16:12 | NULL 2 | 09:42 | 133 2 | 15:20 | NULL 2 | 21:33 | NULL 3 | 08:01 | NULL 3 | 11:41 | 8 3 | 14:23 | NULL 3 | 16:17 | NULL 3 | 19:54 | 2 4 | 13:10 | 312 4 | 14:42 | NULL 4 | 16:31 | 7 4 | 17:44 | NULL id | ttime | val ---|-------|----- 1 | 07:30 | NULL 1 | 09:21 | 10 1 | 13:53 | 10 1 | 16:12 | 10 2 | 09:42 | 133 2 | 15:20 | 133 2 | 21:33 | 133 3 | 08:01 | NULL 3 | 11:41 | 8 3 | 14:23 | 8 3 | 16:17 | 8 3 | 19:54 | 2 4 | 13:10 | 312 4 | 14:42 | 312 4 | 16:31 | 7 4 | 17:44 | 7 -- SQL dotaz pro získání požadované tabulky SELECT id, ttime, COALESCE(val, LAST_VALUE(val) OVER(PARTITION BY id ORDER BY ttime)) as val FROM stretch
Povedzte mi o svojich pracovných skúsenostiach
Ktoré z nasledujúcich tvrdení odráža dôsledky takýchto akcií z pohľadu rozšíreného Git Flow a správy histórie zmien?
Ako veľmi vás zaujíma táto rola, vzhľadom na úzky pracovný kontakt s analytikmi, kontrolu ich kódu a poradenstvo?
Čo sa týka dotazu, môžeme vidieť, čo sa deje s údajmi, vrátane akých typov joinov — aké typy joinov tam môžeme vidieť?
Povedz mi o použití Airflow: aké nestandardné prvky si použil
Aký typ čítania sa používa v Greenplum — riadkové alebo stĺpcové?
Analýza aktivity používateľov v reklamných kampaniach Spoločnosť vedie evidenciu udalostí súvisiacich s reklamnými kampaňami. Vstupné tabuľky sú: • campaigns — zoznam reklamných kampaní s ich identifikátormi a názvami; • events — udalosti používateľov podľa kampaní s informáciami o type udalosti (napríklad 'click' (klik na reklamu)) a čase. Je potrebné vytvoriť správu pre každú reklamnú kampaň s nasledujúcimi ukazovateľmi: • Celkový počet udalostí. • Počet jedinečných používateľov, ktorí vykonali udalosti. • Čas prvého a posledného udalosti podľa kampane. • Poradie kampane podľa zostupného počtu celkových udalostí. Riadok — číslo, ktoré sa priraďuje každej riadku v výslednom súbore na základe zadaného poradia údajov. Ak majú dve alebo viac riadkov rovnakú hodnotu, dostanú rovnaké poradie, ale nasledujúce poradie sa preskočí. Do správy sa zahrnú iba kampane, ktoré mali udalosti: kampane bez udalostí sa nezohľadňujú. Konečný prehľad by mal byť najskôr zoradený podľa poradia kampane vzostupne, a potom podľa campaign_name v abecednom poradí. Formát vstupu • campaign_name (string) — názov reklamnej kampane • start_date (timestamp) — dátum a čas začiatku reklamnej kampane • end_date (timestamp) — dátum a čas ukončenia reklamnej kampane Tabuľka events: • event_id (int) — jedinečný identifikátor udalosti • user_id (int) — jedinečný identifikátor používateľa, ktorý vykonal udalosť • campaign_id (int) — jedinečný identifikátor reklamnej kampane • event_type (string) — typ udalosti, napríklad 'click' (klik na reklamu) alebo 'conversion' (konverzia — úspešná akcia, napríklad nákup) • event_time (timestamp) — dátum a čas vykonania udalosti Dáta neobsahujú medzery alebo nesprávne hodnoty. Formát výstupu Dopyt by mal vrátiť tabuľku s poľami v takom poradí: • campaign_name (string) — názov reklamnej kampane • total_events (int) — celkový počet udalostí súvisiacich s kampaňou • unique_users (int) — počet jedinečných používateľov, ktorí vykonali udalosti • first_event_time (timestamp) — dátum a čas prvého udalosti kampane • last_event_time (timestamp) — dátum a čas posledného udalosti kampane • campaign_rank (int) — poradie kampane podľa zostupného počtu celkových udalostí Dáta zoradiť podľa poradia kampane podľa vzostupu, a potom podľa campaign_name v abecednom poradí.
Aké typy JOIN poznáš? Vysvetli 2-3 hlavné.
Ako nájsť podreťazec v konkrétnom stĺpci log súboru v Linuxe (napríklad dátum v treťom stĺpci)?
Aké kontroly kvality údajov boli vykonané v Data Vault?