Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Подскажите, пожалуйста. Была поставлена следующая задача: Оценить сколько дней не было возможности продавать товар из-за того, что товара не было на складе. Для групп товаров агрегировать эту оценку по сумме. Есть виртуальный куб на 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. Заранее спасибо всем, кто отзовется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2004, 11:20 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
остатки у вас в каком виде хранятся? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2004, 12:56 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Остатки хранятся в виде неагрегированного куба остатков (Remainder), в котором хранятся остатки на начало месяцев. Нижние уровни времени в этом кубе заблокированы. Логистические транзакции хранятся в другом (агрегированном) кубе (Transaction) c детализацией по времени до дня. Остатки/движения на любую точку времени получаются в виртуальном кубе (Rest), построенном над этими двумя. При этом для получения остатка на элемент иерархии времени (в общем случае отличный от месяца) используется остаток из Remainder родителя-месяца текущего элемента времени плюс сумма (Transaction) на всех уровнях (между месяцем и тек. уровнем) "старших братьев" текущего элемента (предполагается что тек. элемент - ниже месяца). Мои иерархии времени: Год, Квартал, Месяц, День (YQMD) и Год, Неделя, День (YWD). Для получения остатка на элемент в YWD, элемент отображается (LinkMember) в соответствующий день иерархии YQMD из которой и извлекается значение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2004, 15:24 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Как я понял, поправьте меня, если я не прав, все крутится вокруг, определения количества дней в выбранном периоде, когда данный товар не был доступен к продаже. Эта величина аггрегирется суммирование, идти по иерархии времени вверх. Аггрегировать ее по иерархии товара смысла нет. Веди если товара А небыло в продаже 5 дней в выбраннй период, а товара Б - 10 дней в период. То о мы разумного умозаключения сделать не сможем. А вот параметр типа (количество дней * среднестатистическую дневную продажу) даст нам уже "потенциально упущенную продажу" которую можно аггрегировать по всем направлениям. Если мощности SQL сервера хватит, то я бы это делал на уровне SQL сервера, строя таблицу фактов - "отсутствие/недостаток товара на складе". А потом строил куб на основе этой таблички и все дела и никакого колдовства на уровне CalculatedMember и ни каких проблнм с производительностью. Если я что то упустил в постановке вашей задачи, то поравьте, please. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2004, 18:46 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Как я понял, поправьте меня, если я не прав, все крутится вокруг, определения количества дней в выбранном периоде, когда данный товар не был доступен к продаже. Эта величина аггрегируется суммированием, если идти по иерархии времени вверх. Аггрегировать же ее по иерархии товара смысла нет. Ведь если товара А небыло в продаже 5 дней в выбраннй период, а товара Б - 10 дней в период. То ничего разумного о группе этих товаров мы сказать не сможем. А вот параметр типа (количество дней * среднестатистическую дневную продажу) даст нам уже "потенциально упущенную продажу" которую можно аггрегировать по всем направлениям. Если мощности SQL сервера хватит, то я бы это делал на уровне SQL сервера, строя таблицу фактов - "отсутствие/недостаток товара на складе". А потом строил куб на основе этой таблички и все дела и никакого колдовства на уровне CalculatedMember и ни каких проблем с производительностью. Если я что то упустил в постановке вашей задачи, то поправьте, please. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2004, 18:48 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Валентин Коношенко Для расчета, случился ли Out Of Stock (OOS) по товару в этот день используются меры начального остатка (BR) и транзакций (Tr) за день. OOS1=1, если BR<=0 и Tr>0 (продавали, но могли продать больше), OOS2=1, если BR<=0 и Tr=0 (не могли продавать). Валентин, а как может остаток быть меньше нуля? Знак перепутали? За какой период надо считать потерянные продажи? У Вас розница или опт? backfireА вот параметр типа (количество дней * среднестатистическую дневную продажу) даст нам уже "потенциально упущенную продажу" которую можно аггрегировать по всем направлениям. Идея правильная, но цифра получится, на мой взгляд, довольно приближённая. С уважением, Константин Лисянский http://lissianski.narod.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2004, 20:27 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Идея правильная, но цифра получится, на мой взгляд, довольно приближённая. конечно приближенная, как и в любой мат-модели, а я предложил простейшую. Если вовлечь дополнительные факторы, то можно и уточнить. Я так и не получил ответа от г-на Коношенко, правильно ли я понял решаемую им задачу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2004, 01:05 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
backfireЭта величина аггрегирется суммирование, идти по иерархии времени вверх. Аггрегировать ее по иерархии товара смысла нет. Веди если товара А небыло в продаже 5 дней в выбраннй период, а товара Б - 10 дней в период. То о мы разумного умозаключения сделать не сможем. Действительно, сначала она агрегировалась только по времени, а на уровне групп товаров оценка строилась на основании остатка и продажи группы - так потребовали логисты. Надо сказать, я тоже не видел физического смысла такой оценки для групп товаров, однако утверждалось, что он есть. Такая "облегченная" схема в моей реализации работала вполне эффективно. Однако, в реальном применении для групп оценка оказалась малоприменима, т.к. по моим наблюдениям над логистами она не выполняла 2 - х главных задач: 1. Привлекать внимание к группе товаров, имеющих OOS (в общем случае она их может пропускать) и 2. Давать более-менее здравую оценку степени OOS товаров группы (она дает какую-то валовую оценку OOS группы). В общем случае можно сказать, что оценка на уровне группы в такой постановке никак напрямую не кореллировала с OOS товаров группы. В новой постановке все же требуется агрегирование по товарным группам. Конечно, "потенциально упущенную продажу" мы для группы не получим, но например средний % OOS для товара группы получить удастся - что в общем удовлетворяет двум выше сформулированным критериям "триггерируемости" и "адекватности" (условно, назовем так :)). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2004, 11:53 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Константин ЛисянскийВалентин, а как может остаток быть меньше нуля? Знак перепутали? За какой период надо считать потерянные продажи? У Вас розница или опт? В принципе, остаток не может, или лучше сказать, не должен быть меньше нуля, можно считать, что в критерии сравнение на ноль, а знак меньше добавлен на случай... реальной жизни По поводу периода. Вероятно, Вы хотите узнать верхний уровень времени, на котором еще кого-то интересует эта оценка - мне верхний уровень не ограничивали, однако, All Members из области определения я исключил... чтобы определять по нему используемую иерархию времени, т.к. пересечения YQMD и YWD уж точно лишены всякого смысла. Можно сказать, что оценка определена на области, когда одна (и только одна :)) из иерархий установлена на All Members. Задачи считать потерянные продажи мне поставлено не было. В данном случае интерес скорее направлен на эффективность работы склада, обеспечивающего продажи. Далее, есть и опт и розница, дистрибьюция. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2004, 12:12 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Всем привет ! Валентин работает у нас по направлению BI Мы немного запутали Вас. Вопрос звучит примерно так: Как на основе известных формул (сложных, по шкале времени, для оценки запасов), в кубах : остатков + куб движения = виртуальный куб Сделать эффективное агрегирование (индексы ?, агрегаты ?) Валя, приведи формулы, плиз Начали рыть потому, что OLEDB провайдер 8.0 для AS тупо все тянет на клиента - а клиент от нас на тонком канале и далеко.. Клиент - ProClarity Pro 5.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2004, 15:48 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
TorinНачали рыть потому, что OLEDB провайдер 8.0 для AS тупо все тянет на клиента - а клиент от нас на тонком канале и далеко.. Клиент - ProClarity Pro 5.3 И будет тянуть, и хоть тресни. Единственный выход это middleware. У PClariry это есть, но стоит не по-детски. Я от этого ушел через собственный middleware ну и ессно собственного клиента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2004, 22:27 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
To backfire: И будет тянуть, и хоть тресни. Единственный выход это middleware. У PClariry это есть, но стоит не по-детски. Если не секрет, какой там примерно порядок цен? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2004, 12:20 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Я разочаровался в ProClarity Analytic Server. Ничего принципиально нового он не дает. Служит для того, чтобы хранить предпроектированные запросы как Briefing book (публикуются из Desktop версии). MDX выполняется на стороне сервера только в одном случае - когда пользователь работает как Standart клиент - тогда интерфейс рисуется очень убогим html-ом, и результаты им же. Есть еще Professional Web клиент - но он , также как и Desktop клиент, устанавливается (с activex) на стороне клиента, работает просто в окружении IE (не удивительно - activex же все). Мои тесты показали, что реального выйгрыша в скорости выполнения запроса и возврата результата на клиента нету ;-( В некоторых случаях Web client просит указать соединение с OLAP сервером !!! Более того, Professional Web клиент не позволяет начать анализ с "нуля", обязательно должне быть опубликованный Briefing book. Вообщем, непонятно, фикция какая-то Стоит срань эта от 15 кило евров (только сервер). Прайсинг очень жесткий , руссифицировать не хотят. Но Desktop версия, конечно, классная ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2004, 16:50 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Забыл дописать ! Что думает ?уважаемый? MS по поводу "OLEDB Multidimentional proviider 8.0" ? А точнее - какие проблемы сделать так, чтобы запросы на стороне сервера _ВСЕГДА_ выполнялись ?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2004, 17:06 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
TorinЗабыл дописать ! Что думает ?уважаемый? MS по поводу "OLEDB Multidimentional proviider 8.0" ? А точнее - какие проблемы сделать так, чтобы запросы на стороне сервера _ВСЕГДА_ выполнялись ?? Я не MS, но предложу. 1. Найти приличный XMLA клиент. 2. Перейти на Юкошу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2004, 22:25 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Рекомендация сродни "надо больше зарабатывать" ;-) Все знают, что надо, но никто не говорит как ;-)) Я человек дела - покажите - посомтрим, оценим, купим. если стоит того. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 12:24 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
backfire TorinНачали рыть потому, что OLEDB провайдер 8.0 для AS тупо все тянет на клиента - а клиент от нас на тонком канале и далеко.. Клиент - ProClarity Pro 5.3 И будет тянуть, и хоть тресни. Единственный выход это middleware. У PClariry это есть, но стоит не по-детски. Я от этого ушел через собственный middleware ну и ессно собственного клиента. Глупый вопрос - а Windows Terminal Service тут бессилен? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2004, 18:52 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
сама Майкрософт не рекомендует ставить на один сервер терминал и скл, но вот интересно в отношении терминал и as это тоже верно. т.к. нам приходиться использовать связку клиент->терминал сервер->sql+as сервер пока вроде нормально, но объемы еще детские ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2004, 10:09 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
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 на борту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2004, 10:43 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
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, но жестоко ошибся. Не томи ! ;-)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2004, 19:14 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Валексама Майкрософт не рекомендует ставить на один сервер терминал и скл, но вот интересно в отношении терминал и as это тоже верно. т.к. нам приходиться использовать связку клиент->терминал сервер->sql+as сервер пока вроде нормально, но объемы еще детские Вот и у меня - на детских объемах и одном пользователе все - клиент->терминал сервер->sql+as сервер, - работает ок, ни одного замечания. Правда, что такое печать я уже и забыл - все рассылаю только в электронном виде (у меня и мобилки нет - только Ася). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2004, 14:42 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Pi все рассылаю только в электронном виде (у меня и мобилки нет - только Ася). а через что це ты рассылаешь ? Сам по себе AS не может этого делать.. Кто генерит ?, кто трансформирует и отсылает ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2004, 16:42 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Torin Pi все рассылаю только в электронном виде (у меня и мобилки нет - только Ася). а через что це ты рассылаешь ? Сам по себе AS не может этого делать.. Кто генерит ?, кто трансформирует и отсылает ? Кто генерит ? Я пользуюсь Excel и Crystal Report. Их файлы и отсылаю клиенту. Отсылаю через MS Outlook Express. Когда возник намек на реальную потребность в доставке, внимание обращалось на продукт Seagate Analysis9. Но заказчик не начал проект, и продукт не попал в работу. Да, надо иметь в виду у меня пока нет тестовой площадки для имитации dial-up или других медленных соединений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2004, 17:11 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Torin Pi все рассылаю только в электронном виде (у меня и мобилки нет - только Ася). а через что це ты рассылаешь ? Сам по себе AS не может этого делать.. Кто генерит ?, кто трансформирует и отсылает ? эх как гриться былобы что отсылать вот мож своему as-клиенту такую приблуду сделать по почте отсылать отчеты, хотя у нас это еще не востребовано спс за интересную мысль ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2004, 13:01 |
|
||
|
Проблемы производительности
|
|||
|---|---|---|---|
|
#18+
Pi Torin Pi все рассылаю только в электронном виде (у меня и мобилки нет - только Ася). а через что це ты рассылаешь ? Сам по себе AS не может этого делать.. Кто генерит ?, кто трансформирует и отсылает ? Кто генерит ? Я пользуюсь Excel и Crystal Report. Их файлы и отсылаю клиенту. Отсылаю через MS Outlook Express. Когда возник намек на реальную потребность в доставке, внимание обращалось на продукт Seagate Analysis9. Но заказчик не начал проект, и продукт не попал в работу. Опять не врубился - при чем тут CR ??. Топик про AS и клиентов.. Но вообщем понятно - вокруг куча всего, но реально ничего нету.. ;-)) Это я про рынок OLAP-ов.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2004, 18:27 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=32684179&tid=1872237]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 391ms |

| 0 / 0 |
