Заранее прошу прощения за странный вопрос:
Пишет ли dbwr в temp (имеются в виду любые типы temporary segments)?
Oracle: простой вопрос
-
- Уже с Приветом
- Posts: 507
- Joined: 15 May 2002 13:30
- Location: Moscow, Russia
-
- Уже с Приветом
- Posts: 1476
- Joined: 05 Dec 2000 10:01
- Location: Vilnius -> Bonn
Re: Oracle: простой вопрос
hren wrote:Заранее прошу прощения за странный вопрос:
Пишет ли dbwr в temp (имеются в виду любые типы temporary segments)?
Еще более странный вопрос - а кто же еще ? (Имеется ввиду физическая запись на диск). Притом происходит это в нескольких случаях : при checkpoint time-out или при отсутствии памяти (грубо) или при переключении redo-logs. Здесь я, правда, не помню кто обновляет control files - lgwr или dbwr.
-
- Уже с Приветом
- Posts: 664
- Joined: 05 Jun 2002 01:11
Re: Oracle: простой вопрос
hren wrote:Заранее прошу прощения за странный вопрос:
Пишет ли dbwr в temp (имеются в виду любые типы temporary segments)?
No, it does not.
VC
-
- Уже с Приветом
- Posts: 525
- Joined: 01 May 2002 20:29
- Location: CT->MA->TX->UT
-
- Уже с Приветом
- Posts: 664
- Joined: 05 Jun 2002 01:11
Lazy44 wrote:As far as I remember dbwr writes only into permanent tablespaces. User processes writes into temp
Close, but not quite there ...
The shadow Oracle process spawned by the user process (not the user process itself) will indeed write to the temp ts.
In addition, the shadow process will write to the 'normal'/permanent ts during index creation/lob operations/ctas and such.
VC
-
- Уже с Приветом
- Posts: 507
- Joined: 15 May 2002 13:30
- Location: Moscow, Russia
То есть в temp ts и ts типа temp пишет серверный процесс. А в temp segments, которые (простите за тавтологию) временно являются временными, например, до окончания создания индекса, в "нормальных" ts, пишет dbwr?
Кто тогда осуществляет space management для temp? Сами серверные процессы или smon?
2JustMax: дело в том, что запись на диск при сортировках идет мимо кэша (это в явном виде указано в штатной документации), соответственно и запись блоков при нехватке буферов невозможна. Запись по checkpoint или при переключении журналов в случае дисковой сортировки это довольно странная концепция. Собственно поэтому и возник вопрос.
Кто тогда осуществляет space management для temp? Сами серверные процессы или smon?
2JustMax: дело в том, что запись на диск при сортировках идет мимо кэша (это в явном виде указано в штатной документации), соответственно и запись блоков при нехватке буферов невозможна. Запись по checkpoint или при переключении журналов в случае дисковой сортировки это довольно странная концепция. Собственно поэтому и возник вопрос.
-
- Уже с Приветом
- Posts: 664
- Joined: 05 Jun 2002 01:11
-
- Уже с Приветом
- Posts: 507
- Joined: 15 May 2002 13:30
- Location: Moscow, Russia
-
- Уже с Приветом
- Posts: 664
- Joined: 05 Jun 2002 01:11
hren wrote:Извините, прочитал невнимательно. Итак, dbwr никогда не пишет в temp.
Well, no, I forgot to mention GTTs. DMLs to temporary tables (which are created in temp) are performed as usual, via cache and DBWR.
The cache/dbwr is bypassed for:
sort operations
parallel scans
LOB handling
direct path inserts
index creation
CTAS
hren wrote: Остается только вопрос с реализацией space maanagement'а.
Space management follows the usual path: cache->dbwr.
VC