SQL
1. Как вы начинаете смотреть, что не так в медленно работающем запросе, с чего начинаете оптимизацию? (контекст Greenplum)
2. Почему в плане выполнения запроса оценочное количество строк (rows) может сильно отличаться от реального (например, 50M вместо 500M)?
3. Что такое статистика в базе данных и для чего она нужна оптимизатору?
4. Какие действия вы предпринимаете при расхождении плана и реальных данных?
5. Рассматриваем сценарий: три большие таблицы (transactions, clients, accounts) равномерно распределены, джойны по ключам, нет совпадения ключей распределения, много NULL — это проблемный запрос или нормальный?
6. Что не так в запросе с множеством NULL в ключах распределения и как это…