Я использую SQL Server 2005. У меня есть простая таблица журналов, которую мое веб-приложение использует для отслеживания действий пользователей и посещенных URL-адресов.
Конструкция стола очень проста
ID (идентификационное значение),
LogDate (datetime),
Активность (nvarchar (200)),
Url (nvarchar (1000))
Мы в основном делаем вставки в эту таблицу.
Время от времени мы выполняем некоторые запросы к этой таблице, если мы хотим исследовать действия конкретного пользователя за определенный период времени.
В настоящее время таблица имеет столбец идентификаторов в качестве первичного ключа. Это также его кластерный индекс.
Мне интересно, лучше ли мне изменить его кластерный индекс на столбец LogDate.
Столбец LogDate хранит дату / время действия и может иметь дубликаты, но поскольку мы всегда вставляем в таблицу, новые записи должны всегда находиться в конце таблицы, поэтому для SQL Server нет причин для реорганизации. или делить страницы, которые могут повлиять на производительность вставки. Наличие столбца LogDate в качестве кластеризованного индекса также должно повысить производительность поиска.
Пожалуйста, дайте мне знать, если мои рассуждения верны. Спасибо!