의미 체계 모델 스케일 아웃 구성

Power BI 서비스 또는 Power BI 데이터 세트 REST API를 사용하여 스케일 아웃을 사용하도록 설정할 수 있습니다. 의미 체계 모델 스케일 아웃을 구성하기 전에 Power BI 의미 체계 모델 스케일 아웃 개요를 읽어보세요.

Power BI 서비스에서 스케일 아웃 사용

Power BI 서비스에서 의미 체계 모델에 스케일 아웃을 사용하도록 설정하려면 다음 단계를 수행합니다.

  1. Power BI 서비스에서 스케일 아웃을 사용하도록 설정하려는 의미 체계 모델을 사용하여 작업 영역을 엽니다.

  2. 의미 체계 모델의 추가 옵션(...)을 선택합니다.

  3. 메뉴에서 설정을 선택합니다.

  4. 설정 페이지에서 대규모 의미 체계 모델 스토리지 형식이 사용하도록 설정되지 않은 경우 사용하도록 설정합니다.

  5. 쿼리 스케일 아웃을 사용하도록 설정하고 적용을 선택합니다.

    Power BI 서비스에서 스케일 아웃 사용 설정 방법을 보여 주는 스크린샷.

데이터 세트 REST API를 사용하여 스케일 아웃 사용

이 섹션에서는 Power BI 데이터 세트 REST API를 사용하여 의미 체계 모델 스케일 아웃을 구성하는 방법을 설명합니다.

datasetId 가져오기

datasetId를 가져오려면 Get-PowerBIDataset를 사용합니다. workspaceId 및 의미 체계 모델 이름을 지정해야 합니다.

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"

현재 스케일 아웃 구성 가져오기

의미 체계 모델 스케일 아웃을 구성하기 전에 현재 구성을 결정합니다.

###
# 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."
}

의미 체계 모델 스케일 아웃 사용

의미 체계 모델 스케일 아웃을 사용하도록 설정하려면 maxReadOnlyReplicas을(를) -1 또는 0이 아닌 값으로 설정합니다. -1 값을 사용하면 Power BI가 Power BI 용량에서 지원하는 만큼 읽기 전용 복제본을 만들 수 있습니다. 또한 복제본 수를 최대 용량보다 낮은 값으로 명시적으로 설정할 수도 있습니다. 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
        }
     }

의미 체계 모델 스케일 아웃 사용 안 함

의미 체계 모델 스케일 아웃을 사용하지 않도록 설정하려면 maxReadOnlyReplicas을(를) 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
        }
     }