
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
10.09.2018, 12:27
|
|||
|---|---|---|---|
|
|||
Секционирование таблицы |
|||
|
#18+
Доброго времени суток. Есть таблица: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. Возможно ли исключить из таблицы виртуальный столбец, но при этом обеспечить такой же принцип секционирования? Спасибо всем кто откликнется! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.09.2018, 15:18
|
|||
|---|---|---|---|
|
|||
Секционирование таблицы |
|||
|
#18+
Ну если сумеете - расскажите как... И особенно - как в Вашем случае работает partition pruning :) ...вообще в некоторых случаях можно было бы рассмотреть partition by reference, однако и тут, подозреваю, появится скрытый виртуальный атрибут. Oracle предпочитает этот путь имплементации различных функциональных нашлепок над базовыми механизмами хранения - от функциональных индексов до online redefinition. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.09.2018, 16:23
|
|||
|---|---|---|---|
Секционирование таблицы |
|||
|
#18+
MaXie, Версия? Если >= 12C то: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. и не парься. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.09.2018, 17:56
|
|||
|---|---|---|---|
|
|||
Секционирование таблицы |
|||
|
#18+
Благодарю за мысли! ) Постановка, безусловно, упрощена до предельно простого примера. В реальности, речь идет о таблице, состав полей в которой не подлежит изменению("боевая" среда, таблица является частью "коробочного" продукта и т.д.). На эту таблицу создается "журнал"(лог материализованного представления), который, с целью максимально быстрой очистки, хочется секционировать, но таким образом, чтобы потом не "дропать" секции(необходимо принять как данное), а выполнять только "транкейт", т.е. использовать запись в секции "журнала" циклично, по аналогии с обычными REDO-журналами. Насколько я понимаю, ни каких иных полей, кроме тех что есть в базовой таблице, в "журнале" быть не может. > andrey_anonymous Идея заключается в том, чтобы иметь конечный набор секций и выполнять TRUNCATE обработанных данных в пределах секций, с целью их моментальной очистки. В любом смысле покопаюсь в направлении того, что сказали. > IgorSm Да, это именно то, в чем и заключается мой вопрос. Спасибо за ссылку! Сейчас буду смотреть. ) > SY Версия 11.2, но в любом случае наличие каких либо столбцов, кроме базовых исключено. ( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.09.2018, 20:05
|
|||
|---|---|---|---|
|
|||
Секционирование таблицы |
|||
|
#18+
MaXieПостановка, безусловно, упрощена до предельно простого примера. В реальности, речь идет о таблице, состав полей в которой не подлежит изменению("боевая" среда, таблица является частью "коробочного" продукта и т.д.). На эту таблицу создается "журнал"(лог материализованного представления), который, с целью максимально быстрой очистки, хочется секционировать, но таким образом, чтобы потом не "дропать" секции(необходимо принять как данное), а выполнять только "транкейт", т.е. использовать запись в секции "журнала" циклично, по аналогии с обычными REDO-журналами. Насколько я понимаю, ни каких иных полей, кроме тех что есть в базовой таблице, в "журнале" быть не может. Если речь про встроенные средства MATERIALIZED VIEW + MATERIALIZED VIEW LOG, то перед изобретением велосипедов имеет смысл ознакомиться с Код: plaintext Если же изобретены какие-то собственные журналы и производные таблицы, то тут можно фантазировать на следующие темы hash функцию при hash секционировании выбирать нельзя. То есть, если не устраивает встроенный хеш алгоритм, а нужен именно mod(...,2), то тут без доп колонок ничего сделать нельзя. (в 11-ке можно если сильно захотеть получить persisted invisible virtual columns) Но скорее всего, учитывая временнУю специфику, можно секционировать по range/interval и удалять секции по мере устаревания. Если журнал заполняется самописными средствами, то можно задействовать system partitioning и писать в желаемую секцию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=52&tablet=1&tid=1883479]: |
0ms |
get settings: |
7ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
173ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 483ms |

| 0 / 0 |
