Дизайн базы данных — это организация наборов данных в определенную модель, разработанную профессионалом по управлению базами данных. Основная цель каждого проекта базы данных — эффективно классифицировать данные и определять важные отношения между точками данных. Дизайн базы данных может выглядеть по-разному для каждой организации, в зависимости от целей учреждения и сектора.
Это помогает понять: насколько большой сервис мне понадобится? Например, сколько пользователей у меня будет? Как быстро разные страницы должны отвечать? Если это веб-сайт или мобильное приложение, насколько быстрыми должны быть различные функции? О базе данных почти забыли. Все начинается с правильного обдумывания того, что важно для успеха моего приложения. К примеру, часто встречается задача получить цены на выборки ТНВЭД — это лучше всего доверить профессионалам.
В архитектуре базы данных вы должны действительно понимать данные, которые вы собираетесь вводить. Иногда это сложно, если у вас нет реальных вариантов использования или данных. Вы должны обладать некоторым воображением. Вам нужно подумать: какие элементы данных мы вводим, какие запросы мы хотели бы выполнять в отношении этих данных и сколько данных будет в этой базе данных? Каковы атрибуты данных? Как быстро они изменятся? Если атрибуты меняются 10 раз в день, вам нужно думать о своих данных иначе, чем если бы они менялись раз в месяц.
Никогда не следует принимать советы Google, Amazon или Facebook и пытаться принять их преждевременно. Я думаю, что это действительно заманчиво попытаться масштабироваться, как они, но часто Google проектирует базы данных для решения проблем, которых нет ни у кого. Они планируют анализировать буквально весь текст каждой когда-либо написанной книги. Многие другие компании даже близко не достигают этого уровня. Формируйте дизайн в соответствии с масштабами, которые у вас есть сегодня, думая о масштабах, которые будут у вас завтра. Не бросайтесь в погоню за технологиями только потому, что вы слышали, что их используют крупные игроки.