Elastik havuzlar, Azure SQL Veritabanı'de birden çok veritabanını yönetmenize ve ölçeklendirmenize yardımcı olur

Şunlar için geçerlidir:Azure SQL Veritabanı

Azure SQL Veritabanı elastik havuzlar, farklı ve öngörülemeyen kullanım talepleriyle birden çok veritabanını yönetmek ve ölçeklendirmek için basit, uygun maliyetli bir çözümdir. Elastik havuzdaki veritabanları tek bir sunucudadır ve belirli bir fiyatla belirli sayıda kaynağı paylaşır. SQL Veritabanı'deki elastik havuzlar, hizmet olarak yazılım (SaaS) geliştiricilerinin belirli bir bütçe içindeki bir grup veritabanı için fiyat performansını iyileştirmesine olanak tanırken, her veritabanı için performans esnekliği sağlar.

SQL elastik havuzları nedir?

SaaS geliştiricileri, birden çok veritabanı olan büyük ölçekli veri katmanlarının üzerine uygulamalar oluşturur. Tipik bir uygulama düzeni, her müşteri için tek bir veritabanı sağlamaktır. Ancak farklı müşteriler genellikle farklı ve öngörülemeyen kullanım düzenlerine sahiptir ve her veritabanı kullanıcısının kaynak gereksinimlerini tahmin etmek zordur. Geleneksel olarak iki seçeneğiniz vardı:

  • Yoğun kullanıma ve fazla ödemeye göre fazla kaynak sağlama.
  • Yoğun dönemlerde performans ve müşteri memnuniyetinden tasarruf etmek için yetersiz sağlama.

Elastik havuzlar, veritabanlarının ihtiyaç duydukları performans kaynaklarını ihtiyaç duyduklarında elde etmelerini sağlayarak bu sorunu çözer. Bunlar, tahmin edilebilir bir bütçe içinde basit bir kaynak ayırma mekanizması sağlar. Elastik havuzları kullanan SaaS uygulamalarına yönelik tasarım desenleri hakkında daha fazla bilgi edinmek için bkz. SQL Veritabanı ile çok kiracılı SaaS uygulamaları için tasarım desenleri.

Önemli

Elastik havuzlar için veritabanı başına ücret alınmaz. Kullanımdan veya havuzun bir saatten kısa süre etkin olup olmamasına bakılmaksızın havuzun en yüksek eDTU veya sanal çekirdekte bulunduğu her saat için faturalandırılırsınız.

Elastik havuzlar, tek tek veritabanları tarafından öngörülemeyen kullanım sürelerine uyum sağlamak için birden çok veritabanı tarafından paylaşılan bir havuz için kaynak satın almanızı sağlar. Havuz için kaynakları DTU tabanlı satın alma modeline veya sanal çekirdek tabanlı satın alma modelinegöre yapılandırabilirsiniz. Veritabanlarının toplam kullanımı, havuz için kaynak gereksinimini belirler.

Havuz için kullanılabilir kaynak miktarı bütçeniz tarafından denetlener. Tek yapmanız gereken:

  • Havuza veritabanları ekleyin.
  • İsteğe bağlı olarak veritabanları için en düşük ve en yüksek kaynakları ayarlayın. Bu kaynaklar, kaynak oluşturma modeli seçiminize bağlı olarak minimum ve maksimum DTU'lar ya da en düşük veya en yüksek sanal çekirdeklerdir.
  • Havuzun kaynaklarını bütçenize göre ayarlayın.

Havuzları kullanarak hizmetinizi yalın bir başlangıçtan sürekli artan ölçekte olgun bir işletmeye sorunsuz bir şekilde büyütebilirsiniz.

Havuz içerisinde bağımsız veritabanlarına belirli parametreler içinde otomatik olarak ölçeklendirme esnekliği tanınır. Yoğun yük altında bir veritabanı talebi karşılamak için daha fazla kaynak tüketebilir. Hafif yük altındaki veritabanları daha az, yük olmayan veritabanları ise kaynak tüketmez. Kaynakları tek veritabanları yerine havuzun tamamı için sağlamak, yönetim görevlerinizi basitleştirir. Ayrıca havuz için tahmin edilebilir bir bütçeniz vardır.

Mevcut havuza en düşük kapalı kalma süresiyle daha fazla kaynak eklenebilir. Ek kaynaklar artık gerekli değilse, mevcut havuzdan istedikleri zaman kaldırılabilirler. Ayrıca havuza veritabanı ekleyebilir veya havuzdan veritabanlarını kaldırabilirsiniz. Bir veritabanı kaynakları tahmin edilemeyecek kadar az kullanıyorsa, veritabanını dışarı taşıyabilirsiniz.

Not

Veritabanlarını elastik havuza taşıdığınızda veya bir elastik havuz dışına taşıdığınızda, işlemin sonunda veritabanı bağlantılarının bırakılmasının kısa bir süre (saniye sırasına göre) dışında bir kapalı kalma süresi yoktur.

SQL Veritabanı elastik havuzu ne zaman dikkate almanız gerekir?

Havuzlar, belirli kullanım düzenlerine sahip çok sayıda veritabanı bulunan durumlar için çok uygundur. Bu desen, belirli bir veritabanı için seyrek kullanım artışlarıyla düşük ortalama kullanım ile karakterize edilir. Buna karşılık, kalıcı orta-yüksek kullanıma sahip birden çok veritabanı aynı elastik havuza yerleştirilmemelidir.

Havuza ne kadar çok veritabanı ekleyebilirseniz, o kadar fazla tasarruf elde edebilirsiniz. Uygulama kullanım düzeninize bağlı olarak, en az iki S3 veritabanıyla tasarrufları görebilirsiniz.

Aşağıdaki bölümler veritabanı koleksiyonunuzun bir havuzda olmasının yararlarını nasıl değerlendireceğini anlamanıza yardımcı olabilir. Örneklerde Standart havuzlar kullanılır, ancak diğer hizmet katmanlarındaki elastik havuzlar için de aynı ilkeler geçerlidir.

Veritabanı kullanım desenlerini değerlendirme

Aşağıdaki şekilde, boşta kalma süresinin büyük bölümünü harcayan ancak etkinlikle düzenli aralıklarla ani artışlar gösteren bir veritabanı örneği gösterilmektedir. Bu kullanım düzeni bir havuz için uygundur.

Havuz için uygun tek bir veritabanını gösteren grafik.

Grafik, her veri noktasının bir dakikalık ayrıntı düzeyine sahip olduğu 12:00 ile 1:00 arasında bir saatlik DTU kullanımını gösterir. Saat 12:10'da DB1 90 DTU'ya kadar zirveye çıkar, ancak genel ortalama kullanımı beş DTU'dan daha azdır. Bu iş yükünü tek bir veritabanında çalıştırmak için bir S3 işlem boyutu gereklidir, ancak bu boyut düşük etkinlik dönemlerinde kaynakların çoğunu kullanılmadan bırakır.

Havuz, bu kullanılmayan DTU'ların birden çok veritabanında paylaşılmasını sağlar. Havuz, gereken DTU'ları ve genel maliyeti azaltır.

Önceki örnekte derlemek gerekirse, diğer veritabanlarının DB1 ile benzer kullanım desenlerine sahip olduğunu varsayalım. Aşağıdaki iki şekilde 4 veritabanının ve 20 veritabanının kullanımı, DTU tabanlı satın alma modeli kullanılarak zaman içinde kullanımlarının aykırı doğasını göstermek için aynı graf üzerine katmanlanır:

Bir havuz için uygun kullanım deseni olan dört veritabanını gösteren grafik.

Havuz için uygun kullanım deseni olan 20 veritabanını gösteren grafik.

Yukarıdaki grafikteki siyah çizgi, 20 veritabanının tamamında toplam DTU kullanımını gösterir. Bu satır, toplam DTU kullanımının hiçbir zaman 100 DTU'yu aşmadığını gösterir ve 20 veritabanının bu süre boyunca 100 eDTU'yu paylaşabileceğini gösterir. Sonuç, DTU'larda 20 zaman ve her veritabanını tek veritabanları için S3 işlem boyutlarına yerleştirmeye kıyasla 13 saatlik fiyat düşüşüdür.

Aşağıdakiler nedeniyle bu örnek idealdir:

  • Bir veritabanındaki en yüksek kullanım ile ortalama kullanım arasında büyük farklar mevcuttur.
  • Bir veritabanının en yüksek kullanımı zamanın farklı noktalarında gerçekleşir.
  • eDTU'lar birden fazla veritabanı arasında paylaşılır.

DTU satın alma modelinde bir havuzun fiyatı, havuz eDTU'larının bir işlevidir. Bir havuzun eDTU birim fiyatı tek bir veritabanı için DTU birim fiyatından 1,5 kat daha yüksek olsa da, havuz eDTU'ları birçok veritabanı tarafından paylaşılabilir ve toplam eDTU sayısı daha azdır. Fiyatlandırma ve eDTU paylaşımındaki bu farklılıklar, havuzların sağlayabileceği tasarruf potansiyelinin temelini oluşturur.

Sanal çekirdek satın alma modelinde elastik havuzlar için sanal çekirdek birim fiyatı, tek veritabanları için sanal çekirdek birim fiyatıyla aynıdır.

Doğru havuz boyutunu Nasıl yaparım? seçin?

Havuz için en iyi boyut, havuzdaki tüm veritabanları için gereken toplam kaynaklara bağlıdır. Aşağıdakileri belirlemeniz gerekir:

  • Havuzdaki tüm veritabanları tarafından kullanılan en fazla işlem kaynağı. İşlem kaynakları, satın alma modeli seçiminize bağlı olarak eDTU'lar veya sanal çekirdekler tarafından dizine alınır.
  • Havuzdaki tüm veritabanları tarafından kullanılan en fazla depolama baytı sayısı.

Her satın alma modelindeki hizmet katmanları ve kaynak sınırları için bkz . DTU tabanlı satın alma modeli veya sanal çekirdek tabanlı satın alma modeli.

Not

Hiper Ölçek için elastik havuzlar şu anda önizleme aşamasındadır.

Aşağıdaki adımlar, havuzun tek veritabanlarından daha uygun maliyetli olup olmadığını tahmin etme konusunda yardımcı olabilir:

  1. Havuz için gereken eDTU veya sanal çekirdek sayısını tahmin edebilirsiniz:

    1. DTU tabanlı satın alma modeli için:
      1. MAX(<Db başına> ortalama DTU kullanımı × TOPLAM DTU sayısı,< Eşzamanlı olarak en yüksek OLAN DTU sayısı × Db> başına en yüksek DTU kullanımı)
    2. Sanal çekirdek tabanlı satın alma modeli için:
      1. MAX(<Toplam DB sayısı × Db> başına ortalama sanal çekirdek kullanımı,< Eşzamanlı olarak en yüksek olan DB sayısı × DB> başına en yüksek sanal çekirdek kullanımı)
  2. Havuzdaki tüm veritabanları için gereken veri boyutunu ekleyerek havuz için gereken toplam depolama alanını tahmin edin. DTU satın alma modeli için bu miktarda depolama alanı sağlayan eDTU havuz boyutunu belirleyin.

  3. DTU tabanlı satın alma modeli için 1. ve 2. adımdaki eDTU tahminlerinin büyük olanını kabul edin.

    1. Sanal çekirdek tabanlı satın alma modeli için 1. adımdaki sanal çekirdek tahminini kabul edin.
  4. SQL Veritabanı fiyatlandırma sayfasına bakın.

    1. 3. adımdaki tahminden daha büyük olan en küçük havuz boyutunu bulun.
  5. 4. adımdaki havuz fiyatını tek veritabanları için uygun işlem boyutlarını kullanarak karşılaştırın.

Önemli

Bir havuzdaki veritabanı sayısı desteklenen en yüksek düzeye yaklaşıyorsa yoğun elastik havuzlarda kaynak yönetimini göz önünde bulundurun.

Veritabanı başına özellikler

elastik havuzlardaki kaynak tüketimi desenlerini değiştirmek için isteğe bağlı olarak veritabanı başına özellikleri ayarlayın. Daha fazla bilgi için DTU ve sanal çekirdek elastik havuzları için kaynak sınırları belgelerine bakın.

Elastik havuzlarla diğer SQL Veritabanı özelliklerini kullanma

Elastik havuzlarla diğer SQL Veritabanı özelliklerini kullanabilirsiniz.

Elastik işler ve elastik havuzlar

Bir havuz kullanılarak esnek işlerde betik çalıştırma yoluyla yönetim görevleri kolaylaştırılır. Esnek bir iş, çok sayıda veritabanıyla ilişkili tedyumun çoğunu ortadan kaldırır.

Birden çok veritabanıyla çalışmaya yönelik diğer veritabanı araçları hakkında daha fazla bilgi için bkz. SQL Veritabanı ile ölçeği genişletme.

Elastik havuzdaki veritabanları için iş sürekliliği seçenekleri

Havuza alınan veritabanları genellikle tek veritabanlarında kullanılabilen iş sürekliliği özelliklerini destekler:

  • Belirli bir noktaya geri yükleme: Belirli bir noktaya geri yükleme, havuzdaki bir veritabanını belirli bir noktaya kurtarmak için otomatik veritabanı yedeklemelerini kullanır. Bkz . Belirli bir noktaya geri yükleme.
  • Coğrafi geri yükleme: Coğrafi geri yükleme, veritabanının barındırıldığı bölgedeki bir olay nedeniyle veritabanı kullanılamadığında varsayılan kurtarma seçeneğini sağlar. Bkz. Coğrafi geri yükleme.
  • Etkin coğrafi çoğaltma: Coğrafi geri yüklemenin sunabileceğinden daha agresif kurtarma gereksinimleri olan uygulamalar için etkin coğrafi çoğaltmayı veya yük devretme grubunu yapılandırın.

Yukarıdaki stratejiler hakkında daha fazla bilgi için bkz. olağanüstü durum kurtarma kılavuzu Azure SQL Veritabanı.

Azure portalını kullanarak yeni SQL Veritabanı elastik havuz oluşturma

Azure portalında elastik havuz oluşturmak için iki yöntem kullanabilirsiniz:

  • Elastik havuz oluşturun ve mevcut veya yeni bir sunucuyu seçin.
  • Var olan bir sunucudan elastik havuz oluşturun.

Elastik havuz oluşturmak ve mevcut veya yeni bir sunucuyu seçmek için:

  1. Elastik havuz oluşturmak için Azure portalına gidin. Azure SQL'i arayın ve seçin.

  2. Oluştur'u seçerek SQL dağıtımını seç seçeneği bölmesini açın. Elastik havuzlar hakkında daha fazla bilgi görüntülemek için Veritabanları kutucuğunda Ayrıntıları göster'i seçin.

  3. Veritabanları kutucuğundaki Kaynak türü açılan listesinde Elastik havuz'a tıklayın. Daha sonra, Oluştur'u seçin.

    Elastik havuz oluşturmayı gösteren ekran görüntüsü.

  4. Ardından Azure portalı, PowerShell, Azure CLI, REST API veya T-SQL aracılığıyla elastik havuzunuzu yönetin.

Var olan bir sunucudan elastik havuz oluşturmak için:

  1. Var olan bir sunucuya gidin ve yeni havuz'u seçerek doğrudan bu sunucuda bir havuz oluşturun.

    Not

    Sunucuda birden çok havuz oluşturabilirsiniz, ancak farklı sunuculardaki veritabanlarını aynı havuza ekleyemezsiniz.

    Havuzun hizmet katmanı, havuzdaki elastikler için kullanılabilen özellikleri ve her veritabanı için kullanılabilir en fazla kaynak miktarını belirler. Daha fazla bilgi için bkz. DTU modelindeki elastik havuzlar için kaynak sınırları. Elastik havuzlar için sanal çekirdek tabanlı kaynak sınırları için bkz . Sanal çekirdek tabanlı kaynak sınırları - elastik havuzlar.

  2. Havuzun kaynaklarını ve fiyatlandırmasını yapılandırmak için Havuzu yapılandır'ı seçin. Ardından bir hizmet katmanı seçin, havuza veritabanları ekleyin ve havuz ile veritabanları için kaynak sınırlarını yapılandırın.

  3. Havuzu yapılandırdıktan sonra Uygula'yı seçin, havuzu adlandırın ve havuzu oluşturmak için Tamam'ı seçin.

  4. Ardından Azure portalı, PowerShell, Azure CLI, REST API veya T-SQL aracılığıyla elastik havuzunuzu yönetin.

Elastik havuzu ve veritabanlarını izleme

Azure portalında elastik havuzun ve bu havuzdaki veritabanlarının kullanımını izleyebilirsiniz. Ayrıca elastik havuzunuzda bir dizi değişiklik yapabilir ve tüm değişiklikleri aynı anda gönderebilirsiniz. Bu değişiklikler arasında veritabanları ekleme veya kaldırma, elastik havuz ayarlarınızı değiştirme veya veritabanı ayarlarınızı değiştirme sayılabilir.

Yerleşik performans izleme ve uyarı araçlarını performans derecelendirmeleriyle birlikte kullanabilirsiniz. SQL Veritabanı daha kolay izleme için ölçümleri ve kaynak günlüklerini de yayar.

Müşteri örnek olay incelemeleri

  • SnelStart: SnelStart, iş hizmetlerini ayda 1.000 yeni SQL veritabanı hızında hızla genişletmek için SQL Veritabanı ile elastik havuzları kullandı.
  • Umbraco: Umbraco, buluttaki binlerce kiracı için hızlı bir şekilde hizmet sağlamak ve ölçeklendirmek için SQL Veritabanı içeren elastik havuzları kullanır.
  • Daxko/CSI: Daxko/CSI, geliştirme döngüsünü hızlandırmak ve müşteri hizmetleri ile performansını geliştirmek için SQL Veritabanı ile elastik havuzları kullanır.