Data Engineer
По кои полета си разпределил данните в Greenplum?
Какви проверки за качество на данните бяха извършени в Data Vault?
Имаш ли опит с Table Engine Join в ClickHouse?
Как Spark определя дали една таблица е достатъчно 'малка' за broadcast join (горна граница)?
В какъв ред се извършват основните операции в SQL: SELECT, FROM и т.н.?
Как да прехвърляме данни между задачи в Airflow?
Има ли функции и възможности в Greenplum, които не са в обикновения MySQL и други диалекти?
Дайте пример кога сте успели да подобрите процесите или инструментите за екипа.
Създадена е структурата на таблиците, посочена на изображението. Необходимо е да изпълните заявката, посочена на изображението. Какъв вид join трябва да се използва на мястото на [...], за да се получи в резултата за записите с type = 'table_aw' да бъде попълнена колоната 'naming', а за записите с type = 'table2' — колоната 'serial_number'? create table multirelation( type varchar not null, entity_id integer not null ); create table table_aw( id integer primary key, naming varchar not null ); create table table2( id integer primary key, serial_number varchar not null ); -- структура на таблиците select m.type,m.entity_id, ta.naming, t2.serial_number from multirelation m [...] join table_aw ta on m.entity_id = ta.id and m.type='table_aw' [...] join table2 t2 on m.entity_id = t2.id and m.type='table2'; -- заявка Оставете празно inner cross right left
Кои бяха потребителите на данни и как се изграждаха витрините?
Какво се случи и как да върнете работата?
Нашата тема е силно структурирана, дървовидна, данните са сурови — как да ги обработим?
Каква е разликата между Greenplum и PostgreSQL?
На каква заплата очакваш?
Доклад за логистична компания Вие сте анализатор в логистична компания, която води отчет за операциите в складовете. Трябва да изготвите доклад за ефективността на всеки склад. За всеки склад изчислете: • общия брой операции (count_operations); • общия брой обработени стоки в склада (sum_quantity); • средното време за обработка на операция (avg_processing_time), като се вземат предвид само операциите с посочено време (не NULL), закръглено до най-близкото цяло число; • максималното и минималното количество стоки, обработени в една операция (max_quantity, min_quantity); • броя на операциите от всеки тип («доставка», «изпращане», «прехвърляне») в отделни колони: supply_operations, shipment_operations, transfer_operations. Филтрирайте складовете, при които общият брой операции е повече от 2 и средното време за обработка не надвишава 60 минути. Подредете резултата по ID на склада във възходящ ред. Формат на входа Таблица operations: • operation_id (int) — уникален идентификатор на операцията • warehouse_id (int) — ID на склада • operation_type (text) — тип на операцията: «доставка», «изпращане», «прехвърляне» • quantity (int) — брой единици стока в операцията • operation_date (timestamp) — дата и час на операцията • processing_time (int) — време за обработка на операцията Колоната processing_time може да съдържа NULL стойности. Формат на изхода Заявката трябва да върне таблица с полетата в следния ред: • warehouse_id (int) — уникален ID на склада • count_operations (int) — общ брой операции, извършени в склада • sum_quantity (int) — общ брой обработени стоки в склада • avg_processing_time (numeric) — средно време за обработка на операцията (в минути), като се вземат предвид само операции с ненулево време, закръглено до цяло число • max_quantity (int) — максимално количество стоки, обработени в една операция • min_quantity (int) — минимално количество стоки, обработени в една операция • supply_operations (int) — брой операции от тип «доставка» • shipment_operations (int) — брой операции от тип «изпращане» • transfer_operations (int) — брой операции от тип «прехвърляне»
Какви са характеристиките и разликите между Set и List в Python? Освен производителността, какви други характеристики има?
LEFT JOIN: таблица с 10 записи LEFT JOIN таблица с 100 записа. Какво е минималното и максималното количество редове, които могат да се получат?
На показания екран има две структури от данни; в коя от тях търсенето на стойност 2 ще бъде по-бързо и защо?
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, ФИО;
Как обикновено организирате работата си по задачите и как следите напредъка?