|
МенеджерВременныхТаблиц в ДинамическомСписке. Ищется Demiurg | ☑ | ||
---|---|---|---|---|
0
H A D G E H O G s
05.11.12
✎
13:43
|
День добрый.
Считаю нужной вещью. Например, было бы отлично с помощью 1-ого запроса создать ВременнуюТаблицу, предварительно отобранную, добавить на нее Индексы при необходимости и потом многократно использовать в ДинамическомСписке с динамическим считыванием, храня эту временную через МенеджерВременныхТаблиц. Я чувствую, что с технической точки зрения, доработка скорее всего не требует больших затрат времени программистов, зато это бы хорошо повысило производительность ДинамическогоСписка. p.s. Еще ищется Demiurg, хотелось бы послушать его точку зрения. |
|||
1
H A D G E H O G s
05.11.12
✎
13:44
|
Просто скорее всего от него слышал, что при большом числе пользователей, использование ВТ приведет к распуханию tempDB и деградации производительности. Не понял почему.
|
|||
2
mikecool
05.11.12
✎
13:46
|
(1) скорее всего оттого, что каждая ВТ локальна для одного пользователя
|
|||
3
H A D G E H O G s
05.11.12
✎
13:48
|
(2) Да, ну и что...
Ну и пухнет tempDB и шут с ним. Настроить автошринк каждый час и все. |
|||
4
H A D G E H O G s
05.11.12
✎
13:49
|
Пухнет - оттого что фрагментируется файл данных и файл транзакций, остаются пустые места на месте созданных, а затем удаленных временных таблиц, я правильно понимаю?
|
|||
5
kuromanlich
05.11.12
✎
13:50
|
(2) для этих целей можно создать и пользоваться одним менеджером, общим
|
|||
6
MadHead
05.11.12
✎
13:51
|
еще бы дали возможность управлять порциями данных в ДС
|
|||
7
Demiurg
05.11.12
✎
17:13
|
(0) вопрос не такой простой как кажется, у него не одно "дно" :) Сергей Нуралиев на партнерском форуме высказывал позицию по этому вопросу, в том числе о потенциальных проблемах в других местах, которые сходу не видны.
Мое личное мнение, что главная опасность не в самих временных таблицах, а в программисте, в чьих руках это достаточно мощный инструмент. И таким инструментом можно не улучшить ситуацию, а сильно ухудшить. Особенно если это субд вроде Оракла. |
|||
8
Demiurg
05.11.12
✎
17:15
|
(0) Изначально тот же Оракл проектировался таким образом, что само собой естественным казалось что ни одному программисту в голову не придет создать временную таблицу, положить в нее миллионы строк, один раз прочитал и больше эту таблицу не использовать; поэтому при первом обращении Оракл даже статистики не делает. Но ни кто не учел "1С платформу". Она может так делать легко и часто :)))
|
|||
9
Demiurg
05.11.12
✎
17:16
|
(0) при чем даже в этой ситуации сам описанный факт не является проблемой, если во временную таблицу класть десятки-сотни строк, т.е. в этом случаи даже 1С на оракле будет работать хорошо
|
|||
10
Demiurg
05.11.12
✎
17:18
|
(0) если ты хочешь использовать временную таблицу, то ни что тебе не мешает подойти к этому вопрос "творчески" и использовать в качестве временной таблицы обычную таблицу, вопрос лишь в том что нужно хорошо заранее спроектировать структуру, понимая какие ограничения будут
|
|||
11
Demiurg
05.11.12
✎
17:20
|
то что пухнет tempdb - это отдельный вопрос бюджета, в умах обычных админов боевая база ожидает большую нагрузку чем эта служебная база, а на самом деле может быть и наоборот, мы такое видели не раз
|
|||
12
Demiurg
05.11.12
✎
17:21
|
(5) глобальным менеджером временных таблиц пользоваться - нехорошая идея, быстро словите ошибку "сеанс отсутствует или удален"....
|
|||
13
Demiurg
05.11.12
✎
17:25
|
(0) когда будешь в следующий раз искать, пиши сюда https://www.facebook.com/gilev.ru )
|
|||
14
Живой Ископаемый
05.11.12
✎
17:30
|
2(10) в смысле например РС?
|
|||
15
Demiurg
05.11.12
✎
17:39
|
(14) тут не может быть универсального ответа, все зависит от конкретной задачи,
мое лично мнение - зачем вообще динамически выводить миллионы строк, если реально потом этот список ни кто не будет смотреть, а скорее всего дополнительный поиск сделают |
|||
16
Demiurg
05.11.12
✎
17:40
|
в этом смысле подход западных вендоров выводит список постранично наиболее оптимальный, если заранее задача не известна
|
|||
17
Demiurg
05.11.12
✎
17:43
|
выводить кучу информации ради вывода этой информации - насиловать ресурсы ненужными действиями, и как эту избыточную работу не оптимизируй, ее суть - избыточность - не убрать таким путем, это изначальная ошибка в выборе пути решения задачи
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |