Web/SaaS modeli aracılığıyla satılacak özel bir CRM çözümü geliştiriyorum. Bu çözümü kullanarak onlarca veya yüzlerce müşteriyi bekliyorum. MS SQL'i db motoru olarak kullanacağım.Birden Çok DB'ye Karşı Birden Çok Bileşen
Seçenek 1 tek bir DB'ye sahip olmak ve tablolarda bir TenantId sütununu, uygun bir dizini ve her db erişiminde 'where tenantId = {...}' değerini kullanın.
Seçenek 2, her istemci için ayrı bir DB'ye sahip olmaktır; bu, TenantId ve gerekliliklerin gerekliliğinden kaçınır.
Her müşterinin milyonlarca değil, yüz binlerce kayda sahip olacağını tahmin ediyorum.
Gördüğüm gibi, hangisini seçtiğimi seçtiğim toplam veri sayfası sayısı olacaktır. Karar, SQL'in birden çok DB'yi yönetmede daha iyi olup olmadığı veya Tenantıd ve endeksle tek bir DB olup olmadığına odaklanmıştır. Başlangıçta çözüm, tek bir DB sunucusunda çalışacak, ancak sonunda SAN'a geçecek.
Bu konuda herhangi bir görüşü var mı?
Hangi yöntemle gittiğiniz ve neden gittiniz? –