Data Engineer
Jak přidat klouzavý průměr součtu objednávek za aktuální a předchozí dva dny na uživatele?
Potřebujete rychle vrátit několik souborů na verzi z posledního commitu, aniž byste ovlivnili ostatní změny. Jak postupovat? git reset --hard HEAD Odstraňte a znovu vytvořte soubory ručně git fetch a git merge git revert HEAD git checkout HEAD^ <soubor1> <soubor2>
Musel jste pracovat s Oracle Data Integrator (ODI)?
Jaký úkol v Pythonu jste naposledy řešili v produkci?
Jaké další formáty souborů, kromě Parquet, dobře fungují s Hadoop a Hive?
Co je proměnná var, jakého je typu?
Použili jste v Data Vault Bridge a PIT tabulky? Uveďte příklad a vysvětlete jejich účel.
Velké skladování bylo — jak těžké bylo ho udržovat ručně v objemech a objektech?
Co je Materializovaný pohled a čím se liší od běžného pohledu?
Co se ti momentálně na tvé práci nelíbí?
Povězte nám o své zkušenosti s Airflow (orchestrátor). Čím jste používali?
Pracoval jste s JWT tokeny? Z jakých bloků se skládají?
Co je třeba udělat, pokud chcete změnit větev, na kterou odkazuje podmodul? - Podmoduly nepodporují změnu větve - Odstraňte podmodul a přidejte ho znovu s požadovanou větví - Změňte větev v podmodulu a proveďte commit v hlavním repozitáři - Spusťte git checkout na požadované větvi v podmodulu a zaznamenejte změny v hlavním repozitáři - Spusťte git submodule update --branch s uvedením nové větve
Proč se oddělují pohledy (VIEW) a tabulky? K čemu slouží pohledy?
Načítali jste data ze Spark do S3 ve formátu Parquet, a poté z Parquet do Greenplum — jak probíhá proces načítání?
Pověz mi o rozdělení na části. Jaké zajímavé operace jsi musel provést?
Jak obvykle přistupujete ke stavbě procesů ETL a ELT? V čem se tyto procesy liší?
Zpráva pro logistickou společnost Jste analytikem logistické společnosti, která zaznamenává operace na skladech. Musíte sestavit zprávu o efektivitě každého skladu. Pro každý sklad vypočtěte: • celkový počet operací (count_operations); • celkový počet zpracovaných zboží na skladě (sum_quantity); • průměrnou dobu zpracování operace (avg_processing_time), pouze pro operace s určeným časem (ne NULL), zaokrouhlenou na celé číslo; • maximální a minimální počet zpracovaných zboží v jedné operaci (max_quantity, min_quantity); • počet operací každého typu («dodávka», «odeslání», «přesun») ve zvláštních sloupcích: supply_operations, shipment_operations, transfer_operations. Filtrovat sklady, jejichž celkový počet operací je větší než 2 a průměrná doba zpracování nepřesahuje 60 minut. Seřadit výsledek podle ID skladu vzestupně. Formát vstupu Tabulka operations: • operation_id (int) — unikátní identifikátor operace • warehouse_id (int) — ID skladu • operation_type (text) — typ operace: «dodávka», «odeslání», «přesun»
Kde byste začali realizaci projektu?
Byl jsi za ně sám odpovědný — dělal jsi všechno sám?