powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / оптимизация разреженных данных
9 сообщений из 9, страница 1 из 1
оптимизация разреженных данных
    #32831164
Michail Dalakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблему анализа пытаюсь решить тем что на основании существующих таблиц поддерживаю актуальную таблицу фактов и применяю схему "звезда" пользуюсь стандартными средствами СУБД, т.е. результат получается в результате выполнения SQL запроса с group by "измерения", проблема заключается в том, что данные в таблице фактов сильно разреженны, например из 500 000 строк таблицы, group by по всем измерениям дает
400 000 строк, можно ли провести какую нибудь оптимизацию направленную на уменьшение размера таблицы фактов не удаляя из анализа измерения?
...
Рейтинг: 0 / 0
оптимизация разреженных данных
    #32831250
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michail DalakovПроблему анализа пытаюсь решить тем что на основании существующих таблиц поддерживаю актуальную таблицу фактов и применяю схему "звезда" пользуюсь стандартными средствами СУБД, т.е. результат получается в результате выполнения SQL запроса с group by "измерения", проблема заключается в том, что данные в таблице фактов сильно разреженны, например из 500 000 строк таблицы, group by по всем измерениям дает
400 000 строк, можно ли провести какую нибудь оптимизацию направленную на уменьшение размера таблицы фактов не удаляя из анализа измерения?

А в чем собственно проблема и что Вы хотит получить в результате оптимизации?
...
Рейтинг: 0 / 0
оптимизация разреженных данных
    #32831296
Michail Dalakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В результате оптимизации хочу уменьшить количество уникальных комбинаций в таблице фактов,

это важно для быстродействия т.к. особенность заключается в том что группировке подвергается не вся таблица фактов а только часть, чем меньше будет уникальных комбинаций тем меньше строк будет подвергаться группировке и быстрее будет получен результат, основные тормоза связаны сгруппиовкой, например проведенный мной анализ показал, что поиск строк которые необходимо группировать занимает ~0.3 c, а их группировка ~15с
...
Рейтинг: 0 / 0
оптимизация разреженных данных
    #32831691
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для уменьшения времени группировки надо оптимизировать запрос и индексы. С этим вопросом вам прекрасно помогут в формуе по MS SQL, Oracle или какая у вас СУБД?

Для уменьшения строк в таблице фактов можно создать хранилище (хотя бы из одной таблицы). Тогда таблицей фактов у вас будет физическая таблица, данные в которой в точности соответствуют view, и для построения куба не надо будет проводить расчётов и групировок на уровне СУБД.
...
Рейтинг: 0 / 0
оптимизация разреженных данных
    #32831752
Michail Dalakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
oracle

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

насчет второй части совсем не понял в результате чего таблица фактов уменьшится ведь она по сути дела является уже пре-сгруппированой таблицей на основании данных физической таблицы и по количеству записей естествено меньше
...
Рейтинг: 0 / 0
оптимизация разреженных данных
    #32831945
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michail DalakovВ результате оптимизации хочу уменьшить количество уникальных комбинаций в таблице фактов,

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

С каким OLAP продуктом вы работаете? Какой тип OLAP хранилища ROLAP или MOLAP?
...
Рейтинг: 0 / 0
оптимизация разреженных данных
    #32832017
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michail Dalakovнасчет индексов хочу сказать что они никак не влияют на группировку т.к. для того чтобы сгруппировать надо просканировать всю таблицу
Не просто просканировать, а сначала отсортировать. А индексы на это дело очень сильно влияют. В любой СУБД, где они есть.
Michail Dalakov
насчет второй части совсем не понял в результате чего таблица фактов уменьшится ведь она по сути дела является уже пре-сгруппированой таблицей на основании данных физической таблицы и по количеству записей естествено меньше
Внимательно прочитайте свой же первый пост
Michail Dalakovданные в таблице фактов сильно разреженны, например из 500 000 строк таблицы, group by по всем измерениям дает
400 000 строк
Вот за счёт того, что во вновь созданной таблице будет на 100 000 строк меньше.
...
Рейтинг: 0 / 0
оптимизация разреженных данных
    #32832135
Константин Лисянский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в чём, собственно, заключается "проблема анализа"?
Постановка вопроса звучит как-то не очень понятно. Не могли бы уточнить?
А ещё неплохо было бы привести скрипт создания таблицы и запрос. А то, не очень понятно, что оптимизируем.


С уважением,
Константин Лисянский
http://lissianski.narod.ru
...
Рейтинг: 0 / 0
оптимизация разреженных данных
    #32832324
олапист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да, вопрос не очень понятен
но рискну предположить что вам поможет методика "junk dimensions" описанная у Кимбалла
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / оптимизация разреженных данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]