2016-04-06 17 views
0

Makinemde bir sql sunucum var. 10 veri tabanı dosyası içeriyor. Tek veri tabanı vs SQL SERVER 2014'de çoklu veritabanı

  1. bir
  2. b

.... demek

  1. z
  2. yüzden benim sorum 10 veya daha fazla olan

veritabanı veya 1 tek veritabanı sql server için en iyisidir. Daha fazla veritabanı, tek sunucu makinesinde daha fazla performans sorununa neden olur mu? önerilen nedir?

+0

Verileri tek bir tabloda saklayın. Birden çok tablonuz varsa, bunları aynı veritabanına koyun. Veritabanları, büyük miktarda veriyi işlemek için tasarlanmıştır. –

+1

Anlaştık .BUT ürün sunucum 10 veritabanı dosyası içeriyor mu? Sql sunucusu herhangi bir soruna neden olur mu? veya 10 şema ile tek bir veritabanı sql sunucu ve performansı için en iyisidir? –

+0

Biraz daha bilgi verebilir misiniz? Bunlar ne tür veritabanlarıdır? Karmaşık/basit şemalar, aynı/farklı şema, boyut? Herhangi bir bağlam olmadan, performans senaryosunda spekülasyon yapmak zordur. Genellikle 10 veritabanına ihtiyacınız var ve eğer veritabanı ilişkisel şeması bir veri tabanının içinde bulunuyorsa ... –

cevap

0

Çoğunlukla Ortak konu performans sorunları için

nedenleri çeşitli olabilir yoksul veritabanı tasarımı için, ama en yaygın kötü tasarlanmış bir veritabanı, yanlış yapılandırılmış sistem, yetersiz disk alanı veya diğer sistem kaynakları, aşırı sorgu derleme olan Hatalı veya güncel olmayan istatistiklerden kaynaklanan hatalı yürütme planları, hatalı yürütme planları ve hatalı tasarım nedeniyle uzun yürütme süreleri olan sorgular veya saklı yordamlar Bellek darboğazlarına, SQL Server, sistem veya diğer uygulamaların neden olduğu kullanılabilir bellek ve bellek baskısı sınırlamaları neden olur aktivite. Kötü indeksleme, büyük tablolar durumunda, diskten çok sayıda satırın okunması ve bellekte işlenmesi anlamına gelir. Ağ darboğazları, bir sunucu veya ağ üzerindeki aşırı yüklenmelerden kaynaklanır, bu nedenle veriler beklendiği gibi akamaz. G/Ç sorunlar, kullanılan yavaş donanım, hatalı depolama çözümü tasarımı ve yapılandırmadan kaynaklanabilir. Disk türleri, disk dizisi türü ve G/Ç performansını etkileyen RAID yapılandırması gibi donanım bileşenlerinin yanı sıra, bir veritabanı tarafından yapılan gereksiz istekler de G/Ç trafiğini etkiler. Sık indeks taramaları, verimsiz sorguları ve tarih istatistiklerinin dışında da G/Ç iş yükünü neden ve darboğazları olabilir - daha fazla bakınız: http://www.sqlshack.com/dba-guide-sql-server-performance-troubleshooting-part-1-problems-performance-metrics/#sthash.QrzEyKbz.dpuf

Çoklu Veritabanı performansı için bir sorun değildir. Bu bağlantıları görebilirsiniz. . Onlar dış endeks ve arama süreleri için yararlı olabilir gibi

birden fazla veritabanı kullanarak

" yardımcı

gibi düşünün:

1

gibi Sen düşünebilir D: Ben performans ayarlama anlama konusunda size yardımcı olacağını düşünüyorum arama başladığında, veritabanı sunucunuz sorgunuzu alır ve ilk olarak tablonuza gider ve sorguyu bu tablo üzerinde yürütür ve bu da sorgulama için yardımcı olur, çünkü diğer tablolardaki veriler yalnızca tablo indeksine bakmaz. tablo tablosunda. :)

Aynı şekilde Farklı dbs sorgusu tabloları, tablo tablosundaki tablodaki tablo dizinine bakmaya başlar ve bu tablodaki tablo tablonuzun daha az zamanda tamamlanacağını gösteren daha az tablo olacaktır. :) "

Ama bu doğru değil! Milyonlarca tabloya sahip değilseniz, bu etkiyi etkilemeyecektir çünkü veri yapıları db'de çoğunlukla O (log (n)) veriyi kullanır ve eğer şu anlama gelir:) 1.000.000 girdide ulaşan 6 adımı tamamladıktan sonra 100.000, 5 adım ve 1000 alacak. 3. Görebildiğiniz gibi fark yaratmıyor.

Diğer yandan, 2 db'yi kullanmak, en az 2 bağlantı ve bağlantıların pahalı olması gerektiğini garanti eder ve bu nedenle bağlantı havuzlarının mevcut olmasının nedeni budur.