Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
28.12.2005, 08:34
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
MS AS 2K Есть куб с таблицей фактов в 500 тыс.записей. В кубе 6 измерений. Объем около 50 МВ. Добавляю меру которая вычисляет DistinctCount по коду документа. Объем куба увеличивается в 6 раз. Скажите пож-та, использование этой функции всегда приводит к таким результатам или надо искать проблему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.12.2005, 09:39
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
Вопрос вдогонку. Где-то на форуме встречалась фраза, что если в кубе есть мера с DC, то желательно для быстродействия больше в этом кубе мер не создавать. Это действительно так? Может поэтому и вырос объем куба в 6 раз? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.12.2005, 09:44
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
Является ли "Код документа" уровнем измерения или это просто поле по которому сделан DistinctCount ? Сколько разных документов есть в таблице ? Какой тип данных у "Код документа" ? Сколько есть аггрегаций в кубе ? В зависимости от ответов на эти вопросы увеличение в 6 раз может быть ожидаемым, а может быть и не очень. DistinctCount увеличивает размер обычно за счет того что он приносит за собой в storage поле на котором он построен. Вы можете вынести эту меру в отдельный куб и связать его с изначальным при помощи виртуального куба. Это должно помочь размеру. Моша ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.12.2005, 11:14
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
MoshaЯвляется ли "Код документа" уровнем измерения или это просто поле по которому сделан DistinctCount ? Сколько разных документов есть в таблице ? Какой тип данных у "Код документа" ? Сколько есть аггрегаций в кубе ? В зависимости от ответов на эти вопросы увеличение в 6 раз может быть ожидаемым, а может быть и не очень. DistinctCount увеличивает размер обычно за счет того что он приносит за собой в storage поле на котором он построен. Вы можете вынести эту меру в отдельный куб и связать его с изначальным при помощи виртуального куба. Это должно помочь размеру. Моша ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights Извините что вмешался. Моша, как вы прокоментируете такой use case. 1. Да является. 2. 1/5 таблицы. 3. int32 4. performance gain = 15% ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.12.2005, 12:40
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
1. Код документа - это поле в таблице фактов, тип Integer 2. DC насчитал 240 тыс. документов на 1 млн.900 тыс. записей (О! похоже я ошиблась в 1-м сообщении про 500 тыс.записей) 3. Про агрегации - был задан параметр 50% результат по агрегациям: Aggregation storage space=4.442 MB Number of aggregations=21 P.S. Похоже это еще и влияет на время извлечения данных. На измерении товар с 3 уровнями иерархии на самом нижнем уровне данные уже полчаса извлекаются :( (65 тыс. позиций в измерении товар) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.12.2005, 12:53
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
violika1. Код документа - это поле в таблице фактов, тип Integer 2. DC насчитал 240 тыс. документов на 1 млн.900 тыс. записей (О! похоже я ошиблась в 1-м сообщении про 500 тыс.записей) 3. Про агрегации - был задан параметр 50% результат по агрегациям: Aggregation storage space=4.442 MB Number of aggregations=21 P.S. Похоже это еще и влияет на время извлечения данных. На измерении товар с 3 уровнями иерархии на самом нижнем уровне данные уже полчаса извлекаются :( (65 тыс. позиций в измерении товар) Пока Моша думает, мой Вам совет. 1.Вынесите DC меру в отдельный куб. 2.% Аггрегаций снизте до 15-20%. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.12.2005, 12:57
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
Спасибо за совет, именно это я и собираюсь попробовать сделать (в отдельный куб). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.12.2005, 02:02
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
backfireИзвините что вмешался. Моша, как вы прокоментируете такой use case В каком смысле "прокомментировать" ? Выглядит нормально. Правда судя по приведенным параметрам, куб довольно маленький - не больше 5 миллионов записей в таблице фактов. Так что проблем с производительностью быть не должно. violikaПохоже это еще и влияет на время извлечения данных. На измерении товар с 3 уровнями иерархии на самом нижнем уровне данные уже полчаса извлекаются А вот это совсем ненормально. При ваших параметрах не должно уходить за несколько секунд. Какой у Вас запрос MDX ? Увеличение куба в 6 раз все таки выглядит странно - 2 миллиона записей на 50 MB места дает где то 25 байт на запись. Это выглядит хорошо (конечно я не знаю сколько у Вас мер, измерений и уровней, но наверное не совсем уж мало). Раздуть запись с 25 байт до 150 байт (в 6 раз) добавление Distinct Count меры в Вашем случае не может. Так что как и backfire я подозреваю аггрегации. Делать аггрегации для DistinctCount не так полезно, ведь это неаддитивная мера, поэтому нам приходится хранить ключи по которым он считался. То что Aggregation Storage Space всего 4 МБ выглядит подозрительно, может лучше посчитать вручную размер файлов на диске ? violikaСпасибо за совет, именно это я и собираюсь попробовать сделать (в отдельный куб). Пожалуйста. Моша ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.12.2005, 14:20
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
MoshaА вот это совсем ненормально. При ваших параметрах не должно уходить за несколько секунд. Какой у Вас запрос MDX ? Да все дела в MDX, который считает АВС по количеству документов на 65 тыс.позиций товаров :( Пока не знаю как все это оптимизировать. На самом деле реально используемых товаров около 20 тыс., можно попробовать ограничить размерность Товары. Хотя может и запрос не оптимальный. Подскажите пож-та, можно ли здесь в запросе (это CM) что-нибудь оптимизировать? iif([Measures].[Количество документов] <= 0, "C", iif(Rank(([Товар].CurrentMember), TopPercent(Extract(NonEmptyCrossJoin(Descendants(Ancestor([Товар].CurrentMember, [Товар].[(All)]),,LEAVES), {[Measures].[Количество документов]}), [Товар]) as A, 80, [Measures].[Количество документов])) > 0, "A", iif(Rank(([Товар].CurrentMember), BottomPercent(A, 5, [Measures].[Количество документов])) > 0, "C", "B"))) Кубы я разделила на 2, т.е. куб с DC вынесла отдельно. Он теперь 76 МБ весит, но работает быстро. Висюки начинаются в виртуальном кубе при расчете АВС. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.12.2005, 14:39
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
Подскажите пож-та, можно ли здесь в запросе (это CM) что-нибудь оптимизировать? Насчитайте это в SQL перед построением куба и запихните в Аттрибут измерения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.12.2005, 15:00
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
То есть если это в SQL насчитывать, то надо сразу определиться как считать - по месяцам, или кварталам или еще как-то. Теряется гибкость, но наверное придется из двух зол меньшее выбирать :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.12.2005, 16:24
|
|||
|---|---|---|---|
|
|||
Использование DistinctCount |
|||
|
#18+
violikaТо есть если это в SQL насчитывать, то надо сразу определиться как считать - по месяцам, или кварталам или еще как-то. Теряется гибкость, но наверное придется из двух зол меньшее выбирать :( Промежуточное по гибкости решение, насчитать не 1 ранг, а непример несколько: за текущий год, за прошедший год, за текущее полугодие, за прошедшее полугодие. ABC Ранг это не та величина, которая меняется как котировка на бирже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=49&tablet=1&tid=1870694]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
166ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 261ms |
| total: | 528ms |

| 0 / 0 |
