Наши SSAS имеют очень большое значение. Во время инкрементального запуска мы используем ProcessAdd для обработки измерения. Обработка этого измерения занимает 95% всего времени обработки куба.
Это измерение включает одну таблицу. Именованный запрос для измерения из DSV -
SELECT ABC, XYZ, DEF, PQR, PLADKey, LEFT(ABC, 3) AS DNL1, LEFT(ABC, 7) AS DNL2,
LEFT(ABC, 9) AS DNL3
FROM dbo.PLAD AS ad
В таблице более 33000000 строк, которые ежедневно увеличиваются. Возможно ли, что из-за большого количества строк processAdd работает медленно. Выбирает ли он автоматически только строки новостей или нам нужно указывать критерии фильтрации для идентификации новых строк (например, добавление условия where для выбора только данных, которые больше, чем последнее значение ключа)?
Мы используем AMO для создания сценария XMLA для обработки. Если нам нужно добавить фильтры, как мы это делаем в AMO?
Мы работаем над SQL Server 2008 R2.
Любые предложения, которые могут улучшить производительность обработки этого измерения, будут полезны.