SQL server db design - ключ раздела - PullRequest
       4

SQL server db design - ключ раздела

0 голосов
/ 02 августа 2020

Какой вариант лучше?

  1. Оба столбца в качестве первичного ключа (с кластеризованным индексом):

column_id, partition_key_id

или

column_id (некластеризованный индекс первичного ключа), partition_key_id (кластеризованный индекс)

Спасибо за ответы

1 Ответ

0 голосов
/ 03 августа 2020

Для производительности правильный ответ: «Это зависит от ваших запросов»

Ниже 10 лучших практических советов, которые могут вам помочь:

  1. Только раздел, в котором ясны цели / преимущества
  2. Выберите подходящий столбец раздела, используемый в большинстве запросов
  3. Всегда оставляйте пустой раздел в начале / конце диапазонов (или предварительно задавайте его размер!)
  4. Остерегайтесь воздействия на PK, Великобритания и FK для столбца разделов
  5. Использовать разные FG для разных разделов (для резервного копирования / восстановления)
  6. Сохранять регулярно соединяемые таблицы в одном диапазоне разделов и FG
  7. Не разделять раздел функция / схема между объектами (влияние SPLIT)
  8. Если используется SWITCH (для загрузки / архива), тогда разделение выравнивает все индексы
  9. Восстанавливает только фрагментированные разделы, а не полный индекс
  10. Используйте MAXDOP, SORT_IN_TEMPDB, ONLINE как можно больше

Что касается операции, вы получаете разные уникальные ключи.

В первом примере уникальность находится в столбце _id, partition_key_id.

Во втором примере уникальность только для column_id.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...