100 likes | 185 Views
Filtered Indexes. Filtered Index and Statistics. Sergio Govoni segovoni@gmail.com. Speaker. Dal 1999 mi occupo di progettazione, analisi e sviluppo di un ERP multi-aziendale client/server in ambiente Win32 Team leader Product manager MCP, MCTS, MVP SQL Server
E N D
Filtered Indexes Filtered Index and Statistics Sergio Govoni segovoni@gmail.com
Speaker Dal 1999 mi occupo di progettazione, analisi e sviluppo di un ERP multi-aziendale client/server in ambiente Win32 • Team leader • Product manager MCP, MCTS, MVP SQL Server • Lavoro con SQL Server dallaversione 7.0 Speaker, Editor, Publisher @ UGISS • www.ugiss.org • Blog: http://community.ugiss.org/blogs/sgovoni Sergio Govoni UGISS - User Group Italiano SQL Server
Agenda • FilteredIndexes and Statistics • Overview • Differenze nella struttura B-Tree per: • Non FilteredIndex • FilteredIndex • FilteredStatistics • DEMO: Quando utilizzare un FilteredIndex e come può migliorare le performance delle query UGISS - User Group Italiano SQL Server
Overview • Con SQL Server 2008 fanno il loro debutto gli indici e le statistiche filtrare • Sono le strutture che conosciamo già a cui però viene applicato un criterio di filtro: • CREATE INDEX…WHERE(<filter_predicate>) • CREATE STATISTICS…WHERE(<filter_predicate>) • QueryOptimizer sceglierà di utilizzare un indice filtrato quando i criteri nella clausola WHERE, dell’indice e della query, sono simili UGISS - User Group Italiano SQL Server
Non FilteredIndex Prev | NextIndex rows Prev | Next3-4 ; A-Z Prev | Next1-2 ; A-Z Prev | Next … Data rows Prev | Next … Data rows Prev | Next 4 CHM Prev | Next 4 PTXY Un indice standard definito su due colonne, contiene, nel livello foglia, la combinazione dei valori delle due colonne UGISS - User Group Italiano SQL Server
FilteredIndex Prev | NextA-Z Prev | Next… Prev | Next CHM Prev | Next PTXY Applicando la clausola WHERE nel comando CREATE INDEX, le righe che non soddisfano la condizione verranno ignorate, già nella fase di costruzione dell’indice UGISS - User Group Italiano SQL Server
FilteredStatistics • Sono statistiche ottimizzate, vengono create automaticamente per i FilteredIndex • Consentono di migliorare la qualità del piano di esecuzione per le query: • Che utilizzano un indice filtrato • Su subset di dati nelle colonne non indicizzate • Che eseguono la selezione da una colonna non indicizzata che contiene un subset di dati correlati a valori di un'altra colonna UGISS - User Group Italiano SQL Server
Whenuseit and benefit FilteredIndex UGISS - User Group Italiano SQL Server
FilteredIndexes Filtered Index • http://www.ugiss.org/Content/Article/Filtered-Indexes.aspx Informazioni sul prodotto SQL Server • http://www.microsoft.com/italy/sql • http://www.microsoft.com/sql Supporto sviluppo e professionisti IT • http://msdn.microsoft.com/sql Comunità SQL Server • http://www.ugiss.org • http://community.ugiss.org Newsgroups pubblici via WEB • http://www.microsoft.com/italy/communities/newsgroups/default.mspx • http://www.microsoft.com/technet/community/newsgroups/server/sql.mspx Formazione e mentoring • http://www.microsoft.com/italy/traincert • http://www.solidqualitylearning.com/ Risorse Generiche UGISS - User Group Italiano SQL Server
Filtered Indexes Grazie!