Konfigurace sémantického modelu se škálováním na více instancí
Horizontální navýšení kapacity můžete povolit v služba Power BI nebo pomocí rozhraní REST API datových sad Power BI. Před konfigurací sémantického modelu si přečtěte přehled sémantických modelů Power BI se škálováním na více instancí.
Povolení horizontálního navýšení kapacity v služba Power BI
Pokud chcete povolit horizontální navýšení kapacity pro sémantický model v služba Power BI, postupujte takto:
V služba Power BI otevřete pracovní prostor sémantickým modelem, pro který chcete povolit horizontální navýšení kapacity.
Vyberte další možnosti sémantického modelu (...).
V nabídce vyberte Nastavení.
Na stránce nastavení povolte formát úložiště velkého sémantického modelu, pokud není povolený.
Povolte horizontální navýšení kapacity dotazu a vyberte Použít.
Povolení horizontálního navýšení kapacity pomocí rozhraní REST API datových sad
Tato část popisuje použití rozhraní REST API datových sad Power BI ke konfiguraci sémantického modelu horizontálního navýšení kapacity.
Získání id datové sady
K získání id datové sady použijte Get-PowerBIDataset. Je nutné zadat id pracovního prostoru a sémantický název modelu.
Login-PowerBI | Out-Null
$workspaceId = '<enter workspaceId>'
$datasetId = Get-PowerBIDataset -WorkspaceId $workspaceId `
| Where{$_.Name -match "<enter semantic model name>"} `
| Select-Object -ExpandProperty Id -First 1 `
| ForEach-Object {$_.Guid}
Write-Host
Write-Host "Workspace Id: $workspaceId"
Write-Host "Dataset Id: $datasetId"
Získání aktuální konfigurace horizontálního navýšení kapacity
Před konfigurací sémantického modelu horizontálního navýšení kapacity určete aktuální konfiguraci.
###
# Get current scale-out configuration
###
Login-PowerBI | Out-Null
$workspaceId = '<enter workspaceId>'
$datasetId = Get-PowerBIDataset -WorkspaceId $workspaceId `
| Where{$_.Name -match "<enter semantic model name>"} `
| Select-Object -ExpandProperty Id -First 1 `
| ForEach-Object {$_.Guid}
$response = Invoke-PowerBIRestMethod -Url "groups/$workspaceId/datasets/$datasetId" -Method Get | ConvertFrom-Json
$response.queryScaleOutSettings | Format-List
if ($response.queryScaleOutSettings.maxReadOnlyReplicas -eq -1 `
-or $response.queryScaleOutSettings.maxReadOnlyReplicas -gt 0)
{
Write-Host "Semantic model scale-out is enabled."
}
else
{
Write-Host "Semantic model scale-out is disabled."
}
Povolení horizontálního navýšení kapacity sémantických modelů
Pokud chcete povolit sémantický model se škálováním na více instancí, nastavte maxReadOnlyReplicas
hodnotu -1
nebo jinou hodnotu než 0. Hodnota -1
umožňuje Power BI vytvářet tolik replik jen pro čtení, kolik vaše kapacita Power BI podporuje. Počet replik můžete také explicitně nastavit na hodnotu nižší než maximální kapacita. Doporučuje se nastavení maxReadOnlyReplicas
-1
.
###
# Enable scale-out
###
Login-PowerBI | Out-Null
$workspaceId = '<enter workspaceId>'
$datasetId = Get-PowerBIDataset -WorkspaceId $workspaceId `
| Where{$_.Name -match "<enter semantic model name>"} `
| Select-Object -ExpandProperty Id -First 1 `
| ForEach-Object {$_.Guid}
Invoke-PowerBIRestMethod -Url "groups/$workspaceId/datasets/$datasetId" `
-Method Patch -Body '{ "queryScaleOutSettings": { "maxReadOnlyReplicas": -1 }}'
Invoke-PowerBIRestMethod -Url "groups/$workspaceId/datasets/$datasetId" -Method Get `
| ConvertFrom-Json | Select-Object -ExpandProperty queryScaleOutSettings `
| ForEach {
if($_.maxReadOnlyReplicas -eq -1)
{
Write-Host "Success! Semantic model scale-out has been enabled."
} else
{
Write-Host "Something went wrong! Semantic model scale-out is still disabled." -ForegroundColor Red
}
}
Zakázání sémantického modelu horizontálního navýšení kapacity
Pokud chcete zakázat sémantický model horizontálního navýšení kapacity, nastavte maxReadOnlyReplicas
hodnotu 0
.
###
# Disable scale-out
###
Login-PowerBI | Out-Null
$workspaceId = '<enter workspaceId>'
$datasetId = Get-PowerBIDataset -WorkspaceId $workspaceId `
| Where{$_.Name -match "<enter semantic model name>"} `
| Select-Object -ExpandProperty Id -First 1 `
| ForEach-Object {$_.Guid}
Invoke-PowerBIRestMethod -Url "groups/$workspaceId/datasets/$datasetId" `
-Method Patch -Body '{ "queryScaleOutSettings": { "maxReadOnlyReplicas": 0 }}'
Invoke-PowerBIRestMethod -Url "groups/$workspaceId/datasets/$datasetId" -Method Get `
| ConvertFrom-Json | Select-Object -ExpandProperty queryScaleOutSettings `
| ForEach {
if($_.maxReadOnlyReplicas -eq 0)
{
Write-Host "Success! Semantic model scale-out has been disabled."
} else
{
Write-Host "Something went wrong! Semantic model scale-out is still enabled." -ForegroundColor Red
}
}