Microsoft SSAS-Подключение табличной модели (TM) к Power BI через режим импорта — «недостаточно доступной памяти для приложения»

#dax #ssas #powerbi-desktop #ssas-tabular #memory-limit

#dax #ssas #powerbi-рабочий стол #ssas-табличные #ограничение памяти

Вопрос:

У меня есть элементарный вопрос при подключении базы данных SSAS-TM (службы SQL Server Analysis Services — Табличная модель) (локальной) на моем собственном локальном компьютере к рабочему столу Power BI (также на моем локальном компьютере) через режим импорта.

Я совсем не знаком с параметрами выделения памяти.

Реляционная база данных, которая у меня есть, — это очень простая программа AdventureWorksDW. Я разрабатываю проект табличной модели служб SQL Server Analysis Services с использованием Visual Studio 2015 и развертываю проект в качестве новой базы данных в ядре служб Analysis Services. Я могу запрашивать таблицы в этой базе данных SSAS-TM в следующем формате в SSMS (среда SQL Server Management Studio), используя язык DAX:

ОЦЕНИТЕ «имя таблицы»

Однако, когда я пытаюсь подключить эту базу данных SSAS-TM к своему рабочему столу Power BI с помощью подключения для импорта, я получаю следующую ошибку.

Службы анализа: Операция была отменена из-за нехватки доступной памяти для приложения. При использовании 32-разрядной версии продукта рассмотрите возможность обновления до 64-разрядной версии или увеличения объема доступной памяти на компьютере.

У меня есть свойства из SSMS в этом файле изображения.введите описание изображения здесь

Я попытался сослаться на некоторые ссылки, связанные с настройкой некоторых параметров памяти Vertipaq, после ссылки на некоторые ссылки в docs.microsoft.com. Это не принесло мне никакой пользы.

Мой простой вопрос заключается в следующем:

Какие свойства мне нужно изменить в файле изображения выше, чтобы это соединение было успешным? Это всего лишь тренировка, поэтому я использую здесь Adventure Works DW. Так что размер не проблема. У моего ноутбука много памяти и места на диске, и он 64-разрядный. Рабочий стол Power BI является 64-разрядным.

Кто-нибудь может мне помочь ?

Ответ №1:

Соединитель Power BI для служб Analysis Services, в котором есть средство выбора таблиц, будет генерировать запрос многомерных выражений вместо запроса DAX. И если вы попытаетесь извлечь больше, чем несколько строк, это не удастся. Это известная проблема, но с низким приоритетом, потому что.

  1. Не импортируйте из SSAS. Используйте Live Connect. У вас уже есть куб/набор данных, вы можете просто подключиться к нему и писать отчеты.
  2. Если вам абсолютно необходимо импортировать из SSAS, используйте запрос DAX, например

В М:

 AnalysisServices.Database("MySSAS", "AdventureWorksDW", [Query="evaluate FactResellerSales", Implementation="2.0"])  

или в пользовательском интерфейсе

введите описание изображения здесь

Комментарии:

1. что делать, если мне нужно импортировать много таблиц, а не только фактопродажи ? нужно ли мне делать это несколько раз ? я вижу, что для небольших таблиц импорт происходит, но для больших таблиц он выдает вышеуказанную ошибку (как вы упомянули в своем ответе). Когда я использую режим Live Connect, я пропускаю представление данных на рабочем столе Power BI.

2. Если вы хотите импортировать данные, импортируйте их из SQL Server, а не из служб Analysis Services.

3. Затем вам следует использовать оперативное подключение к службам SSAS в Power BI. Вы не хотите копировать все эти данные из служб SSAS в Power BI. Чтобы обойти проблему отсутствия представления данных в Live Connect, добавьте несколько страниц отчетов для изучения данных.

4. Если вы уже развернули табличную модель SSAS и запрашиваете эту базу данных SSAS для получения данных, вместо того, чтобы снова извлекать все эти таблицы в PBI, вы можете написать запрос DAX (путем уточнения мер, которые уже существуют в базе данных SSAS/ путем определения мер в новом запросе DAX, который создается и уточняется во время выполнения), чтобы получить абсолютную преобразованную таблицу.

5. в любом случае, я решил использовать LiveConnect; но я сравнивал два варианта