عمليات معدل النقل (RU/s) باستخدام PowerShell لقاعدة بيانات أو حاوية ل Azure Cosmos DB ل NoSQL
ينطبق على: NoSQL
إشعار
نوصي باستخدام الوحدة النمطية Azure Az PowerShell للتفاعل مع Azure. للبدء، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.
يتطلب هذا النموذج Azure PowerShell Az 5.4.0 أو أحدث. اضغط Get-Module -ListAvailable Az
لمعرفة الإصدارات المثبتة.
إذا كنت بحاجة إلى التثبيت، راجع نموذجInstall Azure PowerShell.
اضغط Connect-AzAccount لتسجيل الدخول إلى Azure.
الحصول على معدل النقل
# Reference: Az.CosmosDB | https://docs.microsoft.com/powershell/module/az.cosmosdb
# --------------------------------------------------
# Purpose
# Get database or container throughput
# --------------------------------------------------
# Variables - ***** SUBSTITUTE YOUR VALUES *****
$resourceGroupName = "myResourceGroup" # Resource Group must already exist
$accountName = "myaccount" # Must be all lower case
$databaseName = "myDatabase"
$containerName = "myContainer"
# --------------------------------------------------
Write-Host "Get database shared throughput - if none provisioned, will return error."
Get-AzCosmosDBSqlDatabaseThroughput -ResourceGroupName $resourceGroupName `
-AccountName $accountName -Name $databaseName
Write-Host "Get container dedicated throughput - if none provisioned, will return error."
Get-AzCosmosDBSqlContainerThroughput -ResourceGroupName $resourceGroupName `
-AccountName $accountName -DatabaseName $databaseName `
-Name $containerName
تحديث معدل النقل
# Reference: Az.CosmosDB | https://docs.microsoft.com/powershell/module/az.cosmosdb
# --------------------------------------------------
# Purpose
# Update container throughput
# --------------------------------------------------
# Variables - ***** SUBSTITUTE YOUR VALUES *****
$resourceGroupName = "myResourceGroup" # Resource Group must already exist
$accountName = "myaccount" # Must be all lower case
$databaseName = "myDatabase"
$containerName = "myContainer"
$newRUs = 500
# --------------------------------------------------
$throughput = Get-AzCosmosDBSqlContainerThroughput -ResourceGroupName $resourceGroupName `
-AccountName $accountName -DatabaseName $databaseName -Name $containerName
$currentRUs = $throughput.Throughput
$minimumRUs = $throughput.MinimumThroughput
Write-Host "Current throughput is $currentRUs. Minimum allowed throughput is $minimumRUs."
if ([int]$newRUs -lt [int]$minimumRUs) {
Write-Host "Requested new throughput of $newRUs is less than minimum allowed throughput of $minimumRUs."
Write-Host "Using minimum allowed throughput of $minimumRUs instead."
$newRUs = $minimumRUs
}
if ([int]$newRUs -eq [int]$currentRUs) {
Write-Host "New throughput is the same as current throughput. No change needed."
}
else {
Write-Host "Updating throughput to $newRUs."
Update-AzCosmosDBSqlContainerThroughput -ResourceGroupName $resourceGroupName `
-AccountName $accountName -DatabaseName $databaseName `
-Name $containerName -Throughput $newRUs
}
ترحيل معدل النقل
# Reference: Az.CosmosDB | https://docs.microsoft.com/powershell/module/az.cosmosdb
# --------------------------------------------------
# Purpose
# Migrate a database or container to autoscale or standard (manual) throughput
# --------------------------------------------------
# Variables - ***** SUBSTITUTE YOUR VALUES *****
$resourceGroupName = "myResourceGroup" # Resource Group must already exist
$accountName = "myaccount" # Must be all lower case
$databaseName = "myDatabase"
$containerName = "myContainer"
# --------------------------------------------------
Write-Host "Migrate database with standard throughput to autoscale throughput."
Invoke-AzCosmosDBSqlDatabaseThroughputMigration -ResourceGroupName $resourceGroupName `
-AccountName $accountName -Name $databaseName -ThroughputType Autoscale
Write-Host "Migrate database with autoscale throughput to standard throughput."
Invoke-AzCosmosDBSqlDatabaseThroughputMigration -ResourceGroupName $resourceGroupName `
-AccountName $accountName -Name $databaseName -ThroughputType Manual
Write-Host "Migrate container with standard throughput to autoscale throughput."
Invoke-AzCosmosDBSqlContainerThroughputMigration -ResourceGroupName $resourceGroupName `
-AccountName $accountName -DatabaseName $databaseName -Name $containerName -ThroughputType Autoscale
Write-Host "Migrate container with autoscale throughput to standard throughput."
Invoke-AzCosmosDBSqlContainerThroughputMigration -ResourceGroupName $resourceGroupName `
-AccountName $accountName -DatabaseName $databaseName -Name $containerName -ThroughputType Manual
تنظيف النشر
بعد تشغيل نموذج البرنامج النصي، يمكن استخدام الأمر التالي لإزالة مجموعة الموارد وجميع الموارد المرتبطة بها.
Remove-AzResourceGroup -ResourceGroupName "myResourceGroup"
شرح السيناريو
يستخدم هذا البرنامج النصي الأوامر التالية. يرتبط كل أمر في الجدول بأمر وثائق معينة.
الأمر | ملاحظات |
---|---|
Azure Cosmos DB | |
Get-AzCosmosDBSqlDatabaseThroughput | احصل على معدل النقل المتوفر على Azure Cosmos DB لقاعدة بيانات NoSQL. |
Get-AzCosmosDBSqlContainerThroughput | احصل على معدل النقل المقدم على Azure Cosmos DB لحاوية NoSQL. |
Update-AzCosmosDBSqlDatabaseThroughput | تحديث قيمة معدل النقل لقاعدة بيانات Azure Cosmos DB لقاعدة بيانات NoSQL. |
Update-AzCosmosDBSqlContainerThroughput | يحدث قيمة معدل النقل ل Azure Cosmos DB لحاوية NoSQL. |
Invoke-AzCosmosDBSqlDatabaseThroughputMigration | ترحيل معدل نقل Azure Cosmos DB لقاعدة بيانات NoSQL. |
Invoke-AzCosmosDBSqlContainerThroughputMigration | ترحيل معدل نقل Azure Cosmos DB لحاوية NoSQL. |
مجموعات موارد Azure | |
Remove-AzResourceGroup | يحذف مجموعة الموارد بما في ذلك جميع الموارد المتداخلة. |
الخطوات التالية
للحصول على مزيدٍ من المعلومات عن Azure PowerShell، راجع وثائق Azure PowerShell.
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ