Ми обговорюємо, чи використовувати опцію SORT_IN_TEMPDB для наших таблиць DW. Я розумію, що при використанні цієї опції є більше записів, хоча вони більш послідовні. У нас є SAN (який часом відомий повільно), тому в нашому випадку ми хочемо максимально обмежити кількість записів. Я вважаю, що tempdb знаходиться на окремому LUN (наборі дисків).
У нашому файлі даних та у файлі tempdb у нас достатньо місця на диску. У цьому випадку ми отримаємо користь від використання SORT_IN_TEMPDB?
Що мене вразило - це коментар до цієї відповіді
Під час перебудови індексу вам потрібно буде вдвічі більше місця індексу + 20% для сортування. Тож загалом для відновлення кожного індексу у вашому ДБ вам потрібно лише 120% вашого найбільшого індексу у вашій БД. Якщо ви використовуєте SORT_IN_TEMPDB, ви набираєте лише 20%, у вашому файлі даних все одно потрібен додатковий 100%. Крім того, використання сортування в tempdb різко збільшує завантаження вводу-виводу, оскільки замість того, щоб індекс записати один раз у файл даних, ви одноразово записуєте його до tempdb, а потім записуєте його у файл даних. Тож це не завжди ідеально.
Ми, безумовно, не хочемо збільшувати навантаження на введення-виведення за допомогою повільного / можливо неправильно налаштованого SAN.
Який був би найкращий спосіб перевірити це? Просто відновивши таблицю з опцією та без неї та ввівши час?
Редагувати : У нас є 8 темпдб-файлів, по 15 Гб. У нас встановлені прапори TF 1117/1118 і IFI увімкнено. В даний час ми робимо суміш відновлення з параметром sort_in_tempdb і без нього.
Спасибі!
SQL Server 2012 Enterprise