|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Что оптимальнее в смысле производительности создавать табличное пространство, например TEMP, из одного большого файла 1Gb или из двух небольших по 512mb ? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2002, 06:35 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Поскольку временная табличная область создаётся для операций сортировки, а желательно что-бы сортировка производилась всё-же не на диске а в памяти (select name, value from v$sysstat where name like '%sort%';). В этом контексте непонятно зачем тебе вообще такие большие области? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2002, 10:05 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Административно запретить пользователям запускать произвольные селекты не могу. Несколько раз возникала ситуация, когда в TEMP оставалось свободного места 1 mb. Вот я и решил сделать запас для прожорливых запросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2002, 12:16 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
если файлы будут лежать на разных дисках (или RAID томах), то второй вариант лучше. PS 1Gb - это не очень много для TEMP ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 11:52 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
"PS 1Gb - это не очень много для TEMP". А размер остальных файлов данных в сумме сколько составляет для такого TEMP? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 12:24 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Нужно ориентироваться не на размер все остальных файлов в сумме, а на размер наибольшего сегмента. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 12:44 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Я не говорю что что так надо ориентироваться, я просто спрашиваю. Если у меня база скажем для примера, у которой пользовательские файлы данных составляют 800Mb и 400Mb индексы. И если при этом 1Gb на TEMP - всё это выглядит как-то нелепо. Поскольку операции сортировки используют место на диске временно, это сколько ко же одновременно должно работать пользователей и какие они должны выдавать запросы, что-бы использовать такой большой TEMP? Я могу например привести такую статистику по своей базе,правда не за самый нагружаемый период, за 10 дней: sorts (memory) 68566 sorts (disk) 0 sorts (rows) 61927470 Это в принципе не очень много, но размер TEMP у меня всего 100Mb и как видишь сортировок на диске нет вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 14:10 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
какой размер наибольшего сегмента в базе? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 14:18 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
SQLWKS> select max(bytes)/1024/1024 from dba_segments 2> MAX(BYTES) ---------- 292,304688 Выбрана 1 строка. Тебя это интересовало? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 14:23 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
допустим это индекс и вам его нужно перестроить. Сортировка не пройдет ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 14:44 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Вообще это таблица, но есть индекс для этой же таблицы: SQLWKS> select 2> bytes/1024/1024 3> from 4> dba_segments 5> where 6> bytes = ( 7> select max(bytes) from dba_segments where segment_type='INDEX') 8> BYTES/1024 ---------- 117,8125 Выбрана 1 строка. То есть если я сделаю alter index <index> rebuild - то что он мне скажет? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 14:54 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
попробуй. добавь в конце слово online ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 17:34 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Команда alter index <index> rebuild - прошла нормально. Анализ показал, что размер файла временной области не увеличился. Зато увеличился размер индексной области, т.е временные сегменты при сортировке выделялись непосредственно в ней. Это конечно не очень хорошо. Но сортировка прошла. И все жё "пользователям запускать произвольные селекты" и перестоение индексов задачи немного разные. И без особой необходимости, причём ежедневно перестроение индексов тоже я не делаю и думаю никто не делает. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 18:18 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
да, видимо, я не показательный пример привел с index rebuild. Но суть от этого не меняется. Неважно, часто это нужно или нет, но любой объект должен быть обслужен без ошибок любой операцией менеджмента. Это легко понять, когда после 8ми часов работы процесса вы увидите сообщение о нехватке места в TEMP'e. Народная формула -минимум 2-2.5 размера бОльшего сегмента. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2002, 18:59 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Ну вот, здрасте, я понимаете ли базу свою подпортил - увеличил размер индексного файла данных на несколько десятков Mb, а пример оказывается был не показательный А по поводу вопроса скажу, что изначально разговор шёл, о том что эта область нужна именно для пользователей. Я думаю, для административных работ, можно временно выделять отдельную временную табличную область, назначать её как темповую только для админа для таких операций как ты предложил проверить. А поскольку подобные работы не каждый день проводятся, то можно её удалять, что-бы он в бэкап не попадала. Понятие большой/маленький это очень индивидуально для каждой отдельной базы данных. Поэтому каждый подбирает параметры базы так как это требуется в конкретном случае. Я думаю, что я не стану сейчас себе увеличивать временную область со 100Mb до 1G, даже при том что я согласился с формулой, что "2-2.5 размера бОльшего сегмента." Просто пока нет такой необходимости. Есть хорошая формула - решать проблему по поступлении. Поэтому предлагаю тему закрыть. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2002, 09:15 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
ок, упорный вы наш. Я вобщем то не собирался вас переубеждать. PS выделенный TEMP для админа - это что-то новое в практике. Ссылкой на источник не поделитесь? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2002, 11:27 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
To killed: предполагаю, что речть про TEMP админу подразумевала под собой следующее: CREATE / ALTER USER <ADMIN> TEMPORARY TABLESPACE <temp_for_admin> Наверное это... Могу только предполагать, я еще не дорос до таких проблем... пока :) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2002, 12:16 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
"To killed: предполагаю, что речть про TEMP админу подразумевала под собой следующее: CREATE / ALTER USER <ADMIN> TEMPORARY TABLESPACE <temp_for_admin>" Блин, писал большой расширенный ответ, но комп грузанулся, не успел отправить. Снова писать не буду. Скажу кратко. Вобщем, всё правильно, так и есть, как написал SAA_ 1. Создаю новую temp 2. содаю пользователя, назначаю ему эту temp 3. даю права, какие надо 4. выполняю операции, в частности alter index ... 5. после завршения работ, перевожу в offline и удаляю Причём, что-бы не быть голословным я всё это произвёл только что на своей базе. Скажу что темповая область изначально была 10Mb, но в результате увеличилась до 89Mb. Так что сортировка прошла не зависимо от того что размер сегмента 117Mb. По такому же принципу создаются и сегменты отката, для длительных множественных транзакций при проведении спец. работ. Можно конечно эти области и не удалять. Но я не хочу их бэкапить каждый день, зачем тратить место и время. Всё, из дискуссии выхожу. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2002, 12:37 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Ребята, смысла нет создавать отдельное таб. пр-во ТЕМП специально под операцию, а потом после завершения операции его удалять. Это абсурд. Если достаточно дискового про-ва для создания ТЕМПа, так пусть оно и живет. 2softbuilder Бэкапить TEMP не нужно, почитайте Backup & Recovery Guide ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2002, 12:58 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
Даже если идёт горячий бэкап? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2002, 14:05 |
|
Один большой или два маленьких
|
|||
---|---|---|---|
#18+
"...Даже если идёт горячий бэкап?..." Можно конечно и бекапить (если есть желание), а можно и не делать для TEMP-таблеспейса: alter tablespace ... begin backup ... alter tablespace ... end backup Просто при востановлении из этого бэкапа надо будет создать этот таблеспейс заново, что очень просто. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2002, 14:20 |
|
|
start [/forum/topic.php?fid=52&fpage=2835&tid=1992831]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
others: | 256ms |
total: | 384ms |
0 / 0 |