Чек-лист самопроверки
Разработчику
Аналитику
Тестировщику
Архитектору
Инженеру
Чек-лист самопроверки
- Могу ли я объяснить, чем отличается база данных от файла Excel?
- Понимаю ли я, что такое сущность и как она выражается в терминах моделирования?
- Умею ли я определить атрибуты сущности и разделить их на идентифицирующие и описательные?
- Знаю ли я, почему сущности выражаются существительными, а связи — глаголами?
- Могу ли я привести пример слабой и сильной сущности?
- Понимаю ли я, что такое первичный и внешний ключ?
- Умею ли я построить связь «один ко многим» между двумя таблицами?
- Знаю ли я, как реализуется связь «многие ко многим»?
- Могу ли я объяснить, зачем нужна промежуточная таблица для M:N-связей?
- Понимаю ли я, что такое ER-диаграмма и как её читать?
- Умею ли я описать кардинальность связи на диаграмме?
- Знаю ли я, какие типы связей бывают (1:1, 1:N, M:N)?
- Могу ли я объяснить, почему данные в БД хранятся на диске, а не в оперативной памяти постоянно?
- Понимаю ли я, что такое страница данных и зачем она нужна?
- Знаю ли я, что такое буферный пул и как он ускоряет работу СУБД?
- Могу ли я описать этапы выполнения SQL-запроса в СУБД?
- Понимаю ли я, что такое метаданные и где они хранятся?
- Знаю ли я, что такое индекс и как он работает?
- Умею ли я объяснить разницу между B-деревом и хеш-индексом?
- Понимаю ли я, когда стоит использовать битовый индекс?
- Знаю ли я, что такое селективность столбца и как она влияет на выбор плана запроса?
- Могу ли я объяснить, зачем СУБД нужна статистика по таблицам?
- Понимаю ли я, что такое оптимизатор запросов и от чего зависит его решение?
- Знаю ли я, чем отличается логическая схема от физической?
- Понимаю ли я уровни архитектуры ANSI/SPARC?
- Могу ли я объяснить, что такое внешнее представление (view) и зачем оно нужно?
- Знаю ли я, что такое вычисляемый столбец и какие у него виды?
- Понимаю ли я, что такое партиционирование и какие у него типы?
- Умею ли я объяснить, как работает партиционное прореживание?
- Знаю ли я, что такое индекс-организованная таблица (IOT)?
- Понимаю ли я, чем отличается кучевая таблица от IOT?
- Могу ли я объяснить, почему
NULL = NULLдаётUNKNOWNв SQL? - Знаю ли я, как правильно проверять значение на
NULL? - Понимаю ли я, что такое коррелированный подзапрос и чем он отличается от некоррелированного?
- Умею ли я использовать
EXISTSдля проверки наличия связанных записей? - Знаю ли я, что такое ACID и зачем нужны транзакции?
- Понимаю ли я, какие задачи решает СУБД помимо хранения данных?
- Могу ли я перечислить компоненты СУБД (ядро, менеджер транзакций, механизм запросов и т.д.)?
- Знаю ли я примеры реляционных и нереляционных СУБД?
- Понимаю ли я, когда выбирать SQL, а когда NoSQL?
- Умею ли я привести пример документа в формате JSON, как он хранится в MongoDB?
- Знаю ли я, что такое схема базы данных и какие у неё уровни?
- Понимаю ли я, что такое нормализация и зачем она нужна?
- Могу ли я объяснить первую нормальную форму?
- Знаю ли я, что такое атомарность атрибута?
- Понимаю ли я, почему важно избегать дублирования данных?
- Умею ли я объяснить, как циклические зависимости влияют на вставку данных?
- Знаю ли я, как правильно именовать внешние ключи?
- Понимаю ли я, что физическое размещение данных влияет на производительность?
- Могу ли я объяснить, почему проектирование БД начинается с анализа предметной области, а не с выбора инструментов?