Ответы пользователя по тегу Базы данных
  • Как грамотно разработать базу данных?

    netAn
    @netAn
    Нас в ККЭП учили так:
    • Предметная область. Описываем (лучше не в уме) простым русским языком — что мы моделируем. База данных всегда является моделью чего-то в реальности. Укрупненно основные объекты и связи между ними, без деталей. Инструмент — MS Word, notepad, Бумагаручкамозг.
    • Создаем концептуальную модель. Уже можно порисовать рисунки в ворде.
    • Далее идет логическая модель данных — в ней уже есть эмбрионы будущих таблиц, с именами полей и связями между ними. Тут уже указываем тип связей — 1:1, 1:n, m:n. Тут уже можно порисовать в простом графическом редакторе или на доске.
    • Далее предпоследний этап — физическая модель данных, когда указываем типы полей. На этом этапе наименее мучительно использовать UML-схемы, например с помощью StarUML.
    • И последний, но циклический этап — нормализация данных. Выясням, какие данные избыточны и повторяются, и выносим их в отдельную таблицу. На этом этапе уже можно подключать PHPMyAdmin или схожую утилиту и создавать непосредственно таблицы на сервере.
    • Если перестарались — система может работать медленно, и можно кое-где сделать денормализацию. Тут уже помогут нагрузочное тестирование и опыт.
    • ???????
    • PROFIT

    Если предметная область (ваша задача) простые, некоторые шаги можно делать в уме.
    Такой подход был применён не раз вживую оказался полезным.
    Ответ написан
    4 комментария