| Результаты опроса: Как лучше хранить ссылки на записи - (RefTableId, Company, RefRecId) | |||
| myTempTable - временная таблица |
|
4 | 21.05% |
| recordLinkList |
|
2 | 10.53% |
| map(DataAreaId, recordLinkList) |
|
0 | 0% |
| set([refTableId, refRecId, refCompanyId]) |
|
3 | 15.79% |
| map([refTableId, refCompanyId], set(refRecId)) |
|
2 | 10.53% |
| map(refTableId, map(refCompanyId, set(refRecId))) |
|
1 | 5.26% |
| другое - написал сообщение в теме |
|
5 | 26.32% |
| не знаю/мне все равно |
|
2 | 10.53% |
| Голосовавшие: 19. Вы ещё не голосовали в этом опросе | |||
|
|
Опции темы |
|
|
|
|
#1 |
|
Administrator
|
Я за вариант 8.
Цитата:
Цитата:
![]() А с очисткой как раз все просто. Нужно просто только на какой-то момент иметь завершенную работу этой утилитки (как вариант - остановка АОС). И тогда Truncate Table отрабатывает быстро и на ура. Можно туда добавить поле, аналог кода сессии - типа утилитка отработала один раз - все записи отметились одним кодом. Утилитка отработала второй раз - новые записи отметились другим кодом и т.д. По этому коду сделать индекс и чистить по индексу. Это если хочется чистить сразу. А можно этим и не заморачиваться - а дождаться возможности выполнить Truncate Table Конечно остановка АОС - решение радикальное ... Но тут все зависит от того будут ли перерывы у утилитки, насколько сильно она будет увеличивать кол-во записей в этой таблице. Пример 1. InventSumLogTTS. Ее можно честно чистить после остановке АОСа. Пример 2. Batch. Там хранится туева хуча мусора, и в нее постоянно складываются записи. Раз в некий период (когда ну очень хочется уменьшить место, занимаемое базой) нужные записи переливаются в копию Batch, исходная таблица грохается, а копия выдается за оригинал.
__________________
Возможно сделать все. Вопрос времени |
|
|
| Теги |
| recid, запись, как правильно, ссылки |
|
|
|