Партиционирование позволяет разбить большие объёмы данных на меньшие, более управляемые части, для балансировки нагрузки на систему I/O.
Выигрыш получается за счёт того что при обращении к ограниченному деапазону данных, выборка осуществляется из необходимой партиции не затрагивая весь объём.
Некоторые примеры влияния партиционирования на планы выполнения запросов описаны тут. Нужно заметить что партиционирование в sql server 2005 несколько отличается от версии 2008 (Partitioned Tables in SQL Server 2008).
В многопроцессорной системе возможно одновременное обращение разных запросов к разным партициям. Некластерные индексы, аналогично данным, могут размещаться в разных партициях.
Кроме возможности построения более оптимальных и распараллелиных планов запросов, партиционирование дает удобный способ манипулирования большими количествами данных.
Манипуляции с партиционированными таблицами с примерами неплохо описаны в статье
http://www.databasejournal.com/features/mssql/article.php/3647561/Data-partitioning-in-SQL-Server-2005---Part-V.htm
некоторые тесты производительности
http://blogs.msdn.com/b/sqlcat/archive/2006/02/17/partition-elimination-in-sql-server-2005.aspx
Partitioning Query Performance Benefits
Описание сценариев в которых используется партиционироваие:
Scenarios for Partitioning
рассмотрены некоторые особенности
SQL Server Database Partitioning Myths and Truths
SQL Server Partitioning: Not the Best Practices for Everything
SQL Server partitioning: not the answer to everything
Partitioned Tables in SQL Server 2008
Упрощение обслуживания баз данных с помощью секционированных таблиц
SQL SERVER - 2005 - Database Table Partitioning Tutorial - How to Horizontal Partition Database Table
Scaling out with distributed partitioned views in SQL Server 2005
SQL Server 2005. Partitioned Tables and Indexes
Managing multiple partitions in multiple filegroups in SQL 2005 for cleanup purposes
Indexing for Partitioned Tables
Partition table Example
Partitioning – the old fashion way
http://novicksoftware.com/Presentations/sql-server-storage-partitioning-big-data/Big-data-managing-terabytes-with-sql-server.htm
http://novicksoftware.com/Presentations/sql-server-partitioning/Partitioning-Tables-Views-and-Indexed-Views.htm
http://msdn.microsoft.com/en-us/library/ms345146(SQL.90).aspx
http://www.simple-talk.com/sql/sql-tools/sql-server-partitioning-without-enterprise-edition/
http://sqlfascination.com/2010/01/05/is-dynamic-partitioning-in-sql-server-possible/
http://sqlfascination.com/2010/09/12/interval-partitioning-in-sql-server-2008/
http://vmdp.blogspot.com/2011/06/working-with-sql-table-partitions.html
http://blogs.technet.com/b/josebda/archive/2009/03/19/sql-server-2008-partitioning.aspx
http://pulse.sqlserverpedia.com/blog/partitioning-summary-sql-server-2005-vs-sql-server-2008/
http://yrushka.com/index.php/database-maintenance/sql-server-partitioning-for-large-production-tables/
Комментариев нет:
Отправить комментарий