При этом всегда полезно помнить золотое правило механики - выигрыш в работе - проигрыш в пути. Выгрыш в выборке - проигрыш во вставке. Просто писать запросы - тяжело поддерживать целостность данных. Как в жини в общем.Дима писал(а):На компромиссы с принципами нормализации стоит ходить только в случае значительного выигрыша во времени на часто выполняемых запросах. Хранение промежуточных итогов - один из таких компромиссов в data warehouse, например.
Задачка на проектирование БД с интересным ответом
Правила форума
Пожалуйста, ознакомьтесь с правилами данного форума
Пожалуйста, ознакомьтесь с правилами данного форума
-
- Маньяк
- Сообщения: 2841
- Зарегистрирован: 20 фев 2003, 09:15
- Откуда: Vancouver
-
- Пользователь
- Сообщения: 110
- Зарегистрирован: 20 фев 2003, 07:17
- Откуда: оттуда
-
- Маньяк
- Сообщения: 2803
- Зарегистрирован: 29 май 2003, 22:29
- Откуда: Магадан - Миссиссага
Это очень сильное высказывание...Дима писал(а):Реализация зависит от конкретной БД; в частности, какие-то об'екты можно хранить во VIEW.
Если всё же ... если следовать общей дискуссии, то поскольку речь идет, возможно, о больших объёмах своеобразных логов ???, то я бы свёл к минимуму число ограничений (фореин киз + с ними) и индексов. Может быть и не делал академически нормализованную базу, поскольку здесь на определённом этапе (при большом размере базы) встанут вопросы скорости вставки, удаления.
- Дима
- Маньяк
- Сообщения: 1455
- Зарегистрирован: 15 авг 2006, 10:21
- Откуда: Минск->Vancouver->Victoria
- Дима
- Маньяк
- Сообщения: 1455
- Зарегистрирован: 15 авг 2006, 10:21
- Откуда: Минск->Vancouver->Victoria
Ну почему же.. Вполне себе представляю таблицу "Владелец процесса" и парочку VIEW "владелец процесса - группа"+"владелец процесса - пользователь", если операции добавления в таблицу владельцев нечасты, а запросы специфичны. Слово "объекты" было неудачным, это да.vg писал(а):Это очень сильное высказывание...Дима писал(а):Реализация зависит от конкретной БД; в частности, какие-то об'екты можно хранить во VIEW.
А вот как тебе такой вариант: таблица Владельцев процессов с набором всех полей для юзеров и групп, а из нее 2 VIEW - собственно юзеры и группы..