В таблице есть синтетический ключ уникальный для каждой строки, еще в таблице есть три поля которые составляют уникальную комбинацию - натуральный ключ. Два из трех полей натурального ключа это год и месяц и взаимодействие в 99.9999% происходит со строками за текущий месяц, а предыдущие уходят в прошлое, но остаются в этой таблице для «истории». Мне кажется что для целей быстродействия было бы целесообразным сделать первичным ключом натуральный ключ (три поля) что бы кластерное расположение строк нейтрализовало расходы на поиск строк за текущий месяц среди гигантского множества всех строк включая старые за прошедшие месяцы (так ли?). Но. В свою очередь тройной ключ накладывает свои расходы на быстродействие т.к. 1) увеличивается трафик и 2) клиентское ПО должно хранить весь тройной ключ в памяти и каждая GUI таблица должна содержать невидимые колонки с этим большим ключом, это не удобно программировать, но именно первичный ключ необходим для возможности позиционированного обновления (positioned update) т.е. обновления через рекордсет. Господа опытные администраторы БД, взываю к вашему опыту и прошу подсказать какой из этих ключей больше подойдет под первичный, синтетический в одно поле, или составной в три поля. И еще, действительно ли кластеризация по месяцам ускорит поиск по сравнению с кластеризацией по синтетическому AUTO_INCREMENT ключу?
Ответ на:
комментарий
от quest
Ответ на:
комментарий
от quest
Ответ на:
комментарий
от normann
Ответ на:
комментарий
от BaBL
Ответ на:
комментарий
от BaBL
Ответ на:
комментарий
от BaBL
Ответ на:
комментарий
от deep-purple
Ответ на:
комментарий
от pi11
Ответ на:
комментарий
от deep-purple
Ответ на:
комментарий
от pi11
Ответ на:
комментарий
от ism
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Индекс первичного ключа в MySQL некластеризованный, возможно ли? (2016)
- Форум Ключи MySQL (2015)
- Форум уникальный ключ для двух таблиц в MySQL? (2006)
- Форум Шифрование таблиц MySQL (2017)
- Форум [MySQL] починить таблицы (2010)
- Форум Синхронизация таблиц MySQL (2011)
- Форум Синхронизация таблиц MySQL (2011)
- Форум Восстановление таблицы mysql (2008)
- Форум MySQL, большая таблица (2007)
- Форум mysql изменение таблиц (2007)