|
Прогрев кеша через CREATE CACHE
|
|||
---|---|---|---|
#18+
Есть запрос MDX вида Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Диапазон дат и счёт (treaty) это параметры, всё остальное фиксированное. При первом запуске запроса с определенным набором параметров отрабатывает порядка 900 мс, при повторном запуске с теми же параметрами за 0 мс. Хочется сделать так, чтобы при первом запуске отрабатывал за 0 мс для любого набора параметров. Диапазонов дат не ограничено, счетов больше миллиона, простой перебор и запуск запроса со всеми возможными параметрами - не вариант. Читаю хрестоматийную статью на которую ссылаются все, кто отвечает на вопрос про прогрев кеша. Там написано, используйте CREATE CACHE для нужного вам набора мер и измерений. Использую: Код: sql 1. 2. 3. 4. 5. 6. 7.
Запрос отрабатывает, память пухнет, вроде как кеш прогрели. Выполняем запрос, картина не изменилась, первый запуск порядка 900 мс, второй 0 мс Есть сильное подозрение, что запрос на CREATE CACHE неправильно создан для искомого запроса. Может кто подсказать, в чем косяк? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2022, 18:06 |
|
Прогрев кеша через CREATE CACHE
|
|||
---|---|---|---|
#18+
Oblom, ну так вы прогрели SE кэш, а не FE. и 900ms это вот прям очень долго? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2022, 19:09 |
|
Прогрев кеша через CREATE CACHE
|
|||
---|---|---|---|
#18+
ShIgor, а как прогреть FE? Только точно такими же запросами? Да, увы, 900 мс это нереально долго для задачи, которую хочется решить. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2022, 22:37 |
|
Прогрев кеша через CREATE CACHE
|
|||
---|---|---|---|
#18+
Наткнулся на статью , ухватил мысль "In my experience if you have the right aggregations built then you can get excellent response times even on a cold cache. Of course to build aggregations you need to know the granularities of data that your users’ queries are, but you need the same information to warm the cache." Сделал агрегаты, время запроса снизилось с 900 мс до 50 мс, что уже лучше. Но если кто-то расскажет как прогреть FE кеш, кроме как перебором всех возможных вариантов запросов, буду премного благодарен. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2022, 23:53 |
|
Прогрев кеша через CREATE CACHE
|
|||
---|---|---|---|
#18+
Oblom, попробуйте вычисления перенести в скрипт куба и в команде прогрева указывать их тоже. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2022, 23:59 |
|
Прогрев кеша через CREATE CACHE
|
|||
---|---|---|---|
#18+
ShIgor, спасибо, подумаю как это можно сделать. Там параметризованный запрос, но все MEMBERS: [Rubles Calc], [Stocks Calc], [Bondes Calc], [Currencies Calc], [Summary] из запроса, наверное, можно в вычисляемые меры добавить. Кстати, весь профит от агрегатов, и с кешем и без него время запроса порядка 50 мс. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2022, 00:23 |
|
Прогрев кеша через CREATE CACHE
|
|||
---|---|---|---|
#18+
Oblom, с переносом вычисляемых мер в скрипт должно помочь. т.к. есть 3 типа кэша FE: глобальный, сессии и запроса, в зависимости от того где создается вычисление, в скрипте куба, на уровне сессии (create member) или в запросе (with member). есть исключения, но не суть важно. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2022, 00:40 |
|
|
Start [/forum/topic.php?fid=49&tid=1857046]: |
0ms |
get settings: |
2ms |
get forum list: |
7ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
14ms |
get topic data: |
4ms |
get forum data: |
1ms |
get page messages: |
26ms |
get tp. blocked users: |
0ms |
others: | 78ms |
total: | 134ms |
0 / 0 |