Data Engineer
X5 da tajribangiz haqida gapiring: DWH bo'limida nima qilgansiz?
Hozirgi ish joyingizdagi saqlash joyiga ma'lumotlar qanday kiradi?
Nima uchun bozorga chiqishga va hozirgi ish joyingizdan chiqishga qaror qildingiz?
Siz dev shoxobchasida yangi funksaga ustida ishlayapsiz. To'satdan, README.md faylida yozish xatosini tezda tuzatish uchun main shoxobchasiga o'tish zarurati yuzaga keladi. Sizda bir nechta commit qilinmagan o'zgarishlar bor: src/feature.js (indexlanmagan) va styles/main.css (indexlangan). Siz barcha o'zgarishlarni vaqtincha saqlab, keyinchalik dev shoxobchasida ularga qaytishni xohlaysiz. Buning uchun qaysi buyruqlar ketma-ketligini ishlatishingiz kerak? git stash save "WIP on feature" && git checkout main && [fix] && git checkout dev && git stash pop git stash push -m "WIP on feature" && git checkout main && [fix] && git checkout dev && git stash pop git stash && git checkout main && [fix] && git checkout dev && git stash apply git add . && git stash && git checkout main && [fix] && git checkout dev && git stash drop git commit -m "Temp commit" && git checkout main && [fix] && git checkout dev && git reset HEAD^
Materialized View nima va u oddiy View dan qanday farq qiladi?
Sizda allaqachon ish takliflari bormi?
Spark qanday qilib jadval 'kichkina' deb hisoblaydi broadcast join uchun (yuqori chegarasi)?
Hozirgi vaqtda ishoningda nima yoqmayapti?
Granula o'lchami ClickHouse jadvaliga qanday ta'sir qiladi?
JSON ni qanday papkaga yozish (Airflow DAG kontekstida)
[ism] bizning ish e'lonimizda ta'riflagan vazifalarimiz bilan bog'liq bo'lgan tajribangiz haqida biroz gapirib bering.
Utyna turini (duck typing) nima?
JSON ni tahlil qilamiz — JSON ni kim tahlil qiladi? Mening bilishimcha, ClickHouse da funksiyalar yo'q.
Logistika korxonasiga hisobot Siz logistika korxonasida omborlardagi operatsiyalarni hisobga oladigan tahlilchisiz. Har bir omborning samaradorligi haqida hisobot tayyorlashingiz kerak. Har bir ombor uchun hisoblang: • umumiy operatsiyalar soni (count_operations); • omborda ishlov berilgan umumiy mahsulotlar soni (sum_quantity); • faqat belgilangan vaqt bilan (NULL bo'lmagan) operatsiyalarni hisobga olgan holda, o'rtacha ishlov berish vaqti (avg_processing_time), butun son bilan yaxlitlangan; • bir operatsiyada ishlov berilgan maksimal va minimal mahsulotlar soni (max_quantity, min_quantity); • har bir turdagi operatsiyalar soni («yetkazib berish», «jo'natish», «otransfer») alohida ustunlarda: supply_operations, shipment_operations, transfer_operations. Umumiy operatsiyalar soni 2 dan ortiq bo'lgan va o'rtacha ishlov berish vaqti 60 daqiqadan oshmaydigan omborlarni filtrlash. Natijani ombor ID bo'yicha o'sish tartibida saralash. Kiritish formati Operationlar jadvali: • operation_id (int) — operatsiya identifikatori • warehouse_id (int) — ombor identifikatori • operation_type (text) — operatsiya turi: «yetkazib berish», «jo'natish», «otransfer»
JSON ni uchinchi normal shaklga bo'ling: CashBreakdown ro'yxatini qanday saqlaysiz va qanday surrogat kalitlarni yaratgan bo'lar edingiz?
Nima rivojlantirmoqchisiz? Aniq arxitektura yechimlari?
Sparkda broadcast join nima?
Maxsus ketma-ketlik, nomi even_sequence bo‘lib, faqat juft sonlarni ishlab chiqaradigan, yaratildi. [...]-ning o‘rniga nima qo‘yish kerakki, agar even_column qiymati kiritilmagan bo‘lsa, qiymat even_sequence-dan olinadi? create table some_table( even_column [...] ); integer computed as nextval('even_sequence') integer generated always as identity (start with 2 increment by 2) integer default nextval('even_sequence') integer unique default nextval('even_sequence') integer generated by even_sequence’
Spark'da shuffle xavfi nima?
Ma'lumotlar sifatining xavflari qanday?