powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Как можно ускорить выполнение MDX-запроса
10 сообщений из 10, страница 1 из 1
Как можно ускорить выполнение MDX-запроса
    #33425306
dmitry_kz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, уважаемые форумчане...

Работаю в MS AS 2K.

Есть вот такой MDX-запрос:

Код: plaintext
1.
2.
3.
4.
select
NON EMPTY { [Measures].[Сальдо на начало],[Measures].[Недоимка],[Measures].[Переплата]} ON COLUMNS,
NON EMPTY { [TaxOrgs].[Level  04 ].Members * [Taxes].[OKED_1].[Name].Members * [TaxPayers].[OKED1].[Rnn].Members} ON ROWS
from OKEDs
where [Dates].[YQMD].[Все даты].[ 2005 ].[Quarter  1 ].[Февраль].[ 1 ]

[Measures].[Сальдо на начало] - это СМ
Код: plaintext
1.
2.
3.
4.
5.
6.
sum(
Ascendants([Dates].[YQMD].CurrentMember),
sum(
[Dates].[YQMD].FirstSibling:[Dates].[YQMD].CurrentMember,
[Measures].[Сумма операции]
)-[Measures].[Сумма операции]
)

[Measures].[Недоимка] - тоже СМ
Код: plaintext
Iif([Measures].[Сальдо на начало]< 0 , [Measures].[Сальдо на начало],  NULL)

[Measures].[Переплата] - тоже СМ
Код: plaintext
Iif([Measures].[Сальдо на начало]> 0 , [Measures].[Сальдо на начало],  NULL)

[TaxOrgs] - это иерархическое измерение налоговых комитетов.
Кол-во примерно 10 штук.

[Taxes] - это измерение с иерархией OKED_1. Кол-во записей примерно 450-500.

[TaxPayers] - это измерение налогоплательщиков. Кол-во записей примерно 100.

В чем может быть проблема, медленного выполнения данного запроса в MDX Sample Application. Время выполнения примерно 20 минут.

Заранее благодарю.
...
Рейтинг: 0 / 0
Как можно ускорить выполнение MDX-запроса
    #33425332
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для начала поройтесь в форуме и посмотрите как другие подобное делали.

Ваш запрос не оптимаолен в том, что

1. он полностью считается на клиенте (CM)
2. CM рассчитывабтся для всех ячеек даже если они потом удаляются NON EMPTY
...
Рейтинг: 0 / 0
Как можно ускорить выполнение MDX-запроса
    #33425527
dmitry_kz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
backfireДля начала поройтесь в форуме и посмотрите как другие подобное делали.

Ваш запрос не оптимаолен в том, что

1. он полностью считается на клиенте (CM)
2. CM рассчитывабтся для всех ячеек даже если они потом удаляются NON EMPTY

Извините, пожалуйста, но не могли бы Вы направить меня, какого рода темы искать?

Кстати, поиск по словам, типа "остаток", я уже прочитывал... Может конечно не обратил я своего внимание на что-то важное, но как мне показалось, то все там было реализовано через СМ... :)

Буду очень благодарен за помощь... :)
...
Рейтинг: 0 / 0
Как можно ускорить выполнение MDX-запроса
    #33425717
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прежде чем досаждать вас хитростями построения летающих запросов парочка вопросов.

сколько у вас фактов? сколько лет заполненно?
на каком железе упражняетесь?
как в дальнейшем планируете использовать свои MDX?
что будет клиентом?
как с переходом на AS2005?
...
Рейтинг: 0 / 0
Как можно ускорить выполнение MDX-запроса
    #33426392
dmitry_kz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сколько у вас фактов? сколько лет заполненно?

В таблице фактов на данный момент всего 52 записи. Я ведь пока только упражняюсь :-). Но вообще в действительности будет более 200 млн. записей. Объем этих 200 млн. за 2 года, в течении которых система наиболее полностью функционирует. В среднем в год в таблицу фактов будет попадать от 100 млн. записей.

на каком железе упражняетесь?

Пока на P-IV 2.5 GHz, ОЗУ - 512 Mb.

как в дальнейшем планируете использовать свои MDX?

Есть крупная распределенная информационная система, которая на данный момент работает уже в течении 3-х лет. В системе есть подсистема формирования отчетов. Заказчик желает, перевести встроенную подсистему отчетов на выделенный сервер с использованием ОЛАП. При этом есть ряд стандартных отчетов, утвержденной формы. Для формирования таких отчетов и планируем использовать MDX.

что будет клиентом?

Клиентом будет сама ИС и Excell. Заказчик не желает пока тратиться на приобретение нормального клиента. При этом, настройка Excell как клиента в наши задачи не входит. Т.е. у нас в ИС будет генерироваться MDX-запрос, потом результат этого самого MDX будет преобразован в HTML и показан пользователю. Возможно в дальнейшем заказчик решится на приобретение какого-либо клиента.

как с переходом на AS2005?

С переходом на AS2005 пока никак. Об этом можно на ближайшие годы забыть. Заказчик - это гос.структура. Соответственно закупка лицензионного ПО - дело не такое простое, к тому же в системе работает более 200 узлов, поэтому если закупать для каждого узла лицензии и ПО, то это будет очень круглая сумма, на которую данная гос. структура не подпишется.
...
Рейтинг: 0 / 0
Как можно ускорить выполнение MDX-запроса
    #33426686
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но вообще в действительности будет более 200 млн. записей. Объем этих 200 млн. за 2 года

Начните с построения в вашем хранилище таблицы помесячных (понедельных) остатков.
На CM вы такие объемы не вытянете на AS2000, кроме как на IA-64.
...
Рейтинг: 0 / 0
Как можно ускорить выполнение MDX-запроса
    #33427383
dmitry_kz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ага, спасибо :)

Если я правильно Вас понял, то мне надо сделать что-то вроде этого:
куб остатков

Только не помесячный, а на каждый день, т.к. отчет могут формировать на любую дату. Правильно?

И еще один вопросик (прошу прощения, если покажется глупым), если у меня схема такова:

OLTP -> DTS -> DWH -> MS AS 2K

то формирование табицы остатков будет происходить на этапе DTS, там же где и переливаются данные из OLTP в DWH. А потом на основе этой полученной таблицы будет строиться куб в MSAS2K. Так? :-)

Еще раз спасибо за помощь.

С уважением, Дмитрий.
...
Рейтинг: 0 / 0
Как можно ускорить выполнение MDX-запроса
    #33427457
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dmitry_kzАга, спасибо :)

Если я правильно Вас понял, то мне надо сделать что-то вроде этого:
куб остатков

Только не помесячный, а на каждый день, т.к. отчет могут формировать на любую дату. Правильно?

И еще один вопросик (прошу прощения, если покажется глупым), если у меня схема такова:

OLTP -> DTS -> DWH -> MS AS 2K

то формирование табицы остатков будет происходить на этапе DTS, там же где и переливаются данные из OLTP в DWH. А потом на основе этой полученной таблицы будет строиться куб в MSAS2K. Так? :-)

Еще раз спасибо за помощь.

С уважением, Дмитрий.

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

А на ваш вопрос относительно схемы рассчета я отвечу - Да, так.
...
Рейтинг: 0 / 0
Как можно ускорить выполнение MDX-запроса
    #33428485
Mosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
backfireУ меня таблицы остатков помесячная и понедельная. Остатки на произвольную нетекущую дату считаются в CM, но при этом используется предрассчитанные остаток на начало месяца или недели, в зависимости от выбранной иерархии времени
На мой взгляд - это самый разумный подход. Именно так мы всегда рекоммендуем это делать.

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
Как можно ускорить выполнение MDX-запроса
    #33429152
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mosha backfireУ меня таблицы остатков помесячная и понедельная. Остатки на произвольную нетекущую дату считаются в CM, но при этом используется предрассчитанные остаток на начало месяца или недели, в зависимости от выбранной иерархии времени
На мой взгляд - это самый разумный подход. Именно так мы всегда рекоммендуем это делать.

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights

Где рекомендуете? C интересом бы почитал эти рекомендации.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Как можно ускорить выполнение MDX-запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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