Nasıl MySQL indeksler çalışır?
Bize sonuçlar vermek için tüm tabloyu taramak değil MySQL indeksler nasıl çalıştığını gerçekten merak ediyorum? Konu dışı olduğunu biliyorum, ama eğer bana bu picturesquely izah edebilecek biri varsa çok müteşekkir olacaktır.
CEVAP
Temel olarak bir tablo üzerinde bir dizin bir Kitap (Adı buradan geliyor): bir dizin gibi çalışır
Hadi veritabanları hakkında bir kitap olduğunu varsayalım ve diyelim ki, depolama ile ilgili bazı bilgiler bulmak istiyorum. Olmadan bir dizin (varsayarak başka bir yardım gibi bir içindekiler tablosu) sen git sayfaları tek tek kadar bulduğun konu (full table scan
).
Öte yandan, dizin anahtar kelimelerin bir listesi vardır, dizin danışın ve storage
Sayfa 113-120,231 ve 354 açıklanan görürsün. Sonra aramadan bu sayfalara doğrudan, (bir dizin ile arama, biraz) daha hızlı değiştirirsin.
Dizin nasıl olacak tabii ki, pek çok şey - birkaç örnek üzerinde, yukarıdaki benzetme kullanarak bağlıdır:
- eğer veritabanları üzerinde bir kitap ve dizine kelime "sayfa 1-59, 61-290 ve 292 400. bahsi geçen" görürsün veritabanı olsaydı Böyle bir durumda, dizin çok yardımcı değildir ve daha hızlı sayfaları tek tek geçmek olabilir (örneğin, bir veritabanı, bu "zavallı seçicilik").
- Bir 10 sayfalık kitap, bu hiç mantıklı değil yapmak için bir dizin olarak Mayıs sonu ile 10 sayfa kitap öneki tarafından 5 sayfa indeks, sadece aptal - sadece tarama 10 sayfa ve bu son.
- Endeksi de faydalı olması gerekir - genellikle dizin işaret yok örneğin harf frekansı "L" sayfa başına.
JavaScript kilitler nasıl çalışır?...
CSS üçgenler nasıl çalışır?...
Veri bağlama Nasıl çalışır?AngularJS :...
Nasıl veritabanı indeksleme çalışır?...
Bit shift (bit-shift) operatörleri ned...