Elastik havuzlar, Azure SQL Veritabanında 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ı, kullanım talepleri değişken olan ve öngörülmeyen birden çok veritabanını yönetmeye ve ölçeklendirmeye yönelik kolay ve ekonomik bir çözümdür. 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 bir grup veritabanının fiyat performansını belirli bir bütçe içinde iyileştirerek her veritabanı için performans esnekliği sunmasını sağlar.

SQL elastik havuzları nedir?

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

  • Kaynakların en yoğun kullanımına ve fazla ödemeye göre fazla sağlama.
  • En yüksek performans ve müşteri memnuniyeti karşılığında maliyet tasarrufu sağlamanın yetersiz sağlanması.

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ı kullanarak 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 bir süre etkin olup olmamasına bakılmaksızın, havuzun en yüksek eDTU veya sanal çekirdeklerde 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 kaynaklarını DTU tabanlı satın alma modeline veya sanal çekirdek tabanlı satın alma modeline göre yapılandırabilirsiniz. Bir havuzun kaynak gereksinimi, veritabanlarının toplam kullanımına göre belirlenir.

Havuza sağlanan 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.

Hizmetinizi yalın bir başlangıçtan sürekli artan ölçekte olgun bir işletmeye sorunsuzca büyütmek için havuzları kullanabilirsiniz.

Havuz içinde tek tek veritabanlarına, belirlenen parametreler içindeki kaynakları kullanma esnekliği verilir. 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 altındaki veritabanları ise kaynak tüketmez. Tek tek veritabanları yerine tüm havuz için kaynak sağlamak, yönetim görevlerinizi basitleştirir. Ayrıca havuz için tahmin edilebilir bir bütçeniz var.

Mevcut havuza minimum kapalı kalma süresiyle daha fazla kaynak eklenebilir. Ek kaynaklar artık gerekli değilse, herhangi bir zamanda mevcut havuzdan kaldırılabilir. Ayrıca havuza veritabanı ekleyebilir veya havuzdan veritabanlarını kaldırabilirsiniz. Veritabanı kaynakları tahmin edilebilir şekilde az kullanıyorsa, veritabanını dışarı taşıyabilirsiniz.

Not

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

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

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

Bir havuza ekleyebileceğiniz veritabanı sayısı arttıkça, tasarruflarınız artar. 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 temel ve Premium havuzlar için de aynı ilkeler geçerlidir.

Veritabanı kullanım desenlerini değerlendirme

Aşağıdaki şekilde, zamanının çoğunu boşta geçiren ancak düzenli aralıklarla etkinlikle birlikte ani artışlar gösteren bir veritabanı örneği gösterilmektedir. Bu kullanım düzeni havuz için uygundur.

Havuza 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 en fazla 90 DTU'ya çıkar, ancak genel ortalama kullanımı beş DTU'dan 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ılmayan durumda 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, DB1 ile benzer kullanım desenlerine sahip başka veritabanları olduğunu varsayalım. Sonraki iki şekilde, DTU tabanlı satın alma modeli kullanılarak zaman içinde kullanımlarının örtüşmeyen doğasını göstermek için dört veritabanının ve 20 veritabanının kullanımı aynı grafta katmanlanır:

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

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

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

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 havuzun fiyatı, havuz eDTU'larının bir işlevidir. Bir havuzun eDTU birim fiyatı tek bir veritabanının DTU birim fiyatından 1,5 kat daha fazla 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ının 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.

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'ları veya sanal çekirdekleri tahmin edin:
    • DTU tabanlı satın alma modeli için:
      • MAX(<Toplam DB sayısı × Db> başına ortalama DTU kullanımı, <Eşzamanlı olarak en yüksek DTU sayısı × DB> başına en yüksek DTU kullanımı)
    • Sanal çekirdek tabanlı satın alma modeli için:
      • 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 kısmını alın. Sanal çekirdek tabanlı satın alma modeli için 1. adımdaki sanal çekirdek tahminini alın.
  4. SQL Veritabanı fiyatlandırma sayfasına bakın ve 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ı kullanma fiyatıyla karşılaştırın.

Önemli

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 ayarlayabilirsiniz. Daha fazla bilgi için bkz. DTU ve sanal çekirdek elastik havuzları için kaynak sınırları belgeleri.

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 tediumun ç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ı için kullanılabilen aynı 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 otomatik yük devretme grubunu yapılandırın.

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

Azure portal kullanarak yeni SQL Veritabanı elastik havuzu oluşturma

Azure portal bir 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 gidin. Azure SQL için arama yapı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'u seçin. Ardından Oluştur’u seçin.

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

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

  • Var olan bir sunucuya gidin ve doğrudan o sunucuda havuz oluşturmak için Yeni havuz'u seçin.

Not

Bir 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 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.

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.

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

Elastik havuzu ve veritabanlarını izleme

Azure portal 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ı oranı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ı elastik havuzları kullanır.

Sonraki adımlar