Поделиться через


Учет особенностей таблицы фактов при слиянии секций

При слиянии секций фильтры на обеих секциях комбинируются с использованием оператора OR, чтобы создать фильтр для получающейся в результате секции. Этот комбинированный фильтр указывает набор фактов, используемый в получающейся в результате секции. Если исходная секция и целевая секция используют одну и ту же таблицу фактов в источнике данных или представлении источника данных, то комбинированный фильтр указывает данные таблицы фактов, подходящие для получающейся в результате секции. Поскольку факты, необходимые для получающейся в результате секции, присутствуют в таблице фактов, дальнейших действий не требуется.

Слияние таблиц фактов не осуществляется автоматически при слиянии секций. Необходимо вручную осуществить слияние таблиц фактов, когда секции, слияние которых осуществляется, имеют различные таблицы фактов. При слиянии секций, использующих различные таблицы фактов, получающаяся в результате секция ссылается только на первоначальную таблицу фактов целевой секции. Необходимо вручную осуществить слияние фактов из таблицы фактов исходной секции в таблицу фактов целевой секции. Можно также изменить источник для секции, получившейся в результате слияния, на именованный запрос, возвращающий содержимое двух отдельных таблиц фактов. Если этот этап не выполнен вручную, то таблица фактов не содержит полные данные.

Если секции, слияние которых осуществляется, основаны на двух различных именованных запросах в представлении источника данных, то необходимо изменить именованный запрос, на котором основана комбинированная секция, для включения всех строк, возвращаемых отдельными именованными запросами.

Секции MOLAP

При слиянии секций многомерного OLAP (MOLAP) также осуществляется слияние фактов, хранимых в многомерных структурах секций. В результате получается внутренне полная и последовательная секция. Однако факты, хранимые в секциях MOLAP, представляют собой копии фактов из таблицы фактов. При последующей обработке секции факты в многомерной структуре удаляются (только в случае полной обработки и обновления) и данные копируются из таблицы фактов, как указано в источнике данных и фильтре для секции. Если исходная секция использует не ту таблицу фактов, которую использует целевая секция, то необходимо вручную осуществить слияние таблицы фактов исходной секции с таблицей фактов целевой секции для гарантии того, что полный набор данных доступен при обработке получившейся в результате секции. Это также имеет место, когда две секции были основаны на различных именованных запросах.

ПредупреждениеВнимание!

Получившаяся в результате секция MOLAP с неполной таблицей фактов содержит таблицу фактов, получившуюся в результате внутреннего слияния, и функционирует корректно до ее обработки.

Секции HOLAP и MOLAP

При слиянии секций гибридного OLAP (HOLAP) или реляционного OLAP (ROLAP), имеющих различные таблицы фактов, слияние этих таблиц фактов не осуществляется автоматически. Если слияние этих таблиц фактов не осуществлено вручную, то для получившейся в результате секции доступна только таблица фактов, связанная с целевой секцией. Факты, связанные с исходной секцией, недоступны для углубленной детализации в получившейся в результате секции, и при обработке этой секции статистические вычисления не суммируют данные из недоступной таблицы.

Важное примечаниеВажно!

Получившаяся в результате слияния секция HOLAP или ROLAP с неполной таблицей фактов содержит правильные статистические вычисления, но неполные факты. Запросы, относящиеся к отсутствующим фактам, возвращают неправильные данные. При обработке секции статистические схемы вычисляются только на основе доступных фактов.

Отсутствие недоступных фактов может не быть замечено, если только пользователь не попытается осуществить углубленную детализацию факта в недоступной таблице или не выполнит запрос, для которого необходим факт из недоступной таблицы. Поскольку агрегаты комбинируются во время процесса слияния, запросы, результаты которых основаны только на статистических вычислениях, возвращают правильные данные, в то время как другие запросы могут возвращать неправильные данные. Даже после обработки получившейся в результате секции отсутствие данных из недоступной таблицы фактов может не быть замечено, особенно если они представляют собой лишь малую часть скомбинированных данных.

Слияние таблиц фактов может быть осуществлено до или после слияния секций. Однако агрегаты не будут точно представлять базовые факты до завершения выполнения обеих операций. Рекомендуется осуществлять слияние секций HOLAP или ROLAP, обращающихся к различным таблицам фактов, когда пользователи не подключены к кубу, содержащему эти секции.

Можно также создать именованный запрос в представлении источника данных куба, возвращающий комбинированное содержимое двух различных таблиц фактов. После этого можно изменить источник для получившейся в результате слияния секции на этот именованный запрос.

См. также

Основные понятия