Data Engineer
Қандай физикалық JOIN-дар білесіз?
Apache Airflow үшін қарапайым DAG жазыңыз
Логистикалық компания үшін есеп беру Сіз қоймалардағы операцияларды есепке алатын логистикалық компанияда аналитиксіз. Әр қойманың тиімділігін бағалау үшін есеп беру құрастыруыңыз керек. Әр қойма үшін есептеу: • жалпы операция саны (count_operations); • қоймада өңделген тауарлардың жалпы саны (sum_quantity); • операцияның орташа өңдеу уақыты (avg_processing_time), тек көрсетілген уақытпен (NULL емес) операцияларды ескере отырып, бүтін санға дейін дөңгелектелген; • бір операцияда өңделген ең көп және ең аз тауар саны (max_quantity, min_quantity); • әр типтегі операциялардың саны ('жеткізу', 'жөнелту', 'ауыстыру') бөлек бағандарда: supply_operations, shipment_operations, transfer_operations. Операция саны 2-ден көп және орташа өңдеу уақыты 60 минуттан аспайтын қоймаларды сүзгілеңіз. Нәтижені қойма ID бойынша өсу ретімен сұрыптаңыз. Кіріс форматы Operation кестесі: • operation_id (int) — операцияның бірегей идентификаторы • warehouse_id (int) — қойма идентификаторы • operation_type (text) — операция түрі: 'жеткізу', 'жөнелту', 'ауыстыру' • quantity (int) — операциядағы тауар саны • operation_date (timestamp) — операцияның күні мен уақыты • processing_time (int) — операцияның өңдеу уақыты processing_time бағаны бос болуы мүмкін. Шығыс форматы Сұрау нәтижесі келесі өрістерді қамтуы керек: • warehouse_id (int) — қойма идентификаторы • count_operations (int) — қоймадағы операциялардың жалпы саны • sum_quantity (int) — қоймада өңделген тауарлардың жалпы саны • avg_processing_time (numeric) — операциялардың орташа өңдеу уақыты (минутпен), NULL емес уақыттарды ескере отырып, бүтін санға дейін дөңгелектелген • max_quantity (int) — бір операцияда өңделген ең көп тауар саны • min_quantity (int) — бір операцияда өңделген ең аз тауар саны • supply_operations (int) — 'жеткізу' операцияларының саны • shipment_operations (int) — 'жөнелту' операцияларының саны • transfer_operations (int) — 'ауыстыру' операцияларының саны.
OLAP кубтарымен таныссыз ба? Үлкен көлемдегі деректермен тез жұмыс істеу үшін Excel-дің шоғырландырылған кестесіне ұқсас көпөлшемді деректермен жұмыс жасағанда.
Инкременттік және толық жүктеумен жұмыс істедіңіз бе? Көші-қондармен қалай күрестіңіз?
[аты] сұрады: Қандай бағандар Nullable болуы керек және оны DDL-де қалай рәсімдеу керек?
Airflow-те catchup/backfill кезінде шамамен 700 DAG іске қосылуын қалай болдырмауға болады?
ClickHouse-те қандай кесте қозғалтқыштарын білесіз және қолдандыңыз ба?
Greenplum-те деректерді тарату үшін қандай өрістерді қолдандың?
Өткен жобаңыз туралы айтыңызшы, сіздің міндеттеріңіз қандай болды?
Greenplum туралы айтыңыз — деректер сақтау форматтары, жолды және бағанды сақтау.
Кодтау сыртындағы хоббилеріңіз туралы айтыңыз.
Airflow-те құбырларды құрастырғанда, қоқыс деректерін (қоқыс/жарамсыз деректер) қалай өңдейсіз?
DBMS және сұрау оптимизациясы контекстінде статистика ұғымы қандай?
ClickHouse-те JOIN қалай жұмыс істейді?
Қандай тарату түрлерін қолдандыңыз? Тарату кілтін қалай таңдадыңыз?
-- Екі немесе одан да көп күн қатарынан саяхаттаған барлық жолаушыларды табыңыз.
Nested Loop Join кезінде қай ресурс ең көп пайдаланылады?
ROWS BETWEEN және RANGE BETWEEN арасындағы айырмашылық неде?
Сізде Docker суреттерімен жұмыс істеу, виртуалды машинада ортаны орнату тәжірибесі бар ма?