Whitepaper: Cardinality is Not for the Birds by Joe Celko
Cardinality has nothing to do with song birds or Catholic church officials. It is a term from set theory that deals with the size of a set. Originally, Georg Cantor invented the term so that he could talk about infinite sets like integers, real numbers, irrationals, power sets and so forth.
Yes, some infinite sets are “bigger” than others, but you do not want to say that because (1) it just sounds strange to non-mathematicians (2) Mathematicians might work with infinities, but database guys do not. Big data is not that big.
In this whitepaper, you will learn:
What is data cardinality and how does it affect the way query plans are generated and query performance in particular
How cardinality adjustments over time affect index usage and hence SQL performance
How to minimize the effects of cardinality adjustments over time to ensure continuing good DBMS performance
How column cardinality affects the choice of column order in a multi-column index in order to optimize SQL performance
Why isn’t the index suddenly being used anymore? Pssst….it’s all in the data cardinality
Methods to create efficient SQL queries in low cardinality environments
About the Author:
Joe Celko serves as member of Technical Advisory Board of Cogito, Inc. Joe joined the ANSI X3H2 Database Standards Committee in 1987 and helped write the ANSI/ISO SQL-89 and SQL-92 standards. He is one of the top SQL experts in the world, writing over 700 articles primarily on SQL and database topics in the computer trade and academic press. The author of six books on databases and SQL, Joe also contributes his time as a speaker and instructor at universities, trade conferences and local user groups.