Switch Database Index Yapıları
Daha önce bahsettiğimiz gibi Switch Database döküman tabanlı bir yapıya sahiptir. Bu yapı içerisinde daha hızlı cevap süreleri ve daha verimli filtreleme işlemleri yapabilmek için indekslere ihtiyaç duyulur.
Switch Database sezgisel indeksleme özelliği sayesinde veritabanınıza gelen her sorguyu analiz eder ve ihtiyaç fark ettiğinde gerekli indeksi otomatik olarak oluşturur. Hali hazırda var olan ve rebuild/reorganize işleminden geçmesi gereken bir indeks varsa bu indeks otomatik olarak işlemden geçer. Aynı field için birden fazla indeks olması durumunda sistem otomatik olarak en verimli indeksi kullanır. Switch Database ile kullanılan indeks tipleri şu şekildedir:
- Primary Index: Sistem tarafından otomatik oluşturulur. Silinemez ve değiştirilemez.
- Secondary Index: Kullanıcı tarafından oluşturulur. Id dışındaki fieldlarda kullanılabilir ve sadece 1 field içerebilir.
- Multi-key Index: Kullanıcı tarafından oluşturulur. Id’de dahil olmak üzere tüm fieldlarda kullanılabilir. En az 2 field içermesi gerekir.
- Text Index: Kullanıcı tarafından oluşturulur. Full Text Search için gerekli fieldlarda kullanılır. Dil (tr, en vb.) belirtmek zorunludur.
- Geo Index: Kullanıcı tarafından oluşturulur. GeoJSON için kullanılan koordinat ve poligon fieldlarında kullanılır.
Tüm indeks tiplerinde nesnelerin alt nesneleri field name olarak kullanılabilir (örneğin City.Name gibi).