Azure SQL Veritabanı ile ölçek genişletme

ŞUNUN İÇİN GEÇERLİDİR: Azure SQL Database

Uygulama araçlarını kullanarak veritabanlarının ölçeğini Azure SQL Veritabanı kolayca Esnek Veritabanı edinebilirsiniz. Bu araçlar ve özellikler, özellikle Hizmet olarak Yazılım (SaaS) Azure SQL Veritabanı iş yükleri için çözümler oluşturmak üzere Azure SQL Veritabanı'nin veritabanı kaynaklarını kullanmanızı sağlar. Esnek Veritabanı özellikler şunlardan oluşur:

  • Esnek Veritabanı kitaplığı:İstemci kitaplığı, parçalı veritabanları oluşturmanızı ve korumanızı sağlayan bir özelliktir. Bkz. Kullanmaya başlayın araçlarıyla Esnek Veritabanı.
  • Esnek Veritabanı-birleştirme aracı:verileri parçalı veritabanları arasında taşır. Bu araç, verileri çok kiracılı bir veritabanından tek kiracılı bir veritabanına (veya tam tersi) taşımada kullanışlıdır. Bkz. Elastik veritabanı Split-Merge öğreticisi.
  • Esnek Veritabanı işleri (önizleme): İşlerde çok sayıda veritabanını yönetmek için işleri Azure SQL Veritabanı. İşleri kullanarak şema değişiklikleri, kimlik bilgileri yönetimi, başvuru verisi güncelleştirmeleri, performans verileri toplama veya kiracı (müşteri) telemetri toplama gibi yönetim işlemlerini kolayca gerçekleştirin.
  • Esnek Veritabanı sorgu (önizleme): Birden çok veritabanına yayılan bir Transact-SQL sorgusu çalıştırmanızı sağlar. Bu, Excel, Power BI, Tableau gibi raporlama araçlarına bağlantı sağlar.
  • Elastik işlemler:Bu özellik, birkaç veritabanına yayılan işlemleri çalıştırmanızı sağlar. Esnek veritabanı işlemleri, ADO .NET kullanan .NET uygulamaları için kullanılabilir ve System.Transaction sınıflarını kullanarak tanıdık programlama deneyimiyle tümleştirin.

Aşağıdaki grafikte veritabanı koleksiyonuyla ilgili Esnek Veritabanı özellikleri içeren bir mimari yer almaktadır.

Bu grafikte veritabanının renkleri şemaları temsil ediyor. Aynı renge sahip veritabanları aynı şemayı paylaşır.

  1. Parçalama mimarisi kullanılarak Azure'da bir dizi SQL veritabanı barındırıldı.
  2. Bir Esnek Veritabanı kümesi yönetmek için istemci kitaplığı kullanılır.
  3. Veritabanlarının bir alt kümesi bir elastik havuza yer almaktadır. (Bkz. Havuz nedir?).
  4. Bir Esnek Veritabanı tüm veritabanlarında zamanlanmış veya geçici T-SQL betikleri çalıştırır.
  5. Verileri bir parçadan diğerine taşımak için bölme-birleştirme aracı kullanılır.
  6. Bu Esnek Veritabanı, parça kümesinde yer alan tüm veritabanlarına yayılan bir sorgu yazmanızı sağlar.
  7. Elastik işlemler, birden fazla veritabanına yayılan işlemleri çalıştırmanızı sağlar.

Elastik Veritabanı araçları

Araçları neden kullanasınız?

Bulut uygulamaları için esneklik ve ölçek elde etmek, VM'ler ve blob depolama için basit bir işlemdir; birim ekleme veya çıkarma ya da gücü artırma. Ancak ilişkisel veritabanlarında durum bilgisi olan verileri işleme konusunda zorlukla karşı karşıya kaldı. Bu senaryolarda ortaya çıkan zorluklar:

  • İş yüküzün ilişkisel veritabanı bölümü için kapasiteyi büyütme ve küçültme.
  • Meşgul bir son müşteri (kiracı) gibi belirli bir veri alt kümesini etkileyen etkin noktaları yönetme.

Bunlar gibi senaryolar, uygulamayı desteklemek için daha büyük ölçekli sunuculara yatırımlar tarafından ele alınıyor. Ancak bu seçenek, tüm işlemlerin önceden tanımlanmış ticari donanımlarda olduğu bulutta sınırlıdır. Bunun yerine, verileri ve işlemeyi aynı şekilde yapılandırılmış birçok veritabanına ("parçalama" olarak bilinen bir ölçek dışarı ölçeklendirme düzeni) dağıtmak, hem maliyet hem de esneklik açısından geleneksel ölçek yukarıya yönelik yaklaşımlara alternatif sağlar.

Yatay ve dikey ölçeklendirme

Aşağıdaki şekilde, elastik veritabanlarının ölçeklendirilemenin temel yolları olan yatay ve dikey ölçeklendirme boyutları yer amektedir.

Yatay ve dikey ölçeğin ölçeğini ölçeklendirme

Yatay ölçeklendirme, kapasiteyi veya genel performansı ayarlamak için "ölçeği genişletme" olarak da adlandırılan veritabanlarını ekleme veya kaldırmayı ifade eder. Verilerin aynı yapılandırılmış veritabanları koleksiyonunda bölümlenmiş olduğu parçalama, yatay ölçeklendirmenin yaygın bir yoludur.

Dikey ölçeklendirme, "ölçeği artırma" olarak da bilinen tek bir veritabanının işlem boyutunu artırmayı veya azaltmayı ifade eder.

Çoğu bulut ölçeğinde veritabanı uygulaması bu iki stratejinin bir birleşimini kullanır. Örneğin, bir Hizmet Olarak Yazılım uygulaması, yeni son müşteriler sağlamak için yatay ölçeklendirme ve her son müşterinin veritabanının iş yükü tarafından gerektiğinde kaynakları büyüterek veya küçültmesine olanak sağlamak için dikey ölçeklendirme kullanabilir.

  • Yatay ölçeklendirme, Esnek Veritabanı kitaplığı kullanılarak yönetilir.
  • Dikey ölçeklendirme, hizmet katmanını Azure PowerShell cmdlet'ler kullanılarak veya veritabanlarını elastik havuza yerleştirerek işler.

Parçalama

Parçalama, çok sayıda bağımsız veritabanı arasında büyük miktarlarda aynı şekilde yapılandırılmış verileri dağıtmaya yardımcı olan bir tekniktir. Özellikle bulut geliştiricilerinin son müşteriler veya işletmeler için Hizmet Olarak Yazılım (SAAS) teklifleri oluşturması ile popülerdir. Bu son müşteriler genellikle "kiracılar" olarak adlandırılır. Parçalamanın çeşitli nedenleri olabilir:

  • Toplam veri miktarı tek bir veritabanının kısıtlamalarına sığmayacak kadar büyük
  • Genel iş yükünün işlem aktarım hızı, tek bir veritabanının özelliklerini aşıyor
  • Kiracılar birbirinden fiziksel yalıtım gerektirir, bu nedenle her kiracı için ayrı veritabanları gerekir
  • Uyumluluk, performans veya jeopolitik nedenler nedeniyle veritabanının farklı bölümlerinin farklı coğrafyalarda yer alan bölümleri olabilir.

Dağıtılmış cihazlardan veri alımı gibi diğer senaryolarda parçalama, zamana bağlı olarak düzenlenmiş bir veritabanı kümesi doldurmak için kullanılabilir. Örneğin, ayrı bir veritabanı her gün veya hafta için ayrılmış olabilir. Bu durumda parçalama anahtarı tarihi temsil eden bir tamsayı olabilir (parçalı tabloların tüm satırlarında mevcuttur) ve bir tarih aralığı için bilgi alan sorguların uygulama tarafından söz konusu aralığı kapsayan veritabanlarının alt kümesine yönlendirilene sahip olması gerekir.

Parçalama, bir uygulamanın her işlemi bir parçalama anahtarının tek bir değeriyle kısıtlanabilirken en iyi şekilde çalışır. Bu, tüm işlemlerin belirli bir veritabanı için yerel olarak yapılmasına olanak sağlar.

Çok kiracılı ve tek kiracılı

Bazı uygulamalar, her kiracı için ayrı bir veritabanı oluşturmanın en basit yaklaşımını kullanır. Bu yaklaşım, kiracının ayrıntısına yalıtım, yedekleme/geri yükleme özelliği ve kaynak ölçeklendirme sağlayan tek kiracı parçalama düzenidir. Tek kiracı parçalama ile her veritabanı belirli bir kiracı kimliği değeriyle (veya müşteri anahtarı değeriyle) ilişkilendirilmektedir, ancak bu anahtarın her zaman verilerde mevcut olması gerekir. Her isteği uygun veritabanına yönlendirme uygulamanın sorumluluğundadır ve istemci kitaplığı bunu basitleştirebilir.

Tek kiracı ve çok kiracılı

Diğer senaryolar, birden çok kiracıyı ayrı veritabanlarına yalıtmayı değil, birden çok kiracıyı veritabanlarına paketler. Bu desen tipik bir çok kiracılı parçalama düzenidir ve bir uygulamanın çok sayıda küçük kiracıyı yönetmesi ile yönlendirebilir. Çok kiracılı parçalamada, veritabanı tablolarında yer alan satırların hepsi kiracı kimliğini veya parçalama anahtarını tanımlayan bir anahtar taşıyacak şekilde tasarlanmıştır. Yine uygulama katmanı, kiracının isteğini uygun veritabanına yönlendirmeden sorumludur ve bu, elastik veritabanı istemci kitaplığı tarafından destek edilebilir. Ayrıca, satır düzeyi güvenlik her kiracının hangi satırlara erişebilirsiniz filtrelemek için kullanılabilir; ayrıntılar için bkz. Esnek veritabanı araçları ve satır düzeyi güvenlik içeren çok kiracılı uygulamalar. Çok kiracılı parçalama düzeniyle verileri veritabanları arasında yeniden dağıtabilirsiniz ve esnek veritabanı bölme-birleştirme aracı tarafından kolaylaştırılabilir. Elastik havuzları kullanan SaaS uygulamalarının tasarım desenleri hakkında daha fazla bilgi edinmek için bkz. Azure SQL Veritabanı kullanan Çok Kiracılı SaaS Uygulamaları için Tasarım Desenleri.

Birden çok veritabanından tek bir kira veritabanına veri taşıma

SaaS uygulaması oluştururken, olası müşterilere yazılımın deneme sürümünü sunmak tipik bir durum olabilir. Bu durumda, veriler için çok kiracılı bir veritabanı kullanmak uygun maliyetlidir. Ancak müşteri müşterisi olduğunda tek kiracılı veritabanı daha iyi performans sağladığından daha iyi bir performans sunar. Müşteri deneme süresi boyunca veri oluşturdu ise, verileri çok kiracılı veritabanından yeni tek kiracılı veritabanına taşımak için bölme birleştirme aracını kullanın.

Sonraki adımlar

İstemci kitaplığını gösteren örnek bir uygulama için bkz. Kullanmaya başlayın araçlarıyla Esnek Veritabanı.

Mevcut veritabanlarını araçları kullanmak üzere dönüştürmek için bkz. Mevcut veritabanlarını ölçeğini olacak şekilde geçirme.

Elastik havuzun özellerini görmek için bkz. Elastik havuz için fiyat ve performansla ilgili dikkat edilmesi gerekenlerveya elastik havuzlarla yeni bir havuz oluşturun.

Ek kaynaklar

Henüz elastik veritabanı araçları kullanmıyor musunuz? Başlarken kılavuzumuzagöz atın. sorular için Microsoft Q&soru sayfasında, SQL Veritabanı ve özellik istekleri hakkında bizimle iletişim kurun, yeni fikirler ekleyin veya SQL Veritabanı geri bildirim forumunamevcut fikirleri oylayın.