Разделение никогда не является опцией для повышения производительности. Лучшее, на что вы можете надеяться, это иметь производительность на одном уровне с однораздельной таблицей. Обычно вы получаете регрессию, которая увеличивается с увеличением количества разделов. Для производительности вам нужны индексы, а не разделы. Разделы предназначены для операций управления данными: ETL, архивирование и т. Д. Некоторые утверждают, что устранение разделов является возможным приростом производительности, но для любого удаления разделение может дать размещение ключевого индексного ключа в том же столбце, что и столбец разделения, даст гораздо лучшие результаты. *
Будут ли запрошены все разделы?
Этот запрос нуждается в индексе State
. В противном случае выполняется сканирование таблицы, и выполняется сканирование всей таблицы. Сканирование таблицы по многораздельной таблице всегда медленнее, чем сканирование по однораздельной таблице того же размера. Сам индекс может быть выровнен по той же схеме разбиения, но ведущий ключ должен быть State
.
Будут ли все 8 процессоров использоваться для выполнения запроса?
Параллелизм не имеет ничего общего с разбиением, несмотря на распространенное заблуждение об обратном. Как при сканировании с разделами, так и без разделов можно использовать параллельный оператор, это будет решение оптимизатора запросов.
Будет ли производительность лучше, чем запросить таблицу, которая не
распределяли?
нет
Нет
Как поможет Индекс Разделения?
Индекс поможет. Если индекс должен быть выровнен, то он должен быть разделен на части. Однораздельный индекс будет быстрее секционированного, но требование выравнивания индекса для операций включения / выключения не может быть обойдено.
Если вы смотрите на разбиение, это должно быть потому, что вам нужно выполнить быстрые операции по переключению, чтобы удалить старые данные за период политики хранения или что-то подобное. Для производительности вам нужно смотреть на индексы, а не на разделы.