System.OutOfMemoryException при MDX-запросе с использованием Invoke-ASCmd
Я хочу импортировать набор результатов MDX в Powershell, используя Invoke-ASCmd.
Import-Module SQLPS -DisableNameChecking
Import-Module SQLASCMDLETS
Invoke-Sqlcmd `
-ServerInstance $ServerInstance `
-Database $Database `
-Query $Query
Это не с System.OutOfMemoryException
- Тот же самый запрос MDX отлично работает в SQL Server Management Studio.
- Все еще много свободной оперативной памяти.
- Powershell работает в 64-битном режиме.
- MaxMemoryPerShellMB увеличен.
- Я использую SQL Server 2016 и Powershell 4
Что делать, чтобы импортировать большие наборы данных из служб аналитики SQL Server с помощью Powershell?
1 ответ
Я нашел обходной путь для этого:
Если вы добавите связанный сервер к SQL-серверу в куб SSAS, вы можете выполнить его в оболочке SQL.
Invoke-Sqlcmd `
-ServerInstance $ServerInstance `
-Query "SELECT * FROM OpenQuery([SSAS_LinkedServer],'$( $query.Replace("'", "''" ) )')"