This document provides an overview of indexing in SQL Server. It begins with the basics of index types including clustered, non-clustered, unique, included column and filtered indexes. It then discusses index design best practices for helping queries, joins and sort operations. Common index issues are also covered such as fragmentation, duplicate indexes, and having too many indexes. The document demonstrates index recommendations through examples and provides diagnostic tools for analyzing indexes.
Strategies for SQL Server Index AnalysisJason Strate
Properly managing indexes for a database is a common use in many environments. When reviewing an index, should it have a single or multiple columns? Should the table be a heap, a clustered index or clustered columnstore index? These considerations are often at the forefront when analyzing your indexes. In this session, we'll look at easy methods for identifying new indexes, we'll review patterns for index consolidation, and discuss how and when to remove indexes. At the end, you'll have a strategy that helps design indexes to improve performance.
5 interesting questions about collaborative learning answeredHarry van der Veen
Today, collaborative learning is a teaching method on the rise and it is known to have a wide variety of benefits for students.
Within this learning method, students are encouraged to work together and share knowledge on a given assignment. As a result of using the collaborative learning method in the classroom, students become more engaged and their confidence is improved.
In the following infographic we answer five interesting, frequently asked questions about collaborative learning.
Este documento presenta los estatutos de la Asociación Profesional de Instituciones de Menores de la Comunidad Valenciana. Los estatutos describen la finalidad y composición de la asociación, los derechos y deberes de los miembros, la organización y funcionamiento de la junta directiva y la asamblea general, el régimen económico, y las disposiciones para modificar los estatutos y disolver la asociación.
Snowflake Entertainment multitouch software for touchscreensHarry van der Veen
Snowflake Entertainment is a world of fun at your fingertips. Create emotional connections between users and your corporate identity. Highlight your brand with a wide range of entertaining and engaging interactive games. Attract people at events or exhibitions. This suite is also an optimal tool to use in public spaces, such as kids corners, keeping children happy and entertained while their parents shop.
If you have ever wondered what it takes to be a successful 21st-century teacher, you might have come to realize that it is easier said than done. While many tips are out there, the multitude of information can be overwhelming for a busy teacher.
The following infographic by NUITEQ®, illustrates 6 steps you should follow in order to succeed on your journey to become the best 21st-century teacher. Find out why change is essential, why developing a Professional Learning Network (PLN), will actually help you as a teacher or the benefits of integrating technology into your classroom.
Read the infographic below and learn about what works in education.
This document is a tribute to the author's father, Irving Schwartz, who passed away on December 20, 2012. It includes photos and descriptions of key moments from Irving's life, from his childhood in the 1940s to spending time with his family in his later years. The tribute honors Irving's passion for cowboy culture and reenacting, as well as his role as a loving father, grandfather, and husband.
This document describes an independent advertising agency called Concepto that was founded in 2002. It highlights that the agency's greatest asset is its creative and committed employees. The agency believes in the power of ideas and creativity to build brands and foster client relationships. Concepto partners with other professionals to deliver high-quality advertising services across various channels including print, audio/video production, PR, events, and more for clients in various industries. Examples of past client work are provided for brands like Henkel, Generali Insurance, and GlaxoSmithKline.
Firstaff Technology Ventures is a joint venture between Firstaff and Filtrex that provides turnkey solutions for waste handling and bio-energy sectors. It introduces technologies from Redwave and Steinmueller Babcock, including mechanical and biological waste treatment plants. The managing directors have decades of experience in professional services, recruitment, project management, and the waste and bio-energy sectors. Their solutions include mechanical treatment, mechanical-biological treatment, biodrying, and in-vessel composting plants.
Strategies for SQL Server Index AnalysisJason Strate
Properly managing indexes for a database is a common use in many environments. When reviewing an index, should it have a single or multiple columns? Should the table be a heap, a clustered index or clustered columnstore index? These considerations are often at the forefront when analyzing your indexes. In this session, we'll look at easy methods for identifying new indexes, we'll review patterns for index consolidation, and discuss how and when to remove indexes. At the end, you'll have a strategy that helps design indexes to improve performance.
5 interesting questions about collaborative learning answeredHarry van der Veen
Today, collaborative learning is a teaching method on the rise and it is known to have a wide variety of benefits for students.
Within this learning method, students are encouraged to work together and share knowledge on a given assignment. As a result of using the collaborative learning method in the classroom, students become more engaged and their confidence is improved.
In the following infographic we answer five interesting, frequently asked questions about collaborative learning.
Este documento presenta los estatutos de la Asociación Profesional de Instituciones de Menores de la Comunidad Valenciana. Los estatutos describen la finalidad y composición de la asociación, los derechos y deberes de los miembros, la organización y funcionamiento de la junta directiva y la asamblea general, el régimen económico, y las disposiciones para modificar los estatutos y disolver la asociación.
Snowflake Entertainment multitouch software for touchscreensHarry van der Veen
Snowflake Entertainment is a world of fun at your fingertips. Create emotional connections between users and your corporate identity. Highlight your brand with a wide range of entertaining and engaging interactive games. Attract people at events or exhibitions. This suite is also an optimal tool to use in public spaces, such as kids corners, keeping children happy and entertained while their parents shop.
If you have ever wondered what it takes to be a successful 21st-century teacher, you might have come to realize that it is easier said than done. While many tips are out there, the multitude of information can be overwhelming for a busy teacher.
The following infographic by NUITEQ®, illustrates 6 steps you should follow in order to succeed on your journey to become the best 21st-century teacher. Find out why change is essential, why developing a Professional Learning Network (PLN), will actually help you as a teacher or the benefits of integrating technology into your classroom.
Read the infographic below and learn about what works in education.
This document is a tribute to the author's father, Irving Schwartz, who passed away on December 20, 2012. It includes photos and descriptions of key moments from Irving's life, from his childhood in the 1940s to spending time with his family in his later years. The tribute honors Irving's passion for cowboy culture and reenacting, as well as his role as a loving father, grandfather, and husband.
This document describes an independent advertising agency called Concepto that was founded in 2002. It highlights that the agency's greatest asset is its creative and committed employees. The agency believes in the power of ideas and creativity to build brands and foster client relationships. Concepto partners with other professionals to deliver high-quality advertising services across various channels including print, audio/video production, PR, events, and more for clients in various industries. Examples of past client work are provided for brands like Henkel, Generali Insurance, and GlaxoSmithKline.
Firstaff Technology Ventures is a joint venture between Firstaff and Filtrex that provides turnkey solutions for waste handling and bio-energy sectors. It introduces technologies from Redwave and Steinmueller Babcock, including mechanical and biological waste treatment plants. The managing directors have decades of experience in professional services, recruitment, project management, and the waste and bio-energy sectors. Their solutions include mechanical treatment, mechanical-biological treatment, biodrying, and in-vessel composting plants.
This document provides an overview of Eisenmann AG's thermal disposal technologies for conventional ammunition and chemical warfare agents. It describes the full steel rotary kiln, brick lined rotary kiln, moving bed reactor, TURAKTOR® technology, shuttle/chamber kiln, and full steel rotary kiln technologies. Case studies and examples of facilities built in Germany, Ukraine, Russia, Albania, and Japan are presented to illustrate each technology. The document discusses the theoretical backgrounds and practical applications of each thermal disposal method.
Managing database project with Visual Studio SSDT and TFSHarry Zheng
This document summarizes a presentation on managing database projects with Visual Studio, SSDT and TFS. The presentation agenda includes: 1) Evolution of SSDT, 2) Creating a database project, 3) Building and deploying the project, 4) Checking the project into TFS, 5) Managing changes with SSDT and TFS, 6) Seeding reference data, and 7) Database unit testing and deployment packaging. The document provides details on these topics and examples of creating and working with a sample database project.
- In the past, classrooms relied heavily on textbooks and teacher-directed lectures, with limited educational technology. While computers and the internet were introduced, technology was not fully integrated.
- Today's 21st century classrooms focus on active, collaborative, and student-centric learning. Textbooks are being replaced by educational software and technology resources. Key components include supporting critical thinking, communication, collaboration and creativity.
- Modern classrooms utilize various technologies like laptops, tablets, and interactive whiteboards. Large multi-touch displays allow for hands-on interaction and collaborative work between students and teachers. This new technology aims to fully integrate instruction and prepare students for the future.
This slide is introduced What is index in database system .
It's very simple to let you understand what is index pros and cons.
there has chinese voice version youtube :)
https://www.youtube.com/watch?v=BOBZAMfQfrQ&feature=youtu.be
https://www.youtube.com/watch?v=hkl5CcmZ4OI&feature=youtu.be
The document discusses the history and development of chocolate over centuries. It details how chocolate originated from cacao beans used by the Olmecs and Mayans as currency and medicine. Later, the Aztecs and Europeans discovered chocolate and it became popularized as a drink among European nobility in the 16th century before mass production made it accessible to common people.
The document discusses the history and development of chocolate over centuries. It details how chocolate originated from cacao beans used by the Olmecs and Mayans as currency and medicine. Later, the Aztecs and Europeans discovered chocolate and it became popularized as a drink among European nobility in the 16th century before mass production made it accessible to common people.
The document describes a textbook on understanding mathematical proofs. It introduces the concept of proof and different proof techniques. The first chapter introduces reasoning in proofs and gives examples. The book then covers basic logic, sets, functions and different types of proofs like direct proofs, proofs by contradiction and mathematical induction. It aims to help readers understand proofs and construct their own proofs.
A Billion Goods in a Few Categories: When Optimizer Histograms Help and When ...Sveta Smirnova
Last year this session’s speaker worked on several cases where data followed the same pattern: millions of popular products fit into a couple of categories, and the rest uses the rest. Her team had a hard time finding a solution for retrieving goods quickly. MySQL 8.0 has a feature that resolves such issues: optimizer histograms, storing statistics of an exact number of values in each data bucket. In real life, histograms don’t help with all queries accessing nonuniform data. How you write a statement, the number of rows in the table, data distribution: All of these may affect the use of histograms. This presentation shows examples demonstrating how the optimizer works in each case, describes how to create histograms, and covers differences between MySQL and Oracle implementations.
Billion Goods in Few Categories: How Histograms Save a Life?Sveta Smirnova
We store data with an intention to use it: search, retrieve, group, sort... To do it effectively the MySQL Optimizer uses index statistics when compiles the query execution plan. This approach works excellently unless your data distribution is not even.
Last year I worked on several tickets where data follow the same pattern: millions of popular products fit into a couple of categories and rest used the rest. We had a hard time to find a solution for retrieving goods fast. We offered workarounds for version 5.7. However new MariaDB and MySQL 8.0 feature: histograms, - would work better, cleaner and faster. The idea of the talk was born.
Of course, histograms are not a panacea and do not help in all situations.
I will discuss:
how index statistics physically stored by the storage engine
which data exchanged with the Optimizer
why it is not enough to make correct index choice
when histograms can help and when they cannot
differences between MySQL and MariaDB histograms
The document describes Sterling DB, a lightweight NoSQL object-oriented database for .NET, Silverlight, and Windows Phone 7 applications. It provides concise summaries of Sterling DB's key features, which include recursively serializing complex object graphs, supporting LINQ queries, and allowing storage of objects using their existing class structures without requiring code modification. The document also provides an example of defining a recipe database and tables in Sterling DB.
How Clean is your Database? Data Scrubbing for all Skill SetsChad Petrovay
With staff working from home, many institutions are prioritizing data quality projects. Join Chad Petrovay, TMS Administrator at The Morgan Library & Museum, as he shares his deep knowledge of data scrubbing. Power users, system administrators, and SQL experts will learn how to correct and monitor data quality, and are introduced to new low-cost/free tools.
This document discusses understanding database indices. It covers index architecture including heaps, clustered, and nonclustered indexes. It discusses using SQL Server dynamic management objects to view index usage and missing indexes. The document outlines golden rules for optimal index design and the importance of index maintenance to prevent fragmentation. Regular index maintenance is recommended to minimize storage space usage and I/O.
Tips & Tricks SQL in the City Seattle 2014Ike Ellis
This document provides 25 tips for SQL Server performance tuning, SSIS, SSRS, SSAS and other Microsoft data tools. The tips cover topics like query shortcuts, code snippets, report formatting, finding hardware problems, windowing functions, TempDB configuration, dates tables, and more. The document is authored by Ike Ellis, an MVP, blogger and YouTube content creator focused on SQL Server and related Microsoft data tools.
Rails is a great Ruby-based framework for producing web sites quickly and effectively. Here are a bunch of tips and best practices aimed at the Ruby newbie.
Automated Slow Query Analysis: Dex the Index RobotMongoDB
This document discusses MongoDB indexing and the Dex automation tool. It provides an overview of MongoDB indexing fundamentals and best practices. It then introduces Dex, explaining that it analyzes query logs and profiles to recommend optimal indexes. The document demonstrates Dex's usage and capabilities, such as working with live query streams, filtering by namespace, and focusing on long-running queries. It outlines Dex's internal workings and future development plans.
Billion Goods in Few Categories: How Histograms Save a Life?Sveta Smirnova
We store data with an intention to use it: search, retrieve, group, sort... To do it effectively, the MySQL Optimizer uses index statistics when it compiles the query execution plan. This approach works excellently unless your data distribution is not even.
Last year I worked on several support tickets where data follows the same pattern: millions of popular products fit into a couple of categories and the rest used the rest. We had a hard time finding a solution for retrieving goods fast. We offered workarounds for version 5.7. However, a new MariaDB and MySQL 8.0 feature - histograms - would work better, cleaner and faster. The idea of the talk was born.
Of course, histograms are not a panacea and do not help in all situations.
I will discuss
- how index statistics physically stored by the storage engine
- which data exchanged with the Optimizer
- why it is not enough to make correct index choice
- when histograms can help and when they cannot
- differences between MySQL and MariaDB histograms
Talk for Percona Live 2019 Austin: https://www.percona.com/live/19/sessions/billion-goods-in-few-categories-how-histograms-save-a-life
This document provides an overview of a presentation on building better SQL Server databases. The presentation covers how SQL Server stores and retrieves data by looking under the hood at tables, data pages, and the process of requesting data. It then discusses best practices for database design such as using the right data types, avoiding page splits, and tips for writing efficient T-SQL code. The presentation aims to teach attendees how to design databases for optimal performance and scalability.
The document discusses various topics related to data modeling including:
1) It defines what a data warehouse is and describes its key characteristics like being subject-oriented, integrated, non-volatile and time-variant.
2) It discusses common data modeling techniques like the star schema and snowflake schema which involve fact tables and dimension tables.
3) It covers relational database concepts like the relational schema and compares relational databases to non-relational databases in terms of properties like ACID compliance.
4) It provides an example of modeling transactional data for a retail chain to understand customer behavior, including tables for sales facts, products, customers, employees and more.
The document discusses various topics related to data modeling including:
1) It defines what a data warehouse is and describes its key characteristics like being subject-oriented, integrated, non-volatile and time-variant.
2) It discusses common data modeling schemas like star schema and snowflake schema along with their structure involving fact and dimension tables.
3) It covers relational database concepts like ER diagrams, DDL, DML and compares relational and non-relational schemas in terms of properties like ACID and BASE.
4) It presents a sample problem statement of modeling data for a retail chain and shows the designed database schema involving tables like sales_fact, customer_info, product_info
The document discusses creating an optimal index, referred to as the "perfect index", for SQL queries. It defines an index and covers key topics like key columns versus included columns, indexing columns based on selectivity, and techniques for measuring index effectiveness. The presentation provides examples of indexing queries with different predicates and columns. The goal is to help choose an index that maximizes performance for a given query through interpreting its predicates and ordering key columns by selectivity.
This document provides 20 tips for SQL Server performance tuning, SSIS, SSRS, and other Microsoft data tools. The tips cover topics like using SSIS for accessibility, report formatting, hardware troubleshooting using PerfMon and tracing, readable presentations, indexing, windowing functions, scripting with PowerShell, TempDB configuration, prettifying SQL code, dates tables, enforcing business rules in the database, and logging. The document encourages staying involved with SQL Server user groups and provides contact information for the author.
This document provides an overview of Eisenmann AG's thermal disposal technologies for conventional ammunition and chemical warfare agents. It describes the full steel rotary kiln, brick lined rotary kiln, moving bed reactor, TURAKTOR® technology, shuttle/chamber kiln, and full steel rotary kiln technologies. Case studies and examples of facilities built in Germany, Ukraine, Russia, Albania, and Japan are presented to illustrate each technology. The document discusses the theoretical backgrounds and practical applications of each thermal disposal method.
Managing database project with Visual Studio SSDT and TFSHarry Zheng
This document summarizes a presentation on managing database projects with Visual Studio, SSDT and TFS. The presentation agenda includes: 1) Evolution of SSDT, 2) Creating a database project, 3) Building and deploying the project, 4) Checking the project into TFS, 5) Managing changes with SSDT and TFS, 6) Seeding reference data, and 7) Database unit testing and deployment packaging. The document provides details on these topics and examples of creating and working with a sample database project.
- In the past, classrooms relied heavily on textbooks and teacher-directed lectures, with limited educational technology. While computers and the internet were introduced, technology was not fully integrated.
- Today's 21st century classrooms focus on active, collaborative, and student-centric learning. Textbooks are being replaced by educational software and technology resources. Key components include supporting critical thinking, communication, collaboration and creativity.
- Modern classrooms utilize various technologies like laptops, tablets, and interactive whiteboards. Large multi-touch displays allow for hands-on interaction and collaborative work between students and teachers. This new technology aims to fully integrate instruction and prepare students for the future.
This slide is introduced What is index in database system .
It's very simple to let you understand what is index pros and cons.
there has chinese voice version youtube :)
https://www.youtube.com/watch?v=BOBZAMfQfrQ&feature=youtu.be
https://www.youtube.com/watch?v=hkl5CcmZ4OI&feature=youtu.be
The document discusses the history and development of chocolate over centuries. It details how chocolate originated from cacao beans used by the Olmecs and Mayans as currency and medicine. Later, the Aztecs and Europeans discovered chocolate and it became popularized as a drink among European nobility in the 16th century before mass production made it accessible to common people.
The document discusses the history and development of chocolate over centuries. It details how chocolate originated from cacao beans used by the Olmecs and Mayans as currency and medicine. Later, the Aztecs and Europeans discovered chocolate and it became popularized as a drink among European nobility in the 16th century before mass production made it accessible to common people.
The document describes a textbook on understanding mathematical proofs. It introduces the concept of proof and different proof techniques. The first chapter introduces reasoning in proofs and gives examples. The book then covers basic logic, sets, functions and different types of proofs like direct proofs, proofs by contradiction and mathematical induction. It aims to help readers understand proofs and construct their own proofs.
A Billion Goods in a Few Categories: When Optimizer Histograms Help and When ...Sveta Smirnova
Last year this session’s speaker worked on several cases where data followed the same pattern: millions of popular products fit into a couple of categories, and the rest uses the rest. Her team had a hard time finding a solution for retrieving goods quickly. MySQL 8.0 has a feature that resolves such issues: optimizer histograms, storing statistics of an exact number of values in each data bucket. In real life, histograms don’t help with all queries accessing nonuniform data. How you write a statement, the number of rows in the table, data distribution: All of these may affect the use of histograms. This presentation shows examples demonstrating how the optimizer works in each case, describes how to create histograms, and covers differences between MySQL and Oracle implementations.
Billion Goods in Few Categories: How Histograms Save a Life?Sveta Smirnova
We store data with an intention to use it: search, retrieve, group, sort... To do it effectively the MySQL Optimizer uses index statistics when compiles the query execution plan. This approach works excellently unless your data distribution is not even.
Last year I worked on several tickets where data follow the same pattern: millions of popular products fit into a couple of categories and rest used the rest. We had a hard time to find a solution for retrieving goods fast. We offered workarounds for version 5.7. However new MariaDB and MySQL 8.0 feature: histograms, - would work better, cleaner and faster. The idea of the talk was born.
Of course, histograms are not a panacea and do not help in all situations.
I will discuss:
how index statistics physically stored by the storage engine
which data exchanged with the Optimizer
why it is not enough to make correct index choice
when histograms can help and when they cannot
differences between MySQL and MariaDB histograms
The document describes Sterling DB, a lightweight NoSQL object-oriented database for .NET, Silverlight, and Windows Phone 7 applications. It provides concise summaries of Sterling DB's key features, which include recursively serializing complex object graphs, supporting LINQ queries, and allowing storage of objects using their existing class structures without requiring code modification. The document also provides an example of defining a recipe database and tables in Sterling DB.
How Clean is your Database? Data Scrubbing for all Skill SetsChad Petrovay
With staff working from home, many institutions are prioritizing data quality projects. Join Chad Petrovay, TMS Administrator at The Morgan Library & Museum, as he shares his deep knowledge of data scrubbing. Power users, system administrators, and SQL experts will learn how to correct and monitor data quality, and are introduced to new low-cost/free tools.
This document discusses understanding database indices. It covers index architecture including heaps, clustered, and nonclustered indexes. It discusses using SQL Server dynamic management objects to view index usage and missing indexes. The document outlines golden rules for optimal index design and the importance of index maintenance to prevent fragmentation. Regular index maintenance is recommended to minimize storage space usage and I/O.
Tips & Tricks SQL in the City Seattle 2014Ike Ellis
This document provides 25 tips for SQL Server performance tuning, SSIS, SSRS, SSAS and other Microsoft data tools. The tips cover topics like query shortcuts, code snippets, report formatting, finding hardware problems, windowing functions, TempDB configuration, dates tables, and more. The document is authored by Ike Ellis, an MVP, blogger and YouTube content creator focused on SQL Server and related Microsoft data tools.
Rails is a great Ruby-based framework for producing web sites quickly and effectively. Here are a bunch of tips and best practices aimed at the Ruby newbie.
Automated Slow Query Analysis: Dex the Index RobotMongoDB
This document discusses MongoDB indexing and the Dex automation tool. It provides an overview of MongoDB indexing fundamentals and best practices. It then introduces Dex, explaining that it analyzes query logs and profiles to recommend optimal indexes. The document demonstrates Dex's usage and capabilities, such as working with live query streams, filtering by namespace, and focusing on long-running queries. It outlines Dex's internal workings and future development plans.
Billion Goods in Few Categories: How Histograms Save a Life?Sveta Smirnova
We store data with an intention to use it: search, retrieve, group, sort... To do it effectively, the MySQL Optimizer uses index statistics when it compiles the query execution plan. This approach works excellently unless your data distribution is not even.
Last year I worked on several support tickets where data follows the same pattern: millions of popular products fit into a couple of categories and the rest used the rest. We had a hard time finding a solution for retrieving goods fast. We offered workarounds for version 5.7. However, a new MariaDB and MySQL 8.0 feature - histograms - would work better, cleaner and faster. The idea of the talk was born.
Of course, histograms are not a panacea and do not help in all situations.
I will discuss
- how index statistics physically stored by the storage engine
- which data exchanged with the Optimizer
- why it is not enough to make correct index choice
- when histograms can help and when they cannot
- differences between MySQL and MariaDB histograms
Talk for Percona Live 2019 Austin: https://www.percona.com/live/19/sessions/billion-goods-in-few-categories-how-histograms-save-a-life
This document provides an overview of a presentation on building better SQL Server databases. The presentation covers how SQL Server stores and retrieves data by looking under the hood at tables, data pages, and the process of requesting data. It then discusses best practices for database design such as using the right data types, avoiding page splits, and tips for writing efficient T-SQL code. The presentation aims to teach attendees how to design databases for optimal performance and scalability.
The document discusses various topics related to data modeling including:
1) It defines what a data warehouse is and describes its key characteristics like being subject-oriented, integrated, non-volatile and time-variant.
2) It discusses common data modeling techniques like the star schema and snowflake schema which involve fact tables and dimension tables.
3) It covers relational database concepts like the relational schema and compares relational databases to non-relational databases in terms of properties like ACID compliance.
4) It provides an example of modeling transactional data for a retail chain to understand customer behavior, including tables for sales facts, products, customers, employees and more.
The document discusses various topics related to data modeling including:
1) It defines what a data warehouse is and describes its key characteristics like being subject-oriented, integrated, non-volatile and time-variant.
2) It discusses common data modeling schemas like star schema and snowflake schema along with their structure involving fact and dimension tables.
3) It covers relational database concepts like ER diagrams, DDL, DML and compares relational and non-relational schemas in terms of properties like ACID and BASE.
4) It presents a sample problem statement of modeling data for a retail chain and shows the designed database schema involving tables like sales_fact, customer_info, product_info
The document discusses creating an optimal index, referred to as the "perfect index", for SQL queries. It defines an index and covers key topics like key columns versus included columns, indexing columns based on selectivity, and techniques for measuring index effectiveness. The presentation provides examples of indexing queries with different predicates and columns. The goal is to help choose an index that maximizes performance for a given query through interpreting its predicates and ordering key columns by selectivity.
This document provides 20 tips for SQL Server performance tuning, SSIS, SSRS, and other Microsoft data tools. The tips cover topics like using SSIS for accessibility, report formatting, hardware troubleshooting using PerfMon and tracing, readable presentations, indexing, windowing functions, scripting with PowerShell, TempDB configuration, prettifying SQL code, dates tables, enforcing business rules in the database, and logging. The document encourages staying involved with SQL Server user groups and provides contact information for the author.
Geek Sync I Consolidating Indexes in SQL ServerIDERA Software
You can watch the replay for this Geek Sync webcast in the IDERA Resource Center: http://ow.ly/OzvF50A5r07
Watch this Geek Sync with special guest Microsoft Certified Master Kendra Little to learn why duplicate indexes can be a big problem for your performance and maintenance. Kendra will show you three different index consolidation scenarios, and how you can measure the pros and cons of different consolidation options.
This document provides 20 tips for SQL Server performance tuning and administration from MVP Ike Ellis. The tips cover topics such as SSIS, SSAS, SSRS, query performance, indexing, partitioning, hardware troubleshooting, scripting, auditing, and more. Ellis advocates spending time on report formatting, using window functions, scripting with PowerShell, enforcing business rules in the database, and logging activities for auditing purposes. He provides various resources and links for further information.
Jonathan is a MySQL consultant who specializes in SQL, indexing, and reporting for big data. This tutorial will cover strategies for resolving 80% of performance problems, including indexes, partitioning, intensive table optimization, and finding and addressing bottlenecks. The strategies discussed will be common, established approaches based on the presenter's experience working with MySQL since 2007.
Database continuous integration, unit test and functional testHarry Zheng
Discuss continuous integration for database projects, including building project, deploying project to database, and executing unit tests and functional tests.
This presentation will also discuss database test standards, tips and tricks.
Similar to Index the obvious and not so obvious (20)
WWDC 2024 Keynote Review: For CocoaCoders AustinPatrick Weigel
Overview of WWDC 2024 Keynote Address.
Covers: Apple Intelligence, iOS18, macOS Sequoia, iPadOS, watchOS, visionOS, and Apple TV+.
Understandable dialogue on Apple TV+
On-device app controlling AI.
Access to ChatGPT with a guest appearance by Chief Data Thief Sam Altman!
App Locking! iPhone Mirroring! And a Calculator!!
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemPeter Muessig
Learn about the latest innovations in and around OpenUI5/SAPUI5: UI5 Tooling, UI5 linter, UI5 Web Components, Web Components Integration, UI5 2.x, UI5 GenAI.
Recording:
https://www.youtube.com/live/MSdGLG2zLy8?si=INxBHTqkwHhxV5Ta&t=0
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j
Dr. Jesús Barrasa, Head of Solutions Architecture for EMEA, Neo4j
Découvrez les dernières innovations de Neo4j, et notamment les dernières intégrations cloud et les améliorations produits qui font de Neo4j un choix essentiel pour les développeurs qui créent des applications avec des données interconnectées et de l’IA générative.
Unveiling the Advantages of Agile Software Development.pdfbrainerhub1
Learn about Agile Software Development's advantages. Simplify your workflow to spur quicker innovation. Jump right in! We have also discussed the advantages.
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
Using Query Store in Azure PostgreSQL to Understand Query PerformanceGrant Fritchey
Microsoft has added an excellent new extension in PostgreSQL on their Azure Platform. This session, presented at Posette 2024, covers what Query Store is and the types of information you can get out of it.
Flutter is a popular open source, cross-platform framework developed by Google. In this webinar we'll explore Flutter and its architecture, delve into the Flutter Embedder and Flutter’s Dart language, discover how to leverage Flutter for embedded device development, learn about Automotive Grade Linux (AGL) and its consortium and understand the rationale behind AGL's choice of Flutter for next-gen IVI systems. Don’t miss this opportunity to discover whether Flutter is right for your project.
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesQuickdice ERP
Explore the seamless transition to e-invoicing with this comprehensive guide tailored for Saudi Arabian businesses. Navigate the process effortlessly with step-by-step instructions designed to streamline implementation and enhance efficiency.
Do you want Software for your Business? Visit Deuglo
Deuglo has top Software Developers in India. They are experts in software development and help design and create custom Software solutions.
Deuglo follows seven steps methods for delivering their services to their customers. They called it the Software development life cycle process (SDLC).
Requirement — Collecting the Requirements is the first Phase in the SSLC process.
Feasibility Study — after completing the requirement process they move to the design phase.
Design — in this phase, they start designing the software.
Coding — when designing is completed, the developers start coding for the software.
Testing — in this phase when the coding of the software is done the testing team will start testing.
Installation — after completion of testing, the application opens to the live server and launches!
Maintenance — after completing the software development, customers start using the software.
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeAftab Hussain
Understanding variable roles in code has been found to be helpful by students
in learning programming -- could variable roles help deep neural models in
performing coding tasks? We do an exploratory study.
- These are slides of the talk given at InteNSE'23: The 1st International Workshop on Interpretability and Robustness in Neural Software Engineering, co-located with the 45th International Conference on Software Engineering, ICSE 2023, Melbourne Australia
Most important New features of Oracle 23c for DBAs and Developers. You can get more idea from my youtube channel video from https://youtu.be/XvL5WtaC20A
Zoom is a comprehensive platform designed to connect individuals and teams efficiently. With its user-friendly interface and powerful features, Zoom has become a go-to solution for virtual communication and collaboration. It offers a range of tools, including virtual meetings, team chat, VoIP phone systems, online whiteboards, and AI companions, to streamline workflows and enhance productivity.
Microservice Teams - How the cloud changes the way we workSven Peters
A lot of technical challenges and complexity come with building a cloud-native and distributed architecture. The way we develop backend software has fundamentally changed in the last ten years. Managing a microservices architecture demands a lot of us to ensure observability and operational resiliency. But did you also change the way you run your development teams?
Sven will talk about Atlassian’s journey from a monolith to a multi-tenanted architecture and how it affected the way the engineering teams work. You will learn how we shifted to service ownership, moved to more autonomous teams (and its challenges), and established platform and enablement teams.
2. About myself:
• Seasoned data architect/DBA with 15 years of SQL Server experience
• Independent consultant, currently Technical Delivery Manager at
Government of Alberta
• Microsoft Certified System Engineer: MCSE
• Oracle Certified Professional: Oracle DBA
• IBM Certified Solution Expert: DB2 UDB
http://netdbsolutions.com
https://twitter.com/HarryZheng
http://ca.linkedin.com/in/harryzheng
https://www.facebook.com/Harry.H.Zheng
2
3. Session agenda
1. SQL Server index basics
2. Index Design
3. Common index issues
3
4. SQL Server index basics
Why do we need index?
• Reduce rows selected in a query as early as possible
• Help join
• Support sort
4
5. SQL Server index basics
Index Type:
• Clustered index
• Non-clustered index
• Unique
• Index with included columns
• Filtered index
Not covered in this session
• Columnstore
• Spatial index
• XML index
• Full-text index
5
7. SQL Server index basics
Get Index Information
• exec sp_helpindex
• select * from sys.indexes
• select * from sys.index_columns
7
8. SQL Server index basics
Index Statistics Info
• DBCC SHOW_STATISTICS ('demo.person', 'IX_Person_BusinessIdentityID');
8
9. SQL Server index basics
Index Statistics Info
• The statistics allow the optimizer to determine the selectivity of an
index
• A unique, single-column index always has a selectivity of 1
• One index entry points to exactly one row
• Density is the inverse of selectivity
• Density values range from 0 to 1
• A selective index has a density of 0.10 or less
• A unique, single-column index always has a density of 0.0
• When the index is composite
• SQL Server maintains detailed statistics only on the leftmost column
• It does compute density for each column
• Assume there is an index on (col1, col2, col3)
• Density is computed for
• Col1
• Col1 + Col2
• Col1 + Col2 + Col3
9
10. SQL Server index basics
Clustered index:
• Leaf level is the actual data page
• Non-leaf levels contains the index key columns
• Clustered index scan = table scan on Heap
1
0
11. SQL Server index basics
Clustered index - Primary key:
• Alter table Demo.Person add constraint PK_Person primary key
(BusinessEntityID);
1
1
12. SQL Server index basics
Non-clustered index:
• Leaf level contains the key and include columns
• Non-leaf levels contains the index key columns
1
2
13. SQL Server index basics
Unique index:
• Create unique index IX_Person_BusinessIdentityID on
demo.Person(BusinessEntityID);
• Is clustered index always unique?
1
3
14. SQL Server index basics
Index with included columns - Covering index:
Create index IX_Person_LastName_FirstName
on demo.Person ( LastName,FirstName)
include (ModifiedDate);
Covered query:
select FirstName, LastName, ModifiedDate
from Demo.Person
where LastName = 'Miller'
and FirstName = 'Dylan'
1
4
15. SQL Server index basics
Filtered index:
Create index IX_Person_persontype
on demo.Person ( persontype)
where persontype = 'EM';
Covered query:
select * from Demo.Person
where persontype = 'EM'
1
5
16. Index Design
General design rule:
• Clustered index:
• Narrow
• Unique
• Static
• Ever-increasing
• Non-clustered index:
• Wider often more useful than narrow
• Decided by the queries that are run against the table
1
6
17. Index Design
Help Where clause:
• Queries can seek on index Where the columns in the Where clause
are a left based subset of the index key
• Columns used in equality predicates before inequality
1
7
18. Index Design
Help Where clause:
Case 1:
Select * from Demo.Person
Where FirstName = 'Dylan'
and LastName = 'Miller'
How to index?
1
8
19. Index Design
Help Where clause:
Case 1:
Select * from Demo.Person
Where FirstName = 'Dylan'
and LastName = 'Miller'
How to index?
Create index IX_Person_FirstName_LastName
on Demo.Person
( FirstName, LastName);
1
9
20. Index Design
Help Where clause:
Case 2 Session 1:
Select * from Demo.Person
Where FirstName = 'Dylan'
and LastName = 'Miller'
Case 2 Session 2:
Select * from Demo.Person
Where LastName = 'Miller'
How to index?
2
0
21. Index Design
Help Where clause:
Case 2 Session 1:
Select * from Demo.Person
Where FirstName = 'Dylan'
and LastName = 'Miller'
Case 2 Session 2:
Select * from Demo.Person
Where LastName = 'Miller'
How to index?
Create index IX_Person_LastName_FirstName
on demo.Person ( LastName, FirstName);
2
1
22. Index Design
Help Where clause:
Session 3:
Select * from Demo.Person
Where LastName = 'Miller'
and ModifiedDate > '2006-09-01‘
How to index?
2
2
23. Index Design
Help Where clause:
Session 3:
Select * from Demo.Person
Where LastName = 'Miller'
and ModifiedDate > '2006-09-01‘
How to index?
Create index IX_Person_LastName_ModifiedDate
on demo.Person ( LastName, ModifiedDate);
2
3
24. Index Design
Help Where clause:
Case 4:
Select * from Demo.Person
Where LastName = 'Miller'
and FirstName > 'Dylan'
and ModifiedDate > '2006-09-01‘
How to index?
2
4
25. Index Design
Help Where clause:
Case 4:
Select * from Demo.Person
Where LastName = 'Miller'
and FirstName > 'Dylan'
and ModifiedDate > '2006-09-01‘
How to index?
Create index IX_Person_LastName_FirstName_ModifiedDate
on demo.Person ( LastName,FirstName, ModifiedDate);
Create index IX_Person_LastName_ModifiedDate_FirstName
on demo.Person ( LastName, ModifiedDate,FirstName);
2
5
26. Index Design
Help Where clause:
Case 5:
Select * from Demo.Person
Where LastName = 'Miller'
Or FirstName = 'Dylan‘
How to index?
2
6
27. Index Design
Help Where clause:
Case 5:
Select * from Demo.Person
Where LastName = 'Miller'
Or FirstName = 'Dylan‘
How to index?
Create index IX_Person_FirstName on demo.Person ( FirstName);
Create index IX_Person_LastName on demo.Person ( LastName);
2
7
28. Index Design
Help join:
Case 6:
Select A.AddressLine1,A.City, SP.Name as StateProvince
From Demo.Address A
Inner Join Demo.StateProvince SP
on SP.StateProvinceID = A.StateProvinceID
How to index?
2
8
29. Index Design
Help join:
Case 6:
Select A.AddressLine1,A.City, SP.Name as StateProvince
From Demo.Address A
Inner Join Demo.StateProvince SP
on SP.StateProvinceID = A.StateProvinceID
How to index?
Create index IX_Address_StateProvinceID
on demo.Address ( StateProvinceID);
2
9
30. Index Design
Help Where clause:
Case 7:
Select A.AddressLine1,A.City, SP.Name as StateProvince
From Demo.Address A
Inner Join Demo.StateProvince SP
on SP.StateProvinceID = A.StateProvinceID
Where A.City = 'Bothell‘
How to index?
3
0
31. Index Design
Help Where clause:
Case 7:
Select A.AddressLine1,A.City, SP.Name as StateProvince
From Demo.Address A
Inner Join Demo.StateProvince SP
on SP.StateProvinceID = A.StateProvinceID
Where A.City = 'Bothell‘
How to index?
Create index IX_Address_City_StateProvinceID
on demo.Address ( City, StateProvinceID);
3
1
32. Index Design
Help order by clause:
Case 8:
Select * from Demo.Person
Where LastName = 'Miller'
Order by FirstName
How to index?
3
2
33. Index Design
Help Order by clause:
Case 8:
Select * from Demo.Person
Where LastName = 'Miller'
Order by FirstName
How to index?
Create index IX_Person_LastName_FirstName
on Demo.Person ( LastName, FirstName);
3
3
34. Index Design
Help Order by clause:
Case 9:
Select FirstName, LastName, ModifiedDate from Demo.Person
Where LastName = 'Miller'
and ModifiedDate > '2006-09-01'
Order by FirstName
How to index?
3
4
35. Index Design
Help Order by clause:
Case 9:
Select FirstName, LastName, ModifiedDate from Demo.Person
Where LastName = 'Miller'
and ModifiedDate > '2006-09-01'
Order by FirstName
How to index?
1.Create index IX_Person_LastName_ModifiedDate on demo.Person (
LastName, ModifiedDate);
2.Create index IX_Person_LastName_ModifiedDate_FirstName on
demo.Person ( LastName, ModifiedDate,FirstName);
3.Create index IX_Person_LastName_ModifiedDate on demo.Person (
LastName, ModifiedDate) include (FirstName);
3
5
36. Common index issues
Drawbacks of index:
• Slow down DML
• Disk Space
• Fragmentation – page split – low page density
3
6
37. Common index issues
Index Fragmentation:
• DBCC SHOWCONTIG
DBCC SHOWCONTIG scanning 'Person' table...
Table: 'Person' (615673241); index ID: 2, database ID: 17
LEAF level scan performed.
- Pages Scanned................................: 25
- Extents Scanned..............................: 5
- Extent Switches..............................: 4
- Avg. Pages per Extent........................: 5.0
- Scan Density [Best Count:Actual Count].......: 80.00% [4:5]
- Logical Scan Fragmentation ..................: 12.00%
- Extent Scan Fragmentation ...................: 20.00%
- Avg. Bytes Free per Page.....................: 107.2
- Avg. Page Density (full).....................: 98.68%
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
Defrag:
• DBCC DBREINDEX
• DBCC INDEXDEFRAG
3
7
38. Common index issues
Misconception:
• Index is wonderful, create index to cover every query
• How about create a separate index for each commonly
used columns?
38
39. Common index issues
Disorder:
1. Duplicate indexes
• Will SQL Server use both indexes?
2. Index Hoarder
• Lots of Non-Clustered indexes on a single table
• >5% of Non-Clustered indexes unused
• Non-Clustered indexes with 0 reads
• Indexes with 7 or more columns
• Clustered indexes with > 1 column
39
40. Common index issues
Disorder:
3. Feature Phobia
• Included columns SQL 2005+
• Filtered indexes – SQL 2008+ Enterprise Edition
4. Self-Loathing indexes
• Low fill factor, disabled indexes
5. Index-A-Phobia
• Afraid to add index
4
0
41. Common index issues
Diagnostics Tools:
• sp_BlitzIndex
• http://www.brentozar.com/blitzindex/
41
42. Common index issues
Don’t:
• Don’t index for the sake of indexing
• Don’t create duplicated indexes
• Don’t create very wide indexes
• Don’t just trust SSMS suggestion
Discussion:
• Should we always create indexes for FK columns?
4
2
43. Common index issues
DMVs for Index Tune
• sys.dm_db_index_usage_stats
• sys.dm_db_index_operational_stats
• sys.dm_db_index_physical_stats
• sys.dm_db_missing_index_groups
• sys.dm_db_missing_index_details
• sys.dm_db_missing_index_group_stats
• sys.dm_db_missing_index_columns
4
3
44. Reference
PASS Summit 2012 Sessions:
• What, Where, Why and How of Indexes (DBA-210)
• Index Psychiatry Diagnose and Treat the Top 5 Disorders (AD-204)
• http://sqlinthewild.co.za/index.php/2010/09/14/one-wide-index-or-multiple-narrow-indexes/
• http://www.sqlservercentral.com/articles/Indexing/68439/
4
4