Tuesday, August 11, 2015

Почему для базы данных ASM лучше чем файловая система ?



Наличие ФС означат, что нельзя безнаказанно взять и записать несколько байт в любое место диска. Записать в файловую систему можно только блок файловой системы. А не блок Оракла.
Для информации: у ext2,ext3 блок ФС = 4К.
У Оракла блок датафайла обычно 8К, но  могут быть 4К, 16К, 32К. Блок REDO равен 512 байт на всех платформах, за исключением НPUX где он 1К.

Таким образом, операцию записи, полученную от Оракла надо предварительно оформить в виде блока файловой системы, т.е. ОС должна транслировать команду Оракла в команды для ОС.

А сделать это может только процессор в оперативной памяти, потому что диск сам по себе не способен превратить блок Оракла в один или несколько блоков файловой системы.
А чтобы блок ФС изменить его вначале надо прочитать с диска.

В результате на одну операцию записи со стороны Оракла, в ОС возникают две дисковых операции:
- чтения одного или нескольких блоков ФС с диска в оперативную память,
- изменение блоков файловой системы
- запись блоков ФС обратно на диск.

При работе с сырыми томами (ASM) Оракл посылает в ОС команду записать несколько что-то куда-то, а ОС тупо выполняет эту операцию записывая эти данные в соответствующий сектор диска (головка, дорожка, сектор). Операции чтения  в такой конфигурации не возникает. Поэтому ASM быстрее.

No comments:

Post a Comment

cellcli -e list diskmap

The interesting LIST DISKMAP command in the storage cells links all views to hard disks: PCI bus address as Name 252:5, OS name (/dev/sdh,...