Aracılığıyla paylaş


Dağıtılmış tasarlama görünümler bölümlenmiş...

Veritabanı sunucularının bir Federasyonu uygulamak için dağıtılmış bölümlendirilmiş görünümlerde kümesi tasarlarken aşağıdakileri göz önünde bulundurun:

  • Uygulama tarafından çalıştırılan SQL deyimleri desenini belirlemek.

  • Tablolar birbirleriyle nasıl ilişkili olduğunu belirlemek.

  • SQL deyimleri ile yabancı anahtarları çözümlemesi tarafından tanımlanan bölümleri karşı sıklığını Bul.

  • SQL deyim yönlendirme kuralları tanımlayın.

Uygulama tarafından yürütülen SQL deyimleri deseni

Normal işlem dönemlerde uygulama tarafından yürütülen SQL deyimlerini listesi geliştirin.Kategorileri DELETE bölmek SELECT, UPDATE, INSERT, liste ve liste, her kategoride yürütmenin frekansını tarafından sipariş.SQL deyimi, saklı yordamlar başvurursanız, temel bir SELECT, INSERT, UPDATE kullanın ve deyimi, saklı yordam DELETE.Varolan bir bölümleme SQL Server kullanabileceğiniz veritabanı, SQL Server Profiler Bu tür bir listesini edinmek için .

Öneriyi sıklığını SQL deyimleri kullanmak için makul bir yaklaşık normal çevrimiçi işlem (OLTP) işleniyor ise veya bölümlendirilmiş görünümlerde iş Web sitesi veritabanında, dağıtılmış, en iyi.Bu sistem verilerinin bir karar destek veya OLAP, sistem sorgu türleri karşılaştırıldığında görece küçük tutarları almak, tek tek SQL deyimlerini sağlayarak ayırdedilir.Her bir SQL deyimi küçük miktarda veri başvurduğunda, yalnızca her deyim sıklığını studying sistemde veri trafiğinin makul bir yaklaşık üretir.Ancak, çoğu sistemde çok fazla veri başvuran SQL deyimleri bazı grup vardır.Bu sorgular, büyük veri gereksinimlerini yansıtacak biçimde ağırlığı, ek bir adım almak isteyebilirsiniz.

Tablo ilişkileri

Amacıyla aynı boyut, örneğin, parça numarasını veya departman numarası bölümlenmiş bir tablo kümesini bulmak için böylece tüm satırlar için tek tek ilgili bu boyut tekrarlarını aynı üye sunucuda sona ereceği.Örneğin, bir yolu, veritabanınızın bölümlemek için bölge bazında olduğunu belirlemek.Bunu desteklemek için , bir bölge numarası, anahtar olmayan bile tabloların bir bölgeye ilgili bazı şekilde bölümlenmesi olmalıdır.Bu tür bir veritabanında bile Müşteri tablo numara bölge sütunu yok, bu bölgeler tüm durumları veya il, koleksiyon olarak tanımlanmışsaCustomer.StateProvince sütun müşteriler için bölge ilgili biçimde bölümlemek için kullanılabilir.

Tablolar arasındaki ilişkileri tanımlarlar açık ve kapalı yabancı anahtarların bölüm veri yolları için arama'yı gözden geçirmek için birinci öğeleri olduklarından.Nasıl sorgularda sık sık satır birinde kullanırsınız belirlemek için açık yabancı anahtar tanımları incelemek tablo satırları başka bir programda bulmak için tablo.Ayrıca, örtülü yabancı anahtarlar veya yol var olsa bile hiçbir özel yabancı anahtar tanımı SQL deyimlerini bir tablonun satırlarındaki değerlerini başvuru satırlara birleştirmek işlemlerini, başka bir tablodan kullanmanız çalışın.veritabanı şeması bir parçası olarak örtülü yabancı anahtarları açık olarak tanımlanmaz çünkü anahtar olmayan sütunları kullanarak tabloları birleştirmek deyimleri olup olmadığını anlamak için uygulama tarafından üretilen SQL deyimlerini incelemeniz gerekir.Bu örtülü yabancı anahtarları birleştirmek performansı artırmak için genelde dizinlenmiştir.Bu nedenle, veritabanında tanımlanan dizinleri da gözden geçirmelidir.

SQL deyimleri bölümleri karşı sıklığı

SQL deyimleri ile yabancı anahtarları çözümlemesi tarafından tanımlanan bölümleri karşı sıklığını Bul.SQL deyimlerini karışımını uygulamanızda en iyi destekleyeceği bölümleme seçin.Bazı tablolar kümesini birden fazla şekilde bölümlenmiş, SQL deyimlerini sıklığını, hangi bölümlerinin SQL deyimlerini en fazla sayıda karşılayan belirlemek için kullanın.En sık SQL deyimleri tarafından başvurulan tablolar ilk bölümü için istediğiniz olanlardır.Tabloları başvurulan sıklığını temel tablo bölüm sırası öncelik.

Desenini SQL deyimlerini, tablo bölümlenmesi mi üzerinde karar de etkiler:

  • Bir tabloyu bir tabloya başvuran ifadeleri yüzde 5'inden daha INSERT, UDATE veya DELETE deyimleri ve tablo, seçtiğiniz boyut bölümlenmesi disk bölümü.

  • Küçüktür, her bir üye sunucuda s tablo tam kopyalarını korumak başvuran ekstrelerinin yüzde 5 tablo INSERT, UPDATE veya DELETE deyimleri olur.Güncelleştirmelerin nasıl yapılacağını de tanımlamanız gerekir böylece tüm kopyalarını tablo güncelleştirilir.Yüksek bir işlem bütünlük gerekiyorsa, dağıtılmış bir işlem bağlamında tüm kopyaları dağıtılmış güncelleştirmelerinin Tetikleyicileri kodu.Yüksek bir işlem bütünlük gereksiniminiz varsa, aşağıdakilerden birini kullanabileceğiniz SQL Server bir kopyasını güncelleştirmelerden yaymak için çoğaltma mekanizması tablo diğer tüm kopyalar için.

  • Değil bölümlemek veya bir tabloyu bir tabloya başvuran ifadeleri yüzde 5'inden daha UDATE, INSERT olan veya ifadeleri DELETE ve tablo, seçtiğiniz boyut bölümlenmiş kopyalayın.

SQL deyim yönlendirme kuralları

Yönlendirme kuralları hangi üye sunucu, her bir SQL deyim en verimli şekilde işleyebilecek tanımlamak olması gerekir.Bunlar giriş kullanıcının bağlamında toplu deyim tamamlamak için gereken veri içeren bir üye sunucu arasında bir eşitleme ilişkisi oluşturmanız gerekir.Uygulamaları, kullanıcı tarafından girilen verilerin parçası olması ve hangi üye sunucu, SQL deyim işlem belirlemek için yönlendirme kuralları karşı eşleşen çalıştırabilmesi gerekir.