Мне нужно сократить время обработки куба SSAS с помощью AMO при добавлении данных в таблицу фактов в хранилище данных.
Согласно документу Microsoft по SSAS:
ПроцессДобавить
"Для измерений добавляет новые элементы и обновляет заголовки и описания атрибутов измерения. Для групп мер и разделов добавляет новые доступные данные фактов и обрабатывает только соответствующие разделы."
Process Full
"Обрабатывает объект служб Analysis Services и все содержащиеся в нем объекты. При выполнении Process Full для объекта, который уже был обработан, службы Analysis Services удаляют все данные вобъект, а затем обрабатывает объект. Этот вид обработки требуется, когда структурное изменение было внесено в объект, например, когда иерархия атрибутов добавлена, удалена или переименована. "
Таким образом, со следующимкод, я мог бы иметь по крайней мере аналогичное время обработки для записи независимо от количества данных в data warehouse.
var start = DateTime.Now;
var query = "SELECT [dbo].[FactGradingResult].* FROM [dbo].[FactGradingResult] WHERE ([Id] = "+ grading2.Id+")";
ptn.Process(ProcessType.ProcessAdd,
new QueryBinding(dsv.DataSourceID, query));
var end = ptn.LastProcessed;
swch2 = (end - start).TotalMilliseconds;
Но ProcessAdd по-прежнему требуется около 900 мс для обновления куба одной таблицей фактов.Это типичное время ProcessAdd для SSAS на 8-ядерном компьютере с тактовой частотой 2,5 ГГц в Windows Server 2012?Если нет, то как я могу улучшить время обработки куба для каждой таблицы в таблице фактов?