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

Была поставлена следующая задача:
Оценить сколько дней не было возможности продавать товар из-за того, что товара не было на складе. Для групп товаров агрегировать эту оценку по сумме.

Есть виртуальный куб на MSAS2000, объединяющий остатки с продажами, в котором в числе прочих имееются измерения времени (до дня) и товаров (~10000). Задачу решает calculated member, т.к. я не нашел простого способа включить эту оценку в меры куба (со всеми плюсами серверного агрегирования), чтобы при этом структура куба не трансформировалась настолько, что для интерпретации данных куба требуется специально обученный толкователь.

В итоге, calculated member как-то работает. Для расчета, случился ли Out Of Stock (OOS) по товару в этот день используются меры начального остатка (BR) и транзакций (Tr) за день. OOS1=1, если BR<=0 и Tr>0 (продавали, но могли продать больше), OOS2=1, если BR<=0 и Tr=0 (не могли продавать). Понятно, что при такой организации вычислений на верхних уровнях времени/товара похвастаться большой скоростью работы этого MDX нельзя. Пытался повысить скорость по крайней мере правильным агрегированием Tr и BR, а именно как-то принудить систему создавать агрегаты по уровню "товары" измерения товаров (это не самый нижний уровень - ниже партия производителя ~50000 и я предполагаю, что использование агрегатов по уровню продуктов ~10000 несколько повысит скорость выполнения MDX), но нашел только возможность блокировать некоторые уровни при создании агрегатов, что мне не подходит (1. это не гарантирует создание агрегата по требуемому уровню, 2.не хочу блокировать другие запросы). Может принудить его к созданию нужных агрегатов сегмента через DSO AddGoalQuery (clsPartitionAnalyzer)?

Что можно сделать, чтобы по крайней мере, понизить уровень проблемы? Нельзя ли, все же, как-то обойтись агрегированием и не прибегать к глубокому перепроектированию куба? Я слышал, что MDX выполняет компьютер клиента, если это так, то я так понимаю, в моей реализации OOS ОЛАП выступает по отношению к клиенту практически в роли файл-сервера. Нельзя ли с этим что-либо сделать? Естественно, требуется решение задачи в рамках MSAS2000.

Заранее спасибо всем, кто отзовется.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32683077
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
остатки у вас в каком виде хранятся?
...
Рейтинг: 0 / 0
Проблемы производительности
    #32683588
Остатки хранятся в виде неагрегированного куба остатков (Remainder), в котором хранятся остатки на начало месяцев. Нижние уровни времени в этом кубе заблокированы. Логистические транзакции хранятся в другом (агрегированном) кубе (Transaction) c детализацией по времени до дня. Остатки/движения на любую точку времени получаются в виртуальном кубе (Rest), построенном над этими двумя. При этом для получения остатка на элемент иерархии времени (в общем случае отличный от месяца) используется остаток из Remainder родителя-месяца текущего элемента времени плюс сумма (Transaction) на всех уровнях (между месяцем и тек. уровнем) "старших братьев" текущего элемента (предполагается что тек. элемент - ниже месяца). Мои иерархии времени: Год, Квартал, Месяц, День (YQMD) и Год, Неделя, День (YWD). Для получения остатка на элемент в YWD, элемент отображается (LinkMember) в соответствующий день иерархии YQMD из которой и извлекается значение.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32684096
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я понял, поправьте меня, если я не прав, все крутится вокруг, определения количества дней в выбранном периоде, когда данный товар не был доступен к продаже.
Эта величина аггрегирется суммирование, идти по иерархии времени вверх. Аггрегировать ее по иерархии товара смысла нет. Веди если товара А небыло в продаже 5 дней в выбраннй период, а товара Б - 10 дней в период. То о мы разумного умозаключения сделать не сможем. А вот параметр типа (количество дней * среднестатистическую дневную продажу) даст нам уже "потенциально упущенную продажу" которую можно аггрегировать по всем направлениям.

Если мощности SQL сервера хватит, то я бы это делал на уровне SQL сервера, строя таблицу фактов - "отсутствие/недостаток товара на складе". А потом строил куб на основе этой таблички и все дела и никакого колдовства на уровне CalculatedMember и ни каких проблнм с производительностью.

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

Эта величина аггрегируется суммированием, если идти по иерархии времени вверх. Аггрегировать же ее по иерархии товара смысла нет. Ведь если товара А небыло в продаже 5 дней в выбраннй период, а товара Б - 10 дней в период. То ничего разумного о группе этих товаров мы сказать не сможем. А вот параметр типа (количество дней * среднестатистическую дневную продажу) даст нам уже "потенциально упущенную продажу" которую можно аггрегировать по всем направлениям.

Если мощности SQL сервера хватит, то я бы это делал на уровне SQL сервера, строя таблицу фактов - "отсутствие/недостаток товара на складе". А потом строил куб на основе этой таблички и все дела и никакого колдовства на уровне CalculatedMember и ни каких проблем с производительностью.

Если я что то упустил в постановке вашей задачи, то поправьте, please.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32684179
Константин Лисянский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валентин Коношенко Для расчета, случился ли Out Of Stock (OOS) по товару в этот день используются меры начального остатка (BR) и транзакций (Tr) за день. OOS1=1, если BR<=0 и Tr>0 (продавали, но могли продать больше), OOS2=1, если BR<=0 и Tr=0 (не могли продавать).

Валентин, а как может остаток быть меньше нуля? Знак перепутали?

За какой период надо считать потерянные продажи?

У Вас розница или опт?


backfireА вот параметр типа (количество дней * среднестатистическую дневную продажу) даст нам уже "потенциально упущенную продажу" которую можно аггрегировать по всем направлениям.

Идея правильная, но цифра получится, на мой взгляд, довольно приближённая.




С уважением,
Константин Лисянский
http://lissianski.narod.ru
...
Рейтинг: 0 / 0
Проблемы производительности
    #32684302
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Идея правильная, но цифра получится, на мой взгляд, довольно приближённая.

конечно приближенная, как и в любой мат-модели, а я предложил простейшую. Если вовлечь дополнительные факторы, то можно и уточнить.

Я так и не получил ответа от г-на Коношенко, правильно ли я понял решаемую им задачу.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32684932
backfireЭта величина аггрегирется суммирование, идти по иерархии времени вверх. Аггрегировать ее по иерархии товара смысла нет. Веди если товара А небыло в продаже 5 дней в выбраннй период, а товара Б - 10 дней в период. То о мы разумного умозаключения сделать не сможем.
Действительно, сначала она агрегировалась только по времени, а на уровне групп товаров оценка строилась на основании остатка и продажи группы - так потребовали логисты. Надо сказать, я тоже не видел физического смысла такой оценки для групп товаров, однако утверждалось, что он есть. Такая "облегченная" схема в моей реализации работала вполне эффективно. Однако, в реальном применении для групп оценка оказалась малоприменима, т.к. по моим наблюдениям над логистами она не выполняла 2 - х главных задач: 1. Привлекать внимание к группе товаров, имеющих OOS (в общем случае она их может пропускать) и 2. Давать более-менее здравую оценку степени OOS товаров группы (она дает какую-то валовую оценку OOS группы). В общем случае можно сказать, что оценка на уровне группы в такой постановке никак напрямую не кореллировала с OOS товаров группы.
В новой постановке все же требуется агрегирование по товарным группам. Конечно, "потенциально упущенную продажу" мы для группы не получим, но например средний % OOS для товара группы получить удастся - что в общем удовлетворяет двум выше сформулированным критериям "триггерируемости" и "адекватности" (условно, назовем так :)).
...
Рейтинг: 0 / 0
Проблемы производительности
    #32685002
Константин ЛисянскийВалентин, а как может остаток быть меньше нуля? Знак перепутали?

За какой период надо считать потерянные продажи?

У Вас розница или опт?

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

По поводу периода. Вероятно, Вы хотите узнать верхний уровень времени, на котором еще кого-то интересует эта оценка - мне верхний уровень не ограничивали, однако, All Members из области определения я исключил... чтобы определять по нему используемую иерархию времени, т.к. пересечения YQMD и YWD уж точно лишены всякого смысла. Можно сказать, что оценка определена на области, когда одна (и только одна :)) из иерархий установлена на All Members.

Задачи считать потерянные продажи мне поставлено не было. В данном случае интерес скорее направлен на эффективность работы склада, обеспечивающего продажи.

Далее, есть и опт и розница, дистрибьюция.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32687845
Torin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет !
Валентин работает у нас по направлению BI

Мы немного запутали Вас. Вопрос звучит примерно так:
Как на основе известных формул (сложных, по шкале времени, для оценки запасов), в кубах : остатков + куб движения = виртуальный куб
Сделать эффективное агрегирование (индексы ?, агрегаты ?)
Валя, приведи формулы, плиз

Начали рыть потому, что OLEDB провайдер 8.0 для AS тупо все тянет на клиента - а клиент от нас на тонком канале и далеко.. Клиент -
ProClarity Pro 5.3
...
Рейтинг: 0 / 0
Проблемы производительности
    #32688564
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TorinНачали рыть потому, что OLEDB провайдер 8.0 для AS тупо все тянет на клиента - а клиент от нас на тонком канале и далеко.. Клиент -
ProClarity Pro 5.3

И будет тянуть, и хоть тресни. Единственный выход это middleware. У PClariry это есть, но стоит не по-детски.

Я от этого ушел через собственный middleware ну и ессно собственного клиента.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32689362
Jurii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To backfire:

И будет тянуть, и хоть тресни. Единственный выход это middleware. У PClariry это есть, но стоит не по-детски.

Если не секрет, какой там примерно порядок цен?
...
Рейтинг: 0 / 0
Проблемы производительности
    #32690703
Torin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я разочаровался в ProClarity Analytic Server.
Ничего принципиально нового он не дает. Служит для того, чтобы хранить предпроектированные запросы как Briefing book (публикуются из Desktop версии).
MDX выполняется на стороне сервера только в одном случае - когда пользователь работает как Standart клиент - тогда интерфейс рисуется очень убогим html-ом, и результаты им же.
Есть еще Professional Web клиент - но он , также как и Desktop клиент, устанавливается (с activex) на стороне клиента, работает просто в окружении IE (не удивительно - activex же все).
Мои тесты показали, что реального выйгрыша в скорости выполнения запроса и возврата результата на клиента нету ;-( В некоторых случаях Web client просит указать соединение с OLAP сервером !!!
Более того, Professional Web клиент не позволяет начать анализ с "нуля", обязательно должне быть опубликованный Briefing book.
Вообщем, непонятно, фикция какая-то
Стоит срань эта от 15 кило евров (только сервер). Прайсинг очень жесткий , руссифицировать не хотят.
Но Desktop версия, конечно, классная !
...
Рейтинг: 0 / 0
Проблемы производительности
    #32690707
Torin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл дописать !
Что думает ?уважаемый? MS по поводу "OLEDB Multidimentional proviider 8.0" ?
А точнее - какие проблемы сделать так, чтобы запросы на стороне сервера _ВСЕГДА_ выполнялись ??
...
Рейтинг: 0 / 0
Проблемы производительности
    #32690770
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TorinЗабыл дописать !
Что думает ?уважаемый? MS по поводу "OLEDB Multidimentional proviider 8.0" ?
А точнее - какие проблемы сделать так, чтобы запросы на стороне сервера _ВСЕГДА_ выполнялись ??

Я не MS, но предложу.
1. Найти приличный XMLA клиент.
2. Перейти на Юкошу.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32691555
Torin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рекомендация сродни "надо больше зарабатывать" ;-)
Все знают, что надо, но никто не говорит как ;-))
Я человек дела - покажите - посомтрим, оценим, купим. если стоит того.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32694547
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
backfire TorinНачали рыть потому, что OLEDB провайдер 8.0 для AS тупо все тянет на клиента - а клиент от нас на тонком канале и далеко.. Клиент -
ProClarity Pro 5.3

И будет тянуть, и хоть тресни. Единственный выход это middleware. У PClariry это есть, но стоит не по-детски.

Я от этого ушел через собственный middleware ну и ессно собственного клиента.

Глупый вопрос - а Windows Terminal Service тут бессилен?
...
Рейтинг: 0 / 0
Проблемы производительности
    #32695015
Фотография Валек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сама Майкрософт не рекомендует ставить на один сервер терминал и скл, но вот интересно в отношении терминал и as это тоже верно. т.к. нам приходиться использовать связку клиент->терминал сервер->sql+as сервер пока вроде нормально, но объемы еще детские
...
Рейтинг: 0 / 0
Проблемы производительности
    #32695118
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Windows Terminal Service тут бессилен?

Всем известно, что текущая реализация MS AS сильно использует кештрование на строне клиента (Pivot Table Services), если будет использоваться толстый клиент, то в каждом приложени, будт то ProClarity или Excel, будет расзодоваться немалое количество мегабайт на приватный кеш этого приложения, если же соединение с MS AS сместить на сторону Application Server, который будет отрабатывать MDX запросы, то его кеш будет использоваться более эффективно.
Для 1-5 пользователей это не важно, а когда их 20-100, то пол-сотни соединений с MS AS, каждое со своим кэшем Pivot Table Services, который в зависимости от типа запросов, количества и размера измерений легко растет до парочки сотен мегабайт, легко загонит в swap даже сервер с 8 Gb на борту.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32696497
Torin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pi
Глупый вопрос - а Windows Terminal Service тут бессилен?
Стиль решения сродни вопросу ;-). Можно, на этом же сервере TS и стоит, но ! Самому себе отправлять почтой результаты ?, бороться с волнообразными тормозами ?, Учтем, что надо канал расширять, Как печатать ?. TS также ненадежно поддерживает печать в удаленный порт и обмен содержимым буфера обмена (например, без вопросом начнет тянуть 20 Mb из буфера на клиента !)
Нет, это не для нас..

backfire Windows Terminal Service тут бессилен?
...если же соединение с MS AS сместить на сторону Application Server, который будет отрабатывать MDX запросы..
Дядьку ;-), я уже пищу, скажи - что такое "нормальный XMLA клиент" и где найти "Application Server", как сказанно выше ? Я думал, что "Application Server" и есть ProClarity Analytic Server, но жестоко ошибся.
Не томи !
;-))
...
Рейтинг: 0 / 0
Проблемы производительности
    #32697915
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валексама Майкрософт не рекомендует ставить на один сервер терминал и скл, но вот интересно в отношении терминал и as это тоже верно. т.к. нам приходиться использовать связку клиент->терминал сервер->sql+as сервер пока вроде нормально, но объемы еще детские

Вот и у меня - на детских объемах и одном пользователе все - клиент->терминал сервер->sql+as сервер, - работает ок, ни одного замечания.
Правда, что такое печать я уже и забыл - все рассылаю только в электронном виде (у меня и мобилки нет - только Ася).
...
Рейтинг: 0 / 0
Проблемы производительности
    #32698285
Torin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pi все рассылаю только в электронном виде (у меня и мобилки нет - только Ася).
а через что це ты рассылаешь ? Сам по себе AS не может этого делать..
Кто генерит ?, кто трансформирует и отсылает ?
...
Рейтинг: 0 / 0
Проблемы производительности
    #32698394
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Torin Pi все рассылаю только в электронном виде (у меня и мобилки нет - только Ася).
а через что це ты рассылаешь ? Сам по себе AS не может этого делать..
Кто генерит ?, кто трансформирует и отсылает ?

Кто генерит ? Я пользуюсь Excel и Crystal Report. Их файлы и отсылаю клиенту. Отсылаю через MS Outlook Express.

Когда возник намек на реальную потребность в доставке, внимание обращалось на продукт Seagate Analysis9. Но заказчик не начал проект, и продукт не попал в работу.

Да, надо иметь в виду у меня пока нет тестовой площадки для имитации dial-up или других медленных соединений.
...
Рейтинг: 0 / 0
Проблемы производительности
    #32699707
Фотография Валек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Torin Pi все рассылаю только в электронном виде (у меня и мобилки нет - только Ася).
а через что це ты рассылаешь ? Сам по себе AS не может этого делать..
Кто генерит ?, кто трансформирует и отсылает ?

эх как гриться былобы что отсылать
вот мож своему as-клиенту такую приблуду сделать по почте отсылать отчеты, хотя у нас это еще не востребовано

спс за интересную мысль
...
Рейтинг: 0 / 0
Проблемы производительности
    #32703035
Torin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pi Torin Pi все рассылаю только в электронном виде (у меня и мобилки нет - только Ася).
а через что це ты рассылаешь ? Сам по себе AS не может этого делать..
Кто генерит ?, кто трансформирует и отсылает ?

Кто генерит ? Я пользуюсь Excel и Crystal Report. Их файлы и отсылаю клиенту. Отсылаю через MS Outlook Express.

Когда возник намек на реальную потребность в доставке, внимание обращалось на продукт Seagate Analysis9. Но заказчик не начал проект, и продукт не попал в работу.

Опять не врубился - при чем тут CR ??. Топик про AS и клиентов..
Но вообщем понятно - вокруг куча всего, но реально ничего нету.. ;-))
Это я про рынок OLAP-ов..
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Проблемы производительности
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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