|
|
|
Tablespace growth
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, уважаемые! Дано: таблица с LOB-полем CREATE TABLE mailbox ( mid integer NOT NULL, [еще n различных полей] m_orig clob, PRIMARY KEY (mid) USING INDEX TABLESPACE m_kts , ) TABLESPACE m_ts PCTFREE 10 PCTUSED 70 LOB(m_orig) STORE AS (TABLESPACE m_lts NOCACHE LOGGING); В таблицу интенсивно добавляются записи. Объем занимаемого LOB'ами места в табл. пр-ве m_lts растет. Потом из таблицы начинают удалять записи (добавление новых продолжает идти). Занимаемое место в m_lts все равно растет. Наблюдение: если скриптом переместить все записи из таблицы в идентичную новую базу с такими же табл. пр-вами, то место в m_lts ужмется почти в 2 раза. Вопросы 1. Верно ли подозрение, что после удаления lob'а освобождаемое им место не используется на 100%? Не могут же на табл. пр-во LOB'ов влиять PCTFREE/USED самой таблицы? 2. Есть ли в Oracle 8i (8.1.7) какой-либо способ сжатия m_lts, кроме напускания скрипта? (exp/imp не годится, т.к. таблица должна быть доступна для SEL/ISN/DEL 24x7, по этой же причине не подходит ALTER TABLE MOVE) 3. Аналогично 2, но для Oracle 9i? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 10:32 |
|
||
|
Tablespace growth
|
|||
|---|---|---|---|
|
#18+
может подойдёт deallocate_unused_clause из alter table например? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 13:04 |
|
||
|
Tablespace growth
|
|||
|---|---|---|---|
|
#18+
Не подойдет. Мне не обязательно отрезать от таблицы неиспользуемую часть, мне нужно, чтобы при добавлении новых записей использовалось место, освобожденное ранее при удалении старых, а оно не используется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 14:16 |
|
||
|
Tablespace growth
|
|||
|---|---|---|---|
|
#18+
poprobui alter tablespace coalesce; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 15:44 |
|
||
|
Tablespace growth
|
|||
|---|---|---|---|
|
#18+
>>Наблюдение: если скриптом переместить все записи из таблицы в идентичную новую базу с такими же табл. пр-вами, >>то место в m_lts ужмется почти в 2 раза. имхо это странно, у тебя что pctversion=50 может разработчики и сделали ввиду интенсивного update. Если хочешь притормозить базу(как говорит Oracle) попробуй alter table mailbox modify LOB (m_orig) (pctversion 0) или 1 может поможет. Странно другое: раз тебя волнует рост tablespace то у тебя и экстентов там много. Я стараюсь указывать storage у ЛОБов. Надеюсь хоть pctincrease=0 у TABLESPACE m_lts :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 21:33 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=2807&tid=1991691]: |
0ms |
get settings: |
5ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
34ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
22ms |
get tp. blocked users: |
1ms |
| others: | 195ms |
| total: | 276ms |

| 0 / 0 |
