Sobes.tech
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);