Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Подскажите по пункту 9 http://ibase.ru/devinfo/dontdoit.htm / 7 сообщений из 7, страница 1 из 1
25.06.2004, 13:18:37
    #32577366
Tonny
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите по пункту 9 http://ibase.ru/devinfo/dontdoit.htm
п. 9:
Не надо увлекаться ссылочной целостностью больше чем это требуется
Не рекомендуется делать FK от больших таблиц на короткие справочники, в которых никогда не выполняются update и delete. Рекомендуется замещать такие FK контролем на триггерах и явным запретом модификации справочника в его триггерах.
Кроме того, излишнее увлечение каскадным удалением, в совокупности с удалением через триггеры, может сильно запутать логику или привести к непредсказуемым удалениям или ошибкам нарушения целостности.

Вопрос: что значит: "короткий справочник",
на сколько процентов можно получить прирост скорости SELECT, если убрать ссылочную целостность из таблицы на 100 тыс записей?

спасибо за внимание.
...
Рейтинг: 0 / 0
25.06.2004, 13:22:06
    #32577379
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите по пункту 9 http://ibase.ru/devinfo/dontdoit.htm
Если у тебя таблица на 100 тыс, а справочник на единицы, то FK на такой справочник будет только тормозить. Не говоря уж о том, что restore такой таблицы будет достаточно продолжительным по времени.
...
Рейтинг: 0 / 0
25.06.2004, 13:28:14
    #32577399
Tonny
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите по пункту 9 http://ibase.ru/devinfo/dontdoit.htm
>Мимопроходящий
спасибо, у меня действительно справочник на 6 записей.
Ссылку убрал.
...
Рейтинг: 0 / 0
25.06.2004, 13:37:15
    #32577422
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите по пункту 9 http://ibase.ru/devinfo/dontdoit.htm
И индекс на такое поле в такой таблице тож не стОит делать.
...
Рейтинг: 0 / 0
25.06.2004, 13:47:22
    #32577451
Tonny
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите по пункту 9 http://ibase.ru/devinfo/dontdoit.htm
МимопроходящийИ индекс на такое поле в такой таблице тож не стОит делать.
индексы лишние влияют на скорость SELECT в отрицательную сторону?
если нет, а могут хоть чучуть ускорить его - то наверно лучше оставить?
жду Ваше мнение.
...
Рейтинг: 0 / 0
25.06.2004, 13:52:16
    #32577460
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите по пункту 9 http://ibase.ru/devinfo/dontdoit.htm
На 100тысячной таблице индекс по полю с 6 уникальными значениями будет работать как тормоз. Т.к. селективность такого индекса будет черезвычайно низкой.
По идее, оптимизатор даже не должен такой индекс подхватывать. Но на практике, обычно, бывают случаи, когда берёт и хватает, сгоряча. ;)
...
Рейтинг: 0 / 0
25.06.2004, 13:54:42
    #32577469
vis
vis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите по пункту 9 http://ibase.ru/devinfo/dontdoit.htm
Tonny>Мимопроходящий
спасибо, у меня действительно справочник на 6 записей.
Ссылку убрал.

в то же время если это 300 записей, то, имхо, справочник можно и
оставить
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Подскажите по пункту 9 http://ibase.ru/devinfo/dontdoit.htm / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]