Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / какие мнения о скорости и т.п. в yukon ? / 20 сообщений из 20, страница 1 из 1
29.09.2005, 10:44
    #33294999
zmike
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
сначала коротко о том что мне нравится:
при переходе с апрельского на июньский CTP практически перестала падать студия, пофиксились некоторые заметные баги.
в сентябрьском стало лучше проверять синтаксис.
вообще много приятного появилось и похоже продукт быстро приближается к хорошему виду

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

конкретный пример:

Код: plaintext
1.
2.
 Iif(IsLeaf([Dim1].[Dim1]),
Sum([Dim2].[Dim2].ALLMEMBERS, [Measures].[Measure1] ) ,
Sum({[Dim1].[Dim1].CurrentMember.children}))
в Dim1 около 15 000 в Dim2 около 200

время на AS2000 14 сек
на AS2005 70 сек

когда переписали на SCOPE

Код: plaintext
1.
2.
Scope([Measure2] ,leaves([Dim1]),leaves([Dim2]))
  this = [Measures].[Measure1]
end scope   

стало в 3 раза быстрее (22 сек) но все равно медленее в 1,5 раза хуже чем на AS2000.

понятно что экспериментов было много но ничего полезного не получил...

у кого какие наблюдения?
...
Рейтинг: 0 / 0
29.09.2005, 23:07
    #33297175
Ihor Bobak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
У меня подобные наблюдения. Мы вчера сделали несколько тестов. Суть была сравнить разные способы доступа (AdomdDataReader/Cellset/XmlReader) а также разные сервера (2000 SP3 vs 2005 Sept). Куб один и тот же (с 2000 с трудом сделал миграцию на 2005 - намучался с глюками). Куб был достаточно большой (виртуальный куб на двух реальных, факт таблица - 4 млн. записей, несколько calculated members на distinct count мерах). Для 2005-го компилировали под .NET 2.0 (идущей в дистрибутиве Sept 2005), для 2000-го - под 1.1. В connection string явно указывали ConnectTo=9.0 и ConnectTo=8.0.

Так вот, независимо от типа доступа в каждом случае 2005-й проигрывал в 2-3 раза. Если Моша (разработчик движка если я не ошибаюсь - http://www.mosha.com/msolap/) не примет мер, то к одному месту такой performance....
...
Рейтинг: 0 / 0
29.09.2005, 23:09
    #33297178
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Ihor BobakУ меня подобные наблюдения. Мы вчера сделали несколько тестов. Суть была сравнить разные способы доступа (AdomdDataReader/Cellset/XmlReader) а также разные сервера (2000 SP3 vs 2005 Sept). Куб один и тот же (с 2000 с трудом сделал миграцию на 2005 - намучался с глюками). Куб был достаточно большой (виртуальный куб на двух реальных, факт таблица - 4 млн. записей, несколько calculated members на distinct count мерах). Для 2005-го компилировали под .NET 2.0 (идущей в дистрибутиве Sept 2005), для 2000-го - под 1.1. В connection string явно указывали ConnectTo=9.0 и ConnectTo=8.0.

Так вот, независимо от типа доступа в каждом случае 2005-й проигрывал в 2-3 раза. Если Моша (разработчик движка если я не ошибаюсь - http://www.mosha.com/msolap/) не примет мер, то к одному месту такой performance....

А клиент какой? На каких хапросах тестировали?
...
Рейтинг: 0 / 0
29.09.2005, 23:58
    #33297201
Ihor Bobak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
backfireА клиент какой? На каких хапросах тестировали?

Что значит "клиент какой" ? Писали свою .NET апликацию на С#, которая
а) делала рестарт сервиса (2000 или 2005)
б) открывала коннект
в) запускала простенький MDX запрос (чтобы AS поднял базу)
г) запускала боевой MDX запрос и засекала время
д) бежала по результатах выборки одним из способов в зависимости от номера теста (AdomdDataReader/Cellset/XmlReader) и засекала время

Таким образом, 6 тестов: {2000 vs 2005} * {AdomdDataReader vs Cellset vs XmlReader}. Этих 6 тестов - для разных MDX на разных кубах (в смысле что в каждом тесте куб на 2005 и 2000 был тот же).

И всегда одно и то же - отставание в 2-3 раза как времени идущей на исполнения запроса, так и времени идущей на пробегание по результатах. То есть не только 2005-й сервер - тормоз, но и программная часть (классы
AdomdDataReader Cellset XmlReader в .NET 2.0 + сам драйвер доступа) тоже тормоз.
...
Рейтинг: 0 / 0
30.09.2005, 00:33
    #33297215
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Ihor Bobak backfireА клиент какой? На каких хапросах тестировали?

Что значит "клиент какой" ? Писали свою .NET апликацию на С#, которая
а) делала рестарт сервиса (2000 или 2005)
б) открывала коннект
в) запускала простенький MDX запрос (чтобы AS поднял базу)
г) запускала боевой MDX запрос и засекала время
д) бежала по результатах выборки одним из способов в зависимости от номера теста (AdomdDataReader/Cellset/XmlReader) и засекала время

Таким образом, 6 тестов: {2000 vs 2005} * {AdomdDataReader vs Cellset vs XmlReader}. Этих 6 тестов - для разных MDX на разных кубах (в смысле что в каждом тесте куб на 2005 и 2000 был тот же).

И всегда одно и то же - отставание в 2-3 раза как времени идущей на исполнения запроса, так и времени идущей на пробегание по результатах. То есть не только 2005-й сервер - тормоз, но и программная часть (классы
AdomdDataReader Cellset XmlReader в .NET 2.0 + сам драйвер доступа) тоже тормоз.

То что делает Migration Wizard - переходное и далеко не оптимальное решение на серьезных кубах. По-хорошему на решении более продвинутом чем FoodMart надо в AS2K5 делать кубик с нуля и ручками, полностью переосмыслив и схему DSV и дизайн измерений и выражения для CM.

Вы бы еще сравнивали производительность VB6 кода с кодом на VB.NET полученном автоматичекой конверацией (Ото еще было глюкало).

У меня пока что впечатления противороложные вашим, даже на конвертированном кубе. А на той части, что пересоздал своими ручками -вообще класс.
...
Рейтинг: 0 / 0
30.09.2005, 00:59
    #33297225
Ihor Bobak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Большое спасибо за совет. Обязательно так и сделаю - пересоздам куб ручками. Конечно сомневаюсь что от этого результаты тестов изменятся - следите за этим постом.
...
Рейтинг: 0 / 0
30.09.2005, 01:02
    #33297226
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Ihor BobakБольшое спасибо за совет. Обязательно так и сделаю - пересоздам куб ручками. Конечно сомневаюсь что от этого результаты тестов изменятся - следите за этим постом.

А вы бы не привели ваши тестовые запросы и грубо схему кубов, если в этом секрета не видете. А то может мы в разных направлениях AS нагружаем?
...
Рейтинг: 0 / 0
30.09.2005, 02:09
    #33297256
Ihor Bobak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
[quot backfireА вы бы не привели ваши тестовые запросы и грубо схему кубов, если в этом секрета не видете. А то может мы в разных направлениях AS нагружаем?[/quot]

Извините, не могу (апликация коммерческая).
...
Рейтинг: 0 / 0
30.09.2005, 05:57
    #33297301
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Ihor Bobak backfireА вы бы не привели ваши тестовые запросы и грубо схему кубов, если в этом секрета не видете. А то может мы в разных направлениях AS нагружаем?

Извините, не могу (апликация коммерческая).
А можете привести структуру запросов к Adventure Works (я так всегда делаю, когда в форуме что то обсуждаю, а раньше приводил к FoodMart). Иначе какой смысл о чем то в форуме писать, если воспроизвести невозможно.
...
Рейтинг: 0 / 0
30.09.2005, 14:56
    #33298676
zmike
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
backfire Ihor Bobak backfireА вы бы не привели ваши тестовые запросы и грубо схему кубов, если в этом секрета не видете. А то может мы в разных направлениях AS нагружаем?

Извините, не могу (апликация коммерческая).
А можете привести структуру запросов к Adventure Works (я так всегда делаю, когда в форуме что то обсуждаю, а раньше приводил к FoodMart). Иначе какой смысл о чем то в форуме писать, если воспроизвести невозможно.

вот пример

Код: plaintext
1.
2.
3.
4.
Iif(Isleaf([Product].[Product Categories]),
Sum(Descendants([Customer].[Customer],,leaves), 1 . 00001 ), 
Sum([Product].[Product Categories].currentmember.children)
) 

далее закачали базу Adventure Works в SQL 2000, сделали куб (только необъодимое для этого запроса ) и:

на AS2005 22 сек (на виртуальной машине)
на AS2000 7 сек (на виртуальной машине, но чуть послабее)
...
Рейтинг: 0 / 0
30.09.2005, 16:14
    #33298980
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Вы бы еще в VMWare пускали и в OLTP приложении скорость доступа к дискам меряли.
...
Рейтинг: 0 / 0
30.09.2005, 16:18
    #33298997
zmike
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
backfireВы бы еще в VMWare пускали и в OLTP приложении скорость доступа к дискам меряли.

мы пускали в AS2005 и на физичекой машине - скорость менялась менее чем на 10%.
...
Рейтинг: 0 / 0
30.09.2005, 18:29
    #33299353
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Мне лично кажется что ваш пример - пример того, что в OLAP лучше не считать. Двойная сумма по листьям - aггрегаты побоку - в SQL это влет, а для OLAP надрыв.
...
Рейтинг: 0 / 0
30.09.2005, 19:06
    #33299398
zmike
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
backfireМне лично кажется что ваш пример - пример того, что в OLAP лучше не считать. Двойная сумма по листьям - aггрегаты побоку - в SQL это влет, а для OLAP надрыв.

1. согласен что лучше так не писать

2. пример сделан из принципов:
а) чтоб "долго" считался
б) чтоб проще некуда: IMHO поиск и суммирование

3. если _основное_ достоинство AS2005 агрегаты - IMHO это плохо

4. у нас много CM, честно не вижу из этого выхода, так что мне надо чтоб быстро вычислялось...

сразу предвижу вопрос почему? постораюсь сформулировать коротко, (это отчасти перекликается с вопрос рядом который про балансы) :
надо иметь возможность факторного анализа роста прибыли в разрезе цен, номенклатуры, объемов, при этом используется 4 себестоимости (также есть еще 4 плановых), цены учитывая или нет доставку, и разумется во всяких разрезах... и сравнивая "произвольные" даты, подразделения и т.п.

P.S. приведите ваш пример - мы запустим его на тесте и у себя.
...
Рейтинг: 0 / 0
01.10.2005, 16:12
    #33299855
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
zmikeсразу предвижу вопрос почему? постораюсь сформулировать коротко, (это отчасти перекликается с вопрос рядом который про балансы) :
надо иметь возможность факторного анализа роста прибыли в разрезе цен, номенклатуры, объемов, при этом используется 4 себестоимости (также есть еще 4 плановых), цены учитывая или нет доставку, и разумется во всяких разрезах... и сравнивая "произвольные" даты, подразделения и т.п.

P.S. приведите ваш пример - мы запустим его на тесте и у себя.

А у вас все эти 4 себестоимости и стоимоти доставки как физические меры сохранены или вы их on-the-fly рассчитываете.

Sum(Descendants([Customer].[Customer],,leaves),1.00001),

Такие формулы навлдят меня на мысль, что вы пытаетесь рассчитать что-то
on-the-fly вмнсто того, чтобы рассчитать это при процессинге куба.
...
Рейтинг: 0 / 0
03.10.2005, 07:43
    #33300481
Mosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Сразу хочу сказать, что все что написано дальше - это мое личное мнение, и оно может совсем не совпадать с оффициальным мнением компании Microsoft. Более того, скорее всего оно и не совпадет. И я как и любой человек могу заблуждаться и ошобаться. И довольно часто я ошибаюсь. Но поскольку последние 5 лет я отвечал за разработку движка AS, то думаю что мой взгляд все таки не полностью неправильный.
Когда мы начали делать Юкон, то мы поставили себе несколько целей. Мы хотели сделать возможными сценарии, которые AS2K просто не мог потянуть. И мы очень усилинно и целеустремленно работали в этом направлении. И действительно, большинство таких сценариев в Юконе заработало. Например, backfire писал что пытаться делать вычисления на листьях - занятие бесполезное. Действительно, в AS2K это работает только на очень маленьких кардинальностях измерений, и начинает экспоненциально тормозить с увиличением размерности. А вот в Юконе работает замечательно. Ну и много других примеров. Но что мы обнаружили, и к сожалению сличком поздно, что для некоторых сценариев где AS2K работал, Юкон работает медленнее. Иногда в 2-3 раза. Зачастую просто метод написания вычислений который был оптимальным в AS2K - оказывается неоптимальным в Юконе, и вычисление надо переписать. (Пример Андрея именно из этой категории. Я правда немного удивлен почему вариант SCOPE работает не намного быстрее, думаю дело в специфике запроса.) У нас теперь основная задача - подтянуть вычисления которые оказались медленнее чем в AS2K до нужного уровня, но ничего из этого в Юкон не попадет, поскольку cutoff на улучшения производительности прошел довольно давно. Все что могу посоветовать, если Вы оказались в ситуации что у вас что-то работает медленнее чем в AS2K - то либо переписать формулы "под Юкон", либо сообщить об этом в MS, чтобы это улучшили в SP1.

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
03.10.2005, 15:51
    #33301630
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Моша, так вы говорите, что "переписать под Юкон",
так где же "MDX 2005 for Wiseacre".

Я знаю, что в Юконе куча новых фишек, но "куда дуть и куда нажимать", чтобы после первых двух неудачных экпериментов с новыми фишками не послать это все к ... и остаться при своих обкатанных формулах на Шилоне. Это же в прямых финансовых и политических интересах MSFT, как можно быстрее и больше потребителей первести на AS2K5.

Так что "MDX 2005 for Wiseacre" нужен как воздух.
...
Рейтинг: 0 / 0
03.10.2005, 17:42
    #33302011
zmike
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
2 backfire:
Себестоимости у нас предрасчитаны, к счастью, и мы постоянно занимаемся тем что сначала пишем вычисление на MDX а потом переносим это в процедуры на SQL.
Но пример который идет ниже… ничего сделать не можем

2 Моша:
Большое спасибо за столь подробный ответ.
Присоединяюсь к просьбе backfire, от себя замечу что
А) мы _готовы_ учиться и переделывать
Б) есть реальные вещи которые хочется начать использовать как можно раньше (fuzzy lookup например) но сейчас нет уверенности что бизнес-пользователи не скажут что пользоваться новой версией невозможно…
В) присутствуя на обсуждениях идеологии AS много лет назад мы бы сейчас все понимали… но сейчас хочется простого и (невозможного?), получиться список, как и что заменить, и на что обратить внимание…

Так как и я и Вы понимаете что по каждому поводу мы не сможем (да не правильно это) обращаться сюда или в MS.

Но если можно воспользоваться Вашим вниманием, то что Вы посоветуете:

Для всех товаров надо перемножить количество проданное в первом периоде на себестоимость из другого периода (их много - какую конкретно выбирает пользователь, и еще она зависит от завода ), в виде формулы, в скобках от чего зависит

CM = qty (date1) * net_cost ( net_cost_name ,factory, date2 )

Вот что мы написали

Iif(IsLeaf([ItemGroup].[ItemGroup]),
Sum(Filter(Descendants([Factory].[FactoryH],,Leaves([Factory]) ), [Qty] <> 0),
StrToTuple("([NetCost]" + [Measures].[FilterStr] + "," + MemberToStr([Factory].[FactoryH])
+ ")") * [Measures].[Qty]),
Sum({[ItemGroup].[ItemGroup].CurrentMember.children})
)


( [Measures].[FilterStr] возвращает указанную пользователем строку, например: “,[Date].[Date].[Month].&[2005-01-01T00:00:00]” )

[NetCost] боюсь даже показывать…
А) он берет себестоимость из таблицы фактов
Б) если ее там нет (не было продаж в этом месяце) – то берет из куба «себестоимостей»
В) если дата – All то вычисляется «средняя» себестоимость (возможно это можно «предрасчитать» в кубе себестоимостей)


Я понимаю что конструкция сложная – но она работает в AS2000, с удовлетворяющей скоростью…
В AS2005 мы не смогли ни разу дождаться окончания по всем Items

Когда попробовали сделать конструкцию со scope то не смоги дождаться даже открытия закладки browse 
P.S. Извиняюсь за столь длинный пост.
...
Рейтинг: 0 / 0
03.10.2005, 19:51
    #33302352
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
zmikeДля всех товаров надо перемножить количество проданное в первом периоде на себестоимость из другого периода (их много - какую конкретно выбирает пользователь, и еще она зависит от завода ), в виде формулы, в скобках от чего зависит

CM = qty (date1) * net_cost ( net_cost_name ,factory, date2 )


Zmike, только теперь я начал догонять, каким "шаманством" вы занимаетесь.
Если я вас правильно понял, то вы занимаетесь What-If анализом,
типа "а что если бы себестоимость была не такая как фактическая, а "другая", то какую мы прибыль бы получили.

Сразу напрашивается расширение вашей формулы

CM = qty (date1) * net_cost (qty, net_cost_name ,factory, date2 )

так как сразу напрашивается, что себестоимость n-го поставщика зависит от
объемов продаж.

Если бы передо мной стояла подоьная задача, которая в конечном итоге сводится к перелопачиванию мегатонн данных на листовом уровне, то я бы провел бы ее на уровне SQL. И в AS имел дело только с аггрегированными данными (по возможности).

Скажите пожалуйста, каков порядок количества членов измерения номенклатура. Насколько произвольно выбирается дата для рассчета отличной от фактическеой себестоимости, какова кардинальность Factory.

Очень часто я ловил себя на том, что мы, разработчики, часто берем на себя больше чем того требует практика, что реальных Use Case, которые бизнесс-пользователи реально используют (а не хотят использовать) на порядок меньше того, что мы пытаемся охватить в "универсальном решении". А если удовлетворить пользователей не на 110%, а на 90%, то легко можно создать достаточно проворное решение без головной боли и надрыва.

Или вы думаете совершенно иначе?
...
Рейтинг: 0 / 0
03.10.2005, 20:34
    #33302381
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие мнения о скорости и т.п. в yukon ?
Offtop

zmike, Ты в ICQ бываешь?
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / какие мнения о скорости и т.п. в yukon ? / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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