Data Engineer
Начиная с каких особенностей можно сказать, что хранилище данных нужно?
С оптимизацией запросов приходилось работать? С чего вообще начинается оптимизация?
Нам нужно из Greenplum материализованное представление перенести в ClickHouse — каким образом можно передать данные?
Как решить задачу за линейное время O(n), используя словарь? Что нужно хранить в словаре, чтобы потом собрать отсортированную строку? Как обработать символы, которых нет в order?
В чём разница между EXPLAIN и EXPLAIN ANALYZE?
Какие типы индексов есть в PostgreSQL?
За какое время будет работать решение с использованием встроенного sorted? Можно ли придумать более быстрое решение?
Что такое DAG в Airflow, из чего он состоит и как Airflow исполняет DAG?
Опишите методы оптимизации SQL запросов, которые вы применяли. Как сократили время выполнения с 12-15 секунд?
Как работает query optimizer в Oracle, на что он смотрит и к какому классу относится?
Чем жертвует СУБД при быстрой загрузке данных (COPY в Postgres, BULK INSERT)?
Вы строите представление, которое показывает всех пользователей и, если есть, их последние заказы. Таблицы: users(id, name) и orders(id, user_id, created_at). Какой тип соединения нужно использовать, чтобы в выборку попали и те пользователи, у которых нет заказов? CROSS JOIN RIGHT JOIN INNER JOIN FULL JOIN LEFT JOIN
Как устроено сжатие в ClickHouse?
Как будет читаться файл из HDFS, например Parquet — целиком или по блокам?
Доля трафика от ботов Команда антифрода разработала механизм определения трафика от ботов на сайт магазина — при входе бота на сайт в параметры его URL добавляется подстрока "bot" (без учета регистра). Если user_id хотя бы один раз был определен как бот в декабре, то он всегда должен определяться как бот. Изучите датасет с визитами пользователей на сайт и посчитайте долю ботов от общего числа пользователей в декабре 2024 года (округлите ее до одного знака после запятой). Формат ввода Таблица visits: - event_date (date) — дата визита - user_id (int) — уникальный идентификатор пользователя - url (string) — ссылка, по которой был осуществлен переход Данные не содержат пропусков или некорректных значений. Формат вывода Запрос должен вернуть таблицу с полями: - share (float) — доля ботов от общего числа пользователей в декабре, округленная до одного знака после запятой.
Расскажи о своём опыте работы на последних местах, какие проекты, какой стек?
Даны две таблицы t1 и t2. Задача выписать все виды джойнов, которые знаешь, и результат запроса select * from t1 <join> t2 on t1.t = t2.t для каждого из них. |t1.t| ------ 1 2 4 null ------ |t2.t| ------ 1 3 null null cross 1 1 - null null - INNER JOIN [phone] LEFT JOIN 1 - 1 2 - NULL 4 - NULL NULL - NULL RIGHT JOIN [phone] NULL - 3 NULL - NULL NULL - NULL FULL JOIN [phone] - NULL 4 - NULL NULL - 3 null - NULL null - NULL null - NULL
Из каких основных блоков состоит сообщение трассировки (span)?
В ClickHouse какой тип чтения используется?
Объясните, как технически работает Git LFS и какие преимущества он предоставляет по сравнению со стандартным Git при работе с большими файлами.