Я обрабатываю наши табличные модели (уровень совместимости 1200), используя Табличную объектную модель и сценарий powershell.Сценарий использует некоторые метаданные, чтобы определить, какие разделы необходимо обработать для данной таблицы, а затем выполняет process full
для этих разделов.В некоторых случаях сценарий выполняет Process Full
для всей таблицы (например, после первого развертывания модели на сервере)
Когда сценарий обрабатывает всю таблицу, я хочу иметь возможностьчтобы контролировать количество одновременных запросов к источнику данных в любой момент времени, поэтому в моем скрипте я создаю новый экземпляр Microsoft.AnalysisServices.Tabular.SaveOptions
и задаю для свойства MaxParallelism число от 1 до 10Затем я сохраняю изменения в модели на сервере и жду завершения обработки.
$serverTable.RequestRefresh([Microsoft.AnalysisServices.Tabular.RefreshType]::Full)
$db.Update( "ExpandFull")
$saveOptions = New-Object Microsoft.AnalysisServices.Tabular.SaveOptions
$saveOptions.MaxParallelism = $maxParallelism
$result = $db.Model.SaveChanges($saveOptions)
Если я наблюдаю за сервером SQL, к которому подключается таблица, я вижу несколько запросов (8 из которыхвремя) из моей коробки SSAS независимо от того, что я установил MaxParallelism.Читая документацию по этому свойству, это значение не гарантирует параллелизма, поскольку сервер может применять другие ограничения.Я не вижу никаких свойств сервера , в которых упоминается параллелизм.Каковы другие ограничения / почему это свойство не влияет на количество запросов, выполняемых одновременно?