Моя текущая база данных - SQL Server 2008 и будет обновляться до SQL Server 2014. Я не могу подтвердить, поддерживает ли SQL Server 2014 хэш-разделы. У меня есть одна таблица, которая имеет около 29M записей. Эта таблица растет очень быстро. В прошлом году он удваивается каждые 3-4 месяца. Я хотел бы горизонтально разделить мою таблицу на основе идентификатора клиента. Я ищу в Интернете и не могу подтвердить, что они его поддерживают.Поддерживает ли SQL Server хэш-разбиение?
ответ
Не напрямую, но вы можете «подделать». В частности, если вы придумали собственную функцию хэширования (например, ClientID по модулю «желаемое количество разделов»), вы можете использовать это как свой ключ секционирования (или его часть).
Нет, SQL Server не поддерживает хэш-разбиение. Как говорит Бен, вы можете катиться самостоятельно, используя функцию хэширования и постоянный вычисленный столбец. Сценарий только, когда это рекомендуется, - это когда конфликты защелки на последней странице замедляются вставками, а в другой раз. Прочтите Hash Partitioning, SQL Server, and Scaling Writes для более подробной информации.
Этот стол растет очень быстро. В прошлом году он удваивается каждые 3-4 месяца.
Итак, что же это нужно делать с хэш-разметки, или с любой секционирования? Разделение не дает никаких преимуществ в производительности, целью управления хранилища данных. Для получения доступа к большим наборам данных рассмотрите индексы. Для аналитических рабочих нагрузок используйте колонки. Для общих проблем производительности читайте How to analyse SQL Server performance.
Kendra Little имеет достойный товар How To Decide if You Should Use Table Partitioning.
В чем заключается ваше утверждение, что это не так? –
- 1. Поддерживает ли XAMPP SQL Server?
- 2. Поддерживает ли SQL Server ОТКЛЮЧЕНИЕ FROM FROM?
- 3. Поддерживает ли поддерживающие скобки SQL Server Compact?
- 4. Поддерживает ли SQL Server многогрупповую кластеризацию?
- 5. Поддерживает ли MVC6 Sql Server Dependency Cache
- 6. Поддерживает ли SQL Server специальные символы?
- 7. Поддерживает ли SQL Server округление или усечение?
- 8. Поддерживает ли Sql Server CE многопоточность?
- 9. Поддерживает ли репликация SQL Server этот сценарий?
- 10. Поддерживает ли SQL Server 2005 datetime2
- 11. Поддерживает ли SQL Server 2012 аутентификацию Kerberos?
- 12. Поддерживает ли SQL Server нотацию BNF?
- 13. Поддерживает ли MvcSiteMapProvider состояние сеанса Sql Server?
- 14. Поддерживает ли log4net AdoNetAppender SQL Server 2008?
- 15. Как SQL Server поддерживает соединения?
- 16. Какая версия SQL Server CE поддерживает SQL Server 2014?
- 17. Поддерживает ли SQL Server 2000 определенный пользователем тип таблицы?
- 18. Поддерживает ли SQL Server предложение Oracle, подобное WITH?
- 19. Поддерживает ли родной клиент Microsoft SQL Server IDBAsynchNotify?
- 20. Поддерживает ли SubSonic 3.0 SimpleRepository SQL Server Compact Edition?
- 21. Поддерживает ли SQL Server 2008 Standard Edition вложенную транзакцию?
- 22. Поддерживает ли SQL Server 2k5 блокировку подсказок по связанным серверам?
- 23. Поддерживает ли SQL Server 2008 синтаксис CREATE ASSERTION?
- 24. Поддерживает ли SQL Server 2008 уровень таблицы только для чтения?
- 25. Поддерживает ли SQL Server 2012 Enterprise Core версию Management Studio?
- 26. Поддерживает ли SQL Server 2014 такие функции, как ISNOTNULL()?
- 27. Поддерживает ли SQL Server Compact Edition хранимые процедуры?
- 28. Поддерживает ли SQL Server 2016 Express всегда шифрование?
- 29. Поддерживает ли SSD постоянное хранилище производительность MS SQL Server FILESTREAM?
- 30. Поддерживает ли драйвер SQL Server JDBC асинхронные операции?
Вы также должны использовать постоянный вычисленный столбец как значение хэша. –
Да; Я не был ясно, что результат хеширования должен храниться как столбец в таблице (будь то через вычисляемый столбец или менее экзотический метод «вычислять и обновлять»). –