Как рассчитать вероятный размер куба OLAP - PullRequest
4 голосов
/ 20 июня 2011

Кто-нибудь знает метод, который можно использовать для получения приблизительного размера куба OLAP на основе хранилища данных звездной схемы. Что-то, основанное на количестве измерений, количестве записей в таблицах измерений и количестве записей фактов и, наконец, количества агрегаций или отдельных записей и т. Д.

База данных, на которую я обращаюсь, имеет таблицу фактов с более чем 20 миллиардами строк и несколько таблиц измерений с 20 миллионами, 70 миллионами и 1,3 миллиардами строк.

Спасибо Николай

Ответы [ 3 ]

3 голосов
/ 06 июля 2011

Я вижу некоторые препятствия для создания этой оценки.Знание количества строк и количества элементов таблиц измерений в отдельности не так важно, как взаимосвязь между ними.

Представьте себе два измерения с низким количеством элементов с n и m уникальными значениями соответственно.Кэширование агрегатов OLAP по этим измерениям дает значения от n + m до n * m значений в зависимости от того, насколько тесно взаимосвязь напоминает чисто биекцию.Учитывая только предоставленную вами информацию, все, что вы можете сказать, это то, что в итоге вы получите менее 3.64 * 10^34 значений, что не очень полезно.

Я пессимистично настроен, есть алгоритм, достаточно быстрый, чтобыНе имеет смысла генерировать куб и взвешивать его, когда вы закончите.

2 голосов
/ 05 декабря 2012

Мы написали исследовательскую работу, которая кажется уместной:

Камел Ауиш и Даниэль Лемир, Сравнение пяти вероятностных методов оценки размеров по размеру в OLAP, DOLAP 2007, с. 17-24, 2007. http://arxiv.org/abs/cs.DB/0703058

0 голосов
/ 28 мая 2015

Хорошо. Вы можете использовать общее правило данных Analysis Services, размер которых составляет примерно 1/4 - 1/3 от тех же данных, которые хранятся в реляционной базе данных.

Эдвард.

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/6b16d2b2-2913-4714-a21d-07ff91688d11/cube-size-estimation-formula

...