Azure SQL Veritabanında tek veritabanı kaynaklarını ölçeklendirme

Bu makalede, sağlanan işlem katmanındaki bir Azure SQL Veritabanı için kullanılabilir işlem ve depolama kaynaklarının nasıl ölçeklendirildiği açıklanır. Alternatif olarak sunucusuz işlem katmanı, kullanılan işlem için işlem otomatik ölçeklendirmesi ve saniye başına faturalar sağlar.

Başlangıçta sanal çekirdek veya DTU sayısını seçtikten sonra, tek bir veritabanının ölçeğini gerçek deneyime göre dinamik olarak artırıp azaltabilirsiniz:

Önemli

Bazı durumlarda kullanılmayan alanı geri kazanmak için veritabanını küçültmeniz gerekebilir. Daha fazla bilgi için bkz. Azure SQL Veritabanı'da dosya alanını yönetme.

Not

Microsoft Entra Id daha önce Azure Active Directory (Azure AD) olarak biliniyordu.

Etki

Hizmet katmanının veya işlem boyutunun değiştirilmesi esas olarak hizmetin aşağıdaki adımları gerçekleştirmesini içerir:

  1. Veritabanı için yeni bir işlem örneği oluşturun.

    İstenen hizmet katmanı ve işlem boyutu ile yeni bir işlem örneği oluşturulur. Hizmet katmanı ve işlem boyutu değişikliklerinin bazı bileşimleri için, yeni işlem örneğinde verilerin kopyalanmasını içeren ve genel gecikme süresini önemli ölçüde etkileyebileceğiniz bir veritabanı çoğaltması oluşturulmalıdır. Ne olursa olsun, bu adım sırasında veritabanı çevrimiçi kalır ve bağlantılar özgün işlem örneğindeki veritabanına yönlendirilmeye devam eder.

  2. Bağlantıların yönlendirmesini yeni bir işlem örneğine değiştirin.

    Özgün işlem örneğindeki veritabanına yönelik mevcut bağlantılar bırakılır. Yeni işlem örneğindeki veritabanına yeni bağlantılar kurulur. Hizmet katmanı ve işlem boyutu değişikliklerinin bazı bileşimleri için, veritabanı dosyaları anahtar sırasında ayrılır ve yeniden eklenir. Ne olursa olsun, veritabanı genellikle 30 saniyeden kısa bir süre ve çoğunlukla yalnızca birkaç saniye boyunca kullanılamadığında anahtar kısa bir hizmet kesintisine neden olabilir. Bağlantılar bırakıldığında uzun süre çalışan işlemler varsa, durdurulan işlemlerin kurtarılması için bu adımın süresi daha uzun sürebilir. Hızlandırılmış Veritabanı Kurtarma , uzun süre çalışan işlemlerin durdurulma etkisini azaltabilir.

Önemli

İş akışındaki herhangi bir adım sırasında hiçbir veri kaybolmaz. Hizmet katmanı değiştirilirken Azure SQL Veritabanı kullanan uygulamalarda ve bileşenlerde bazı yeniden deneme mantığı uyguladığınıza emin olun.

Gecikme süresi

Hizmet katmanını değiştirmek, tek bir veritabanının veya elastik havuzun işlem boyutunu ölçeklendirmek, bir veritabanını elastik havuz içinde/dışında taşımak veya elastik havuzlar arasında veritabanını taşımak için tahmini gecikme süresi aşağıdaki gibi parametrelendirilir:

Veritabanı ölçeklendirme gecikme süresi Temel tek veritabanına,Standart
tek veritabanı (S0-S1)
Standart tek veritabanına (S2-S12),
Genel Amaçlı tek veritabanı,Temel
elastik havuza alınan veritabanı,Standart
elastik havuza alınan veritabanı,Genel
Amaçlı havuza alınan veritabanı
Premium tek veritabanı veya havuza alınan veritabanı,İş Açısından Kritik
tek veritabanı veya havuza alınan veritabanı
Hiper Ölçek tek veritabanına veya havuza alınan veritabanına
Temel tek veritabanından,Standart
tek veritabanı (S0-S1)
• Kullanılan alandan bağımsız olarak sabit süre gecikme süresi.
• Genellikle, 5 dakikadan az.
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
Temel havuza alınan veritabanından,Standart
tek veritabanı (S2-S12),
Standart havuza alınan veritabanı,Genel
Amaçlı tek veritabanı veya havuza alınan veritabanı
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
• Tek veritabanları için kullanılan alandan bağımsız olarak sabit süre gecikme süresi.
• Genellikle, tek veritabanları için 5 dakikadan az.
• Elastik havuzlar için veritabanı sayısıyla orantılıdır.
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
Premium tek veritabanından veya havuza alınan veritabanından,
İş Açısından Kritik tek veritabanından veya havuza alınan veritabanından
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
• Veri kopyalama nedeniyle kullanılan veritabanı alanıyla orantılı gecikme süresi.
• Genellikle, gb alanı başına 1 dakikadan az kullanılır.
Hiper Ölçek tek veritabanından veya havuza alınan veritabanından Yok Desteklenen senaryolar ve sınırlamalar için bkz . Hiper Ölçek'ten ters geçiş. Yok • Kullanılan alandan bağımsız olarak sabit süre gecikme süresi.
• Genellikle, 2 dakikadan az.

Not

  • Ayrıca, Standart (S2-S12) ve Genel Amaçlı veritabanları için veritabanını elastik havuz içinde/dışında veya elastik havuzlar arasında taşıma gecikmesi, veritabanı Premium Dosya Paylaşımı (PFS) depolama alanı kullanıyorsa veritabanı boyutuyla orantılı olacaktır.
  • Bir veritabanını elastik havuza/elastik havuzdan taşıma durumunda, elastik havuz tarafından kullanılan alanı değil, yalnızca veritabanı tarafından kullanılan alan gecikme süresini etkiler.
  • Bir veritabanının PFS depolaması kullanıp kullanmadığını belirlemek için veritabanı bağlamında aşağıdaki sorguyu yürütebilirsiniz. AccountType sütunundaki değer veya PremiumFileStorage-ZRSisePremiumFileStorage, veritabanı PFS depolama kullanıyordur.
SELECT s.file_id,
       s.type_desc,
       s.name,
       FILEPROPERTYEX(s.name, 'AccountType') AS AccountType
FROM sys.database_files AS s
WHERE s.type_desc IN ('ROWS', 'LOG');

Not

  • Alanlar arası yedekli özellik, tek bir veritabanını İş Açısından Kritik Genel Amaçlı katmanına ölçeklendirdiğinde varsayılan olarak aynı kalır.
  • Genel Amaçlı tek veritabanı için alanlar arası yedeklilik değiştirildiğinde ölçeklendirme işleminin gecikme süresi veritabanı boyutuyla orantılıdır.

İpucu

Devam eden işlemleri izlemek için bkz. SQL REST API'sini kullanarak işlemleri yönetme, CLI kullanarak işlemleri yönetme, T-SQL kullanarak işlemleri izleme ve şu iki PowerShell komutu: Get-AzSqlDatabaseActivity ve Stop-AzSqlDatabaseActivity.

Ölçeklendirme değişikliklerini izleme veya iptal etme

Hizmet katmanı değişikliği veya işlem yeniden ölçeklendirme işlemi izlenebilir ve iptal edilebilir.

SQL veritabanına Genel Bakış sayfasında, ölçeklendirme işleminin devam ettiğini gösteren başlığı bulun ve Devam eden dağıtım için Daha fazla bilgi edinin bağlantısını seçin.

Screenshot from the Azure portal showing a scaling operation in progress.

Devam eden işlemler sayfasında Bu işlemi iptal et'i seçin.

Screenshot from the Azure portal showing the Ongoing operations page and the cancel this operation button.

İzinler

Transact-SQL aracılığıyla veritabanlarını ölçeklendirmek ALTER DATABASE için kullanılır. Veritabanını ölçeklendirmek için oturum açma bilgileri sunucu yöneticisi oturum açma bilgileri (Azure SQL Veritabanı mantıksal sunucu sağlandığında oluşturulur), sunucunun Microsoft Entra yöneticisi, içindeki masterdbmanager veritabanı rolünün bir üyesi, geçerli veritabanındaki db_owner veritabanı rolünün bir üyesi veya dbo veritabanının üyesi olmalıdır. Daha fazla bilgi için bkz . ALTER DATABASE.

Veritabanlarını Azure portalı, PowerShell, Azure CLI veya REST API aracılığıyla ölçeklendirmek için, Azure RBAC izinleri( özellikle Katkıda Bulunan, SQL DB Katkıda Bulunanı rolü veya SQL Server Katkıda Bulunanı Azure RBAC rolleri) gereklidir. Daha fazla bilgi için Azure RBAC yerleşik rolleri'ne bakın.

Dikkat edilecek diğer noktalar

  • Daha yüksek bir hizmet katmanına veya işlem boyutuna yükseltme yaptığınızda siz açıkça daha büyük bir boyut (maxsize) belirtmedikçe veritabanının maksimum boyutu artmaz.
  • Veritabanını düşürmek için, kullanılan veritabanı alanı hedef hizmet katmanının ve işlem boyutunun izin verilen en büyük boyutundan daha küçük olmalıdır.
  • Premium katmanından Standart katmana indirilirken, her ikisi de (1) veritabanının maksimum boyutu hedef işlem boyutunda destekleniyorsa ve (2) maksimum boyut hedef işlem boyutunun dahil edilen depolama miktarını aşıyorsa ek bir depolama maliyeti uygulanır. Örneğin, maksimum boyutu 500 GB olan bir P1 veritabanı S3'e küçültülürse, S3 maksimum 1 TB boyutu desteklediğinden ve dahil edilen depolama miktarı yalnızca 250 GB olduğundan ek depolama maliyeti uygulanır. Bu nedenle, ek depolama alanı miktarı 500 GB – 250 GB = 250 GB'tır. Ek depolama alanı fiyatlandırması için bkz. Azure SQL Veritabanı fiyatlandırma. Kullanılan gerçek alan miktarı dahil edilen depolama miktarından azsa, veritabanının maksimum boyutu dahil edilen miktara indirilerek bu ek maliyet önlenebilir.
  • Coğrafi çoğaltma etkinleştirilmiş bir veritabanını yükseltirken, birincil veritabanını yükseltmeden önce ikincil veritabanlarını istenen hizmet katmanına ve işlem boyutuna yükseltin (en iyi performans için genel kılavuz). Farklı bir sürüme yükseltirken, önce ikincil veritabanının yükseltilmesi gerekir.
  • Coğrafi çoğaltma etkinleştirilmiş bir veritabanını düşürürken, ikincil veritabanını düşürmeden önce birincil veritabanlarını istenen hizmet katmanına ve işlem boyutuna düşürebilirsiniz (en iyi performans için genel kılavuz). Farklı bir sürüme düşürdüğünüzde öncelikle birincil veritabanının indirilmesi gerekir.
  • Geri yükleme hizmeti teklifleri, çeşitli hizmet katmanları için farklılık gösterir. Temel katmana düşürecekseniz daha düşük bir yedekleme saklama süresi vardır. Bkz. yedeklemeleri Azure SQL Veritabanı.
  • Değişiklikler tamamlanana kadar veritabanı için yeni özellikler uygulanmaz.
  • Hizmet katmanını değiştirirken veritabanını ölçeklendirmek için veri kopyalama gerektiğinde (bkz . Gecikme süresi), ölçeklendirme işlemiyle eşzamanlı yüksek kaynak kullanımı daha uzun ölçeklendirme sürelerine neden olabilir. Hızlandırılmış Veritabanı Kurtarma (ADR) ile, uzun süre çalışan işlemlerin geri alınması önemli bir gecikme kaynağı değildir, ancak yüksek eşzamanlı kaynak kullanımı özellikle daha küçük işlem boyutları için ölçeklendirme için daha az işlem, depolama ve ağ bant genişliği kaynağı bırakabilir.

Faturalandırma

Kullanımdan veya veritabanının bir saatten kısa bir süre etkin olup olmamasına bakılmaksızın bu saat içinde uygulanan en yüksek hizmet katmanı + işlem boyutu kullanılarak bir veritabanının mevcut olduğu her saat için faturalandırılırsınız. Örneğin, tek bir veritabanı oluşturur ve beş dakika sonra silerseniz faturanız bir veritabanı saati için ücret yansıtmaktadır.

Depolama boyutunu değiştirme

Sanal çekirdek tabanlı satın alma modeli

  • Depolama, 1 GB'lık artışlar kullanılarak veri depolama maksimum boyut sınırına kadar sağlanabilir. Yapılandırılabilir en düşük veri depolama alanı 1 GB'tır. Her hizmet hedefinde veri depolama maksimum boyut sınırları için sanal çekirdek satın alma modelini kullanan tek veritabanları için kaynak sınırları ve DTU satın alma modelini kullanan tek veritabanları için kaynak sınırları belge sayfalarına bakın.

  • Tek veritabanının veri depolama alanını sağlamak için Azure portal, Transact-SQL, PowerShell, Azure CLI veya REST API kullanarak maksimum boyutunu artırabilir veya azaltabilirsiniz. Maksimum boyut bayt olarak belirtilecekse 1 GB (1073741824 bayt) ve katları olmalıdır.

  • Bir veritabanının veri dosyalarında depolanabilecek veri miktarı, yapılandırılan veri depolama maksimum boyutuyla sınırlıdır. bu depolamaya ek olarak, Azure SQL Veritabanı işlem günlüğü için kullanılacak %30 daha fazla depolama alanını otomatik olarak ekler. Tek bir veritabanı veya elastik havuz için depolama fiyatı, hizmet katmanının depolama birimi fiyatıyla çarpılan veri depolama ve işlem günlüğü depolama tutarlarının toplamıdır. Örneğin, veri depolama alanı 10 GB olarak ayarlanırsa, ek işlem günlüğü depolama alanı 10 GB * %30 = 3 GB' tır ve toplam faturalanabilir depolama alanı miktarı 10 GB + 3 GB = 13 GB'tır.

    Not

    İşlem günlüğü dosyasının en büyük boyutu otomatik olarak yönetilir ve bazı durumlarda veri depolama alanı boyutu üst sınırının %30'undan büyük olabilir. Bu, veritabanı için depolama fiyatını artırmaz.

  • Azure SQL Veritabanı veritabanı için tempdb sanal çekirdek başına otomatik olarak 32 GB ayırır. tempdb tüm hizmet katmanlarında yerel SSD depolama alanında bulunur. maliyeti tempdb tek bir veritabanının veya elastik havuzun fiyatına dahildir.

  • Depolama fiyatıyla ilgili ayrıntılar için bkz. fiyatlandırma Azure SQL Veritabanı.

Önemli

Bazı durumlarda kullanılmayan alanı geri kazanmak için veritabanını küçültmeniz gerekebilir. Daha fazla bilgi için bkz. Azure SQL Veritabanı'da dosya alanını yönetme.

DTU tabanlı satın alma modeli

  • Tek bir veritabanı için DTU fiyatı, ek ücret ödemeden belirli bir miktarda depolama alanı içerir. Verilen depolama alanına ek olarak sağlanan depolama alanı için maksimum boyut ek ücret karşılığında 1 TB’a kadar 250 GB kademelerle, 1 TB sonrasında ise 256 GB kademelerle artırılabilir. Dahil edilen depolama miktarları ve maksimum boyut sınırları için bkz. Tek veritabanı: Depolama boyutları ve işlem boyutları.
  • Tek veritabanı için ek depolama alanı sağlamak isterseniz Azure portal, Transact-SQL, PowerShell, Azure CLI veya REST API kullanarak maksimum boyutunu artırabilirsiniz.
  • Tek bir veritabanı için ek depolamanın fiyatı, hizmet katmanının ek depolama birimi fiyatıyla çarpılan ek depolama miktarıdır. Ek depolama alanı fiyatıyla ilgili ayrıntılar için bkz. fiyatlandırma Azure SQL Veritabanı.

Önemli

Bazı durumlarda kullanılmayan alanı geri kazanmak için veritabanını küçültmeniz gerekebilir. Daha fazla bilgi için bkz. Azure SQL Veritabanı'da dosya alanını yönetme.

Coğrafi olarak çoğaltılan veritabanı

Çoğaltılan ikincil veritabanının veritabanı boyutunu değiştirmek için birincil veritabanının boyutunu değiştirin. Bu değişiklik daha sonra ikincil veritabanına çoğaltılır ve uygulanır.

Maksimum boyut 1 TB'tan büyük olduğunda P11 ve P15 kısıtlamaları

Premium katmanında 1 TB'tan fazla depolama alanı şu anda Çin Doğu, Kuzey Çin, Orta Almanya ve Kuzeydoğu Almanya hariç tüm bölgelerde kullanılabilir. Bu bölgelerde Premium katmanda depolama için 1 TB üst sınırı uygulanır. Boyut üst sınırı 1 TB'tan büyük P11 ve P15 veritabanları için aşağıdaki önemli noktalar ve sınırlamalar geçerlidir:

  • P11 veya P15 veritabanının en büyük boyutu 1 TB'tan büyük bir değere ayarlanmışsa, yalnızca P11 veya P15 veritabanına geri yüklenebilir veya kopyalanabilir. Daha sonra, yeniden ölçeklendirme işlemi sırasında ayrılan alan miktarının yeni işlem boyutunun maksimum boyut sınırını aşmaması koşuluyla veritabanı farklı bir işlem boyutuna yeniden ölçeklendirilebilir.
  • Etkin coğrafi çoğaltma senaryoları için:
    • Coğrafi çoğaltma ilişkisi ayarlama: Birincil veritabanı P11 veya P15 ise, ikincil (ies) de P11 veya P15 olmalıdır. Daha düşük işlem boyutları, 1 TB'tan fazla destek sağladıkları için ikincil olarak reddedilir.
    • Coğrafi çoğaltma ilişkisinde birincil veritabanını yükseltme: Birincil veritabanında en büyük boyutun 1 TB'tan fazla olması, ikincil veritabanında da aynı değişikliği tetikler. Birincildeki değişikliğin etkili olması için her iki yükseltmenin de başarılı olması gerekir. 1 TB'tan fazla seçenek için bölge sınırlamaları geçerlidir. İkincil, 1 TB'tan fazla desteklemeyen bir bölgedeyse birincil yükseltilmez.
  • 1 TB'tan fazla P11/P15 veritabanı yüklemek için İçeri/Dışarı Aktarma hizmetinin kullanılması desteklenmez. Verileri içeri ve dışarı aktarmak için SqlPackage'ı kullanın.

Genel kaynak sınırları için bkz. sanal çekirdek tabanlı kaynak sınırlarını (tek veritabanları ve Azure SQL Veritabanı DTU tabanlı kaynak sınırları- tek veritabanları Azure SQL Veritabanı.