Колко добре познавате Linux/Docker?
Data Engineer
Какво е shuffle в Spark и защо е необходим?
Как може да се управлява shuffle в Spark (разделяне, broadcast join и т.н.)?
Какво носи форматът Iceberg в сравнение с обикновения Parquet?
Запозна ли сте с общи таблицени изрази (CTE)? Дайте пример за използване.
Как да намеря подниз в конкретна колона на лог файл в Linux (например, датата в третата колона)?
Какво е статистика в контекста на системите за управление на бази данни и оптимизация на заявки?
[име] разказа за опита си с различни системи за управление на бази данни, колко дълбоко е трябвало да се занимава с оптимизацията и вътрешните детайли.
Подробно опишете алгоритъма за улавяне на инкремента от източника, за да не се губи нищо при промяна на честотата на зареждане.
Как да организираме четенето на едно и също съобщение от Kafka от няколко различни потребителя (fan-out)?
Как да решим проблема, когато процесът на четене може да види междинното (несъответстващо) състояние на таблицата по време на многостепенно ETL (delete+insert) в Iceberg?
Какво е "мъртва кортежа" (dead tuple)?
Как са свързани партициите на Spark и партициите в таблиците (например в Iceberg)?
Как да сравним оригиналната („на живо“) и целевата таблица, ако източникът постоянно се променя?
Разкажете за най-добрите практики при използването на индекси - кога и колко често да ги използвате.
Какво е Spark JDBC и как ефективно да заредите голяма таблица чрез него?
Как да открием изкривяване на данните (data skew) в Spark?
Какво е журнал на транзакциите (WAL) в СУБД и защо е необходим?
Използва ли се методът за сравняване на хешове на записи за изчисляване на разликата между източника и целевата таблица?
За какво служат cache и persist в Spark?