Sorun veritabanları çok sahip?

5 Cevap php

Biz böyle her müşteri ayrı bir veritabanına bağlı bir şekilde geliştirilen, barındırılan bir web uygulaması inşa etmişlerdir. Bu uygulama bir web plattform / yayınlama sistemidir, ve bu tasarım ile şimdiye kadar çok iyi çalışıyor. Biz de bir ana veritabanı var.

Şimdi ücretsiz hesaplar tanıtmak istiyorum fiyatlandırma modelinde bazı değişiklikler yapmak üzeresiniz. Bu (umarım) daha hesaplarının çok oluşturmak gerekir.

Is there a problem having a lot of databases, say many thousands (şu anda yaklaşık yirmi)? Ayrılık, ölçeklenebilirlik, kolay (çok ölçeklenebilirlik parçası) müşteriye özel veri ayıklamak güvenlik, vb: avantajları çok var

5 Cevap

Ben hiç zor "delil" olarak orada destek olsa bile, aklın ve ölçeklenebilirlik barış argümanları anlayabiliyorum. Tablo değişiklikleri gibi bakım görevleri kolayca otomatik olabilir. Veritabanı hataları veya break-ins bir müşteriye yer olacağını ve farklı bir sunucuya bir veritabanı hareketli bir esinti yapılabilir.

Diğer taraftan, modelin eleştiriler sahip bir nokta bulunabilir.

Neden sadece bunu denemiyorsunuz? Lütfen veritabanını 10.000 kez çoğaltmak, ayrı bir kimlik sistemini kurmak ve havai ve performans hala ok olup olmadığını görmek

Ben görebiliyorum İki sorun:

Bakım - bu veritabanı binlerce varsa veritabanında (değişim tablo yapısı, SP'ler, vb değiştirmek) değişiklik yapmak için bir ağrı olacak. Emin komut değişiklikleri olabilir ama birçok veritabanları şey için çok daha fazla şansı yanlış gitmek olduğunu. Script yarıya aracılığıyla başarısız olur ve değişiklikler var, bazı veritabanları ile bırakılırsa ne yapacaksın ve bazı değil mi? Ayrıca, başka bir afiş belirtildiği gibi, ne gibi bağlantı dizeleri, giriş / şifreleri, gibi şeyler bakımı hakkında?

Kaynaklar - Ben birçok veritabanları o çalışan bazı havai olmak için orada var olan bir veritabanı kullanan hangi kaynakları her örneği ama emin değilim. Birkaç makineleri üzerine bölerseniz tekrar yukarıdaki Bakım sorun haline çalıştırmak.

Ben gelecekte Tamiratlarda veritabanları yüzlerce, binlerce olmasa ile yapmak çok çok zor olacak içinde, TLiebe katılıyorum.

Daha iyi bir çözüm amacı ile veritabanları bölümleme yerine, kullanıcı tarafından tarafından olabilir. Sen mantıksal bölümleri gibi .. vb profili, içeriği, siteyi, ve sonra belirli bir sayıya her bölüm kullanıcıların sayısını sınırlamak olabilir. Kullanıcıların tükendi kadar sonra profile1, PROFILE2 ile ileri gitmek istiyorum. Eğer veri olurdu bu şekilde farklı makinelerin bir dizi yayılmış, ama hala onları fonksiyonu ile ilgili var.

MySpace şimdiye kadar oldukça başarılı gibi görünüyor kendi veritabanı kurulumu için bu kavramı kullandı. Yaklaşık Madde MySpace's Architecture .

İyi şanslar ve bu yardımcı olur umarım.

Ben tasarım bir sorun olduğunu düşünüyorum. Bunun yerine bir veritabanındaki tabloların bir dizi olan, Neden müşteri başına bir veritabanı kullanıyorsunuz? Bildiğim kadarıyla ben çok veritabanlarını .. + Bağlantı dizeleri + ayrı kimlik bilgileri kullanarak büyük bir yükü görebilirsiniz hakkında size belirtilen avantajlara sahip bakın.

Belirtildiği gibi, (güvenlik dahil) veritabanı bakım (veritabanı sunucusu nasıl bağlıdır) komut dosyası olabilir.

Sen aslında çok bu senaryo ile ölçeklenebilirlik kazanmak. Nedeni yük çok büyük olduğunda, başka bir sunucu eklemek ve yeni sunucuya veritabanları bir kısmını hareket olabilir. Uygulamayı yeniden tasarlamak gerek yok.