Middle
Hangi tür indeksler vardır?
sobes.tech yapay zeka
AI'dan gelen yanıt
İndeks türleri, genellikle veritabanlarında kullanım bağlamına bağlıdır.
Depolama yapısına göre:
- B-ağacı (B-Tree): En yaygın türdür, verilerin sıralı depolanması ve aralıkların hızlı aranması için kullanılır.
- B+ ağacı (B+ Tree): B-ağacının bir varyantıdır, tüm veriler yaprak düğümlerde saklanır, bu da ardışık okuma işlemlerini optimize eder.
- Hash İndeksi: Hash tablolarına dayanır, kesin eşleşmelerin aranması için etkilidir, ancak aralık veya sıralama için uygun değildir.
- R-ağacı (R-Tree): Çok boyutlu verilerin indekslenmesinde kullanılır, örneğin coğrafi koordinatlar.
Amaçlara göre:
- Birincil Anahtar İndeksi: Otomatik olarak birincil anahtar için oluşturulur, benzersizliği sağlar ve kaydın tanımlayıcısıdır.
- İkincil İndeks: Bir veya birkaç sütun üzerinde oluşturulur, sorguları hızlandırmak için, birincil anahtar olmayanlar.
- Benzersiz İndeks: İndekslenen sütundaki (veya sütun kombinasyonundaki) değerlerin benzersizliğini garanti eder.
- Tam Metin İndeksi: Sütunlar içindeki metin aramaları için kullanılır.
- Uzamsal İndeks: Uzamsal verilerin indekslenmesi için kullanılır.
Oluşturma yöntemine göre:
- Kümelenmiş İndeks: Verilerin fiziksel sırasını belirler. Bir tabloda yalnızca bir kümelenmiş indeks olabilir.
- Kümelenmemiş İndeks: Gerçek verilere işaretçiler saklar, veriler başka bir sırada olabilir.
SQL'de indeks oluşturma örneği:
-- Normal indeks oluşturma
CREATE INDEX idx_lastname ON Employees (LastName);
-- Benzersiz indeks oluşturma
CREATE UNIQUE INDEX idx_employeeid ON Employees (EmployeeID);
-- Bileşik indeks oluşturma
CREATE INDEX idx_name_city ON Customers (FirstName, City);