Verilerin dağılımına bağlıdır.
1000 sayfalık bir kitabım olduğunu ve kitabımdaki tek sözcüklerin defalarca tekrarlanan ve rastgele dağıtılmış "evet" ve "hayır" olduğunu hayal edin. Tüm "evet" örneklerini daire içine almam istenirse, kitabın arkasındaki dizin yardımcı olur mu? Değişir.
Y'ların ve hayırların yarım buçuk rastgele dağılımı olsaydı, dizine bakmak yardımcı olmazdı. Dizin kitabı çok daha büyük hale getirebilirdi ve yine de önden başlamak ve her bir maddeye bakmak yerine tüm 'evet' örneklerini aramak ve bunları daire içine almak yerine her sayfada kendi yolumla ilerlemek daha hızlı olurdum. indeks ve ardından referansın indeks girişinden ilgili sayfaya alınması.
Ancak, diyelim ki, bin sayfalık kitabımda sadece on 'evet' örneği olsaydı ve diğer her şey yalnızca milyonlarca hayır ise, o zaman bir dizin, bu on 'evet' örneğini bulmak ve bunları daire içine almak konusunda bana çok zaman kazandırırdı. .
Veritabanlarında da durum aynı. 50:50 dağıtım ise, o zaman bir dizin yardımcı olmayacaktır - veritabanı motorunun verileri baştan sona taraması daha iyidir (tam tablo taraması) ve dizin, veritabanını yalnızca daha büyük hale getirir ve yazmak ve güncellemek daha yavaş. Ancak, 4000: 1 dağılım gibi bir şeyse (bu konudaki oucil başına ), aradığınız 4000 öğede 1 ise, bir dizin araması onu büyük ölçüde hızlandırabilir.