|
Оптимизация регистров сведений |
☑ |
0
Sasha_1CK
02.11.17
✎
10:08
|
Дано.
Вариант 1
РС1
Изм1
Изм2
Изм3
Изм4
Рес1
Вариант 2
РС1
Изм1
Изм2
Рес1
РС2
Изм1
Изм3
РС3
Изм1
Изм3
Запись в регистр - одноразовая.
Чтение из регистра - очень много
При получении информации всегда используется фильтр Изм2, Изм3, Изм4
Вопрос какой вариант будет работать быстрее
запрос с фильтром к одному общему регистру.
или получение данных из 3 регистров в ВТ и внутренне соединение по изм1?
|
|
1
youalex
02.11.17
✎
10:10
|
>>При получении информации всегда используется фильтр Изм2, Изм3, Изм4
Эти измерения должны быть в начале.
|
|
2
Sasha_1CK
02.11.17
✎
10:12
|
(1) принято.
|
|
3
Мимохожий Однако
02.11.17
✎
10:13
|
Убери ИЗМ1, если не используется
|
|
4
MrStomak
02.11.17
✎
10:13
|
(0) Если невозможно поставить в начало, то выбрать среди Изм2, Изм3, Изм4 наиболее селективное измерение и проставить ему флаг индексирования.
|
|
5
Sasha_1CK
02.11.17
✎
10:15
|
То есть вариант 1 быстрее 2?
|
|
6
эс-образник
02.11.17
✎
10:17
|
Однозначно вариант 1. СУБД это сделает гораздо лучше, чем выборка из нескольких таблиц с соединением.
|
|
7
Sasha_1CK
02.11.17
✎
10:25
|
(6) количеством записей в таблице можно пренебречь?
Меня просто смущает что во втором варианте у меня например
в РС1 - 10 записей
в РС2 - 20 записей
В РС3 - 2 записи
А во втором варианте получится в одной таблице - 400 записей
|
|
8
Alex_MA
02.11.17
✎
10:42
|
(1)И каждое проиндексировано, чтобы создался составной индекс по полям Изм1, Изм2, Изм3.....
Чтобы не было операции KeyLuukUp
|
|
9
тарам пам пам
02.11.17
✎
11:32
|
(7) а вот в этом случае быстрее будет раздельными регистрами - при наличии фильтров выборка из каждого из регистров будет 1-2 строки с поиском по индексу, соединение таких таблиц много времени не займет.
А сводный регистр со всеми комбинациями измерений разрастется крайне быстро.
|
|
10
mistеr
02.11.17
✎
11:45
|
Я не понял, если по Изм4 всегда идет отбор, то почему его нигде нет во втором варианте?
|
|
11
Sasha_1CK
02.11.17
✎
13:04
|
(10) Это я опечатался.
РС3
Изм1
Изм4
|
|
12
Sasha_1CK
02.11.17
✎
13:11
|
(9)
И где грань - за которой 3 регистра становятся быстрее чем 1?
|
|
13
Йохохо
02.11.17
✎
13:16
|
(12) если записей и будет около 400 то нигде. И любая оптимизация только во вред и трата времени. Вообще судя по "внутренне соединение по изм1" у Вас изм1 будет в "частых" запросах, а изм234 в отчетах
|
|
14
h-sp
02.11.17
✎
13:18
|
(12) ну если меньше миллиона записей, забей тогда. Чего ты заморочился из-за 20 записей?
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший