Data Engineer
SELECT client_id, ФИО, SUM(suma) AS total_amount FROM clients JOIN transactions ON clients.client_id = transactions.client_id WHERE дата = '2025-05-01' GROUP BY client_id, ФИО;
Písali ste jednotkové testy? Máte s tým skúsenosti?
1. Objednávky: - order_date datetime NIE NULL - user_id int NIE NULL - order_id int NIE NULL 2. Tovar: - order_id int NIE NULL - model int NIE NULL - cat_1 varchar(50) NIE NULL - price int NIE NULL - quantity int NIE NULL Hodnoty v cat_1: - Oblečenie - Obuv - Kozmetika - Domáce potreby - Hračky Zobraziť počet objednávok a "počet potrebných produktov v kategórii v objednávke" za rok 2021 v kategóriách "Oblečenie" a za rok 2022 v kategóriách "Obuv" (finálny pohľad: 2 riadky. Polia: rok, počet produktov, počet objednávok) with cte as( select year(o.order_date) as year_orders, g.cat_1, count(distinct o.order_id) as count_orders, sum(g.quantity) as count_quan from Orders o join Goods g on o.order_id = g.order_id where g.cat_1 = 'Oblečenie' and Year(o.order_date) = 2021 or g.cat_1 = 'Obuv' and Year(o.order_date) = 2022 group by year_orders, g.cat_1 ) select year_orders, count_quan, count_orders from cte
Ktorý príkaz z koreňového adresára projektu by mal byť použitý na aktualizáciu submodulu docs/ na najnovšiu verziu z vzdialeného repozitára a na prípravu tejto zmeny na commit? git fetch docs/ && git merge docs/FETCH_HEAD git pull --recurse-submodules git submodule update --remote docs/ cd docs/ && git pull && cd .. && git commit -am "Aktualizácia" git submodule update --init docs/
Veta feature obsahuje niekoľko commitov s nesprávne commitnutým súborom config.yaml, ktorý bol neskôr opravený. V dôsledku toho sa tím rozhodol úplne odstrániť všetky zmeny súboru z histórie, aby zabránil zverejneniu dôverných nastavení. Pôvodný stav vetvy (výstup príkazu git log --oneline): 1 a4b5c67 (HEAD -> feature) Refaktoroval logiku služby 2 d9f0a11 Opravil preklep v config.yaml 3 7c1d3f2 Pridal dočasný config.yaml 4 e3a98cd Počiatočný commit 5 Po prepísaní histórie na odstránenie súboru config.yaml sa výstup git log --oneline zmenil na: 6 b9e7d42 (HEAD -> feature) Refaktoroval logiku služby 7 41f3b60 Počiatočný commit Akú operáciu tím vykonal? - Spustil git revert na commite s config.yaml - Spustil git filter-branch --index-filter "git rm --cached config.yaml" -- --all - Spustil git rebase -i odstránením commitov obsahujúcich zmeny v súbore - Spustil git commit --amend a git push --force - Použil git cherry-pick na vytvorenie novej vetvy bez config.yaml
Máte skúsenosti s písaním dokumentácie?
Aké fyzické stratégie vykonávania join poznáte?
Ako zabezpečiť globálnu jedinečnosť primárneho kľúča v PostgreSQL pri shardingu?
Aký fyzický mechanizmus JOIN bude použitý pri spojení tabuľky transakcií s tabuľkou kalendára podľa podmienky nerovnosti (dátum <= dátum)?
Čo sa fyzicky deje pri INSERT, UPDATE a DELETE v Greenplum; prečo po DELETE nie je uvoľnené miesto na disku a v čom sa DELETE líši od TRUNCATE?
Čo si ešte napísal v Pythone okrem Airflow DAG?
Ako doručujete kód DAG-ov do produkcie?
Funkcia okna SUM() OVER (PARTITION BY user_id) — v enem primeru dodajemo ORDER BY datum nakupa, v drugem ne. Kakšna je razlika?
Čo vráti funkcia find_mode pre zoznamu [1, 2, 3, 3, 4, 5]? Vysvetli krok za krokom.
Prečo v súčasnosti zvažujete pracovné ponuky?
Ako sa orchestrujú spustenia v DBT? Používate Airflow?
Ako sa v súčasnosti spracovávajú údaje? Ak sú v rôznych formátoch, ako sa normalizujú a zjednocujú?
Uveďte príklad, kedy sa vám podarilo zlepšiť procesy alebo nástroje pre tím.
Povedajte nám viac o skreslení dát medzi shardami: ako bolo určené a ako bola použitá príslušná funkcia/mechanizmus?
Top 3 kritériá pre výber ponuky, ak je viacero návrhov.