Oracle VM - success story !

Удалось изменить мнение об Oracle VM в лучшую сторону. Наш консалтинг из Голландии провел семинар, на котором показал некоторые очень полезные трюки.

Трюк N1.
Как известно, Oracle VM необходимо ставить на голое железо. А значит, нужно как то разбивать существующий жесткий диск, или вообще терять его содержимое. Это неудобно. Тогда берется внешний USB диск и Oracle VM ставиться на него :)

Трюк N2.
Нет внешнего USB диска ? Не беда, берем VMware и ставим Oracle VM под VMware. А затем ставим paravirtualized OEL5.1. И все замечательно работает ! Конечно, в такой ситуации, мы не можем запускать full virtualized guest, поскольку Oracle VM не имеет контроля над физической машиной. Никаких проблем с созданием вирутальных интерфейсов для кластера нет.

Трюк N3.
Хочется запусть 11g RAC ? Никаких проблем. Где угодно в сети ставим openfiler и наши ноды замечательно работают с общей БД по протоколу ISCSI. Openfiler требует всего лишь 256mb памяти. Производительность для демо целей вполне достаточная.

Итого, на ноутбуке с 2 gb памяти у меня стоит и работает одновременно openfiler, oracle vm manager, oracle VM c OEL5. Более чем достаточно, для изучения всей инфраструктуры.


Кстати, не слишком дорого приобрести внеший диск скажем 1 Tb, который подключается по Ethernet и изображает из себя NFS. 11g RAC сертифицирован с некоторыми NFS устройствами, что позволяет надеяться, что для тестовых целей можно взять не сертифицированное устройство. В интернете легко можно найти подробности установки. Берете машину с 3 Ghz 2 core, 4 gb памяти, грузитесь в внешнего винта, всю базу размещаете на NFS. Если поставите паравиртуализационное ядро производительность будет более чем достаточной для разработки.

В заключении приведу несколько полезных ссылок по Oracle VM.

http://www.oracle.com/technology/software/products/virtualization/vm_templates.html
http://www.oracle.com/technology/software/products/virtualization/vm_templates_other.html
http://wiki.oracle.com/page/Oracle+VM?t=anon
http://wiki.oracle.com/page/Oracle+VM+Server+use+case%3A+multiple+networks%2C+multipathed+SAN+storage
https://metalink.oracle.com/metalink/plsql/f?p=130:7:1569024644646411356:::::
http://www.google.com/ncr :))))


Вот например такой трюк я нашел пользуясь перечисленными выше ссылками:

xm list дает список всех доменов
/usr/lib/xen/bin/xenconsole попадаем в консоле
ctrl+] - выйти из консоли.


Анонс:
Готовится к выходу первый семинар для партнеров по Oracle VM.
Можно будет "заказывать" начиная со второй половины апреля.


Читать дальше...

10.2.0.4 is available for Linux x86

10g Release 2 (10.2.0.4) Patch Set 3 for Linux x86 is available for Linux x86.
Для прочих платформ на момент написания этой заметки этого patch пока нет.

Выход этого patch событие знаковое. Как вы конечно помните, именно с этого patch level была обещана возможность захвата нагрузки (capture workload) для нашей опции Real Application Testing.

На metalink patch можно найти нажав на Patches&Updates -> Quick links и дальше подведя мышку к Oracle Database.

Update 1.
Обещают, что в этом патчсете появится OPROCD процесс. Я удивлялся раньше, где он.

Update 2.

Поставил патчсет

[oracle@rac2 ->]$sqlplus '/as sysdba'

SQL*Plus: Release 10.2.0.4.0 - Production on Fri Feb 29 23:41:10 2008

Copyright (c) 1982, 2007, Oracle. All Rights Reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

root 4236 3512 0 15:58 ? 00:00:00 /bin/sh /etc/init.d/init.cssd oprocd
root 4600 4236 0 15:58 ? 00:00:00 /u01/app/oracle/product/10.2.0/crs_1/bin/oprocd.bin run -t 1000 -m 500 -f

Появился пакет dbms_workload_capture.
Пакета dbms_workload_replay нет, wrc нет.

Database Control по умолчанию теперь работает через https (как в 11g)



Читать дальше...

Metalink Case Studies

Знаете ли Вы, что на metalink существует раздел
Knowlodege->Case Studies ?

Хочу обратить ваше внимание на 2 великолепных документа, практически инструкции по борьбе со странностями производительности. Конечно, все документы из этой серии достойны того, чтобы внимательно их прочитать.

  1. Почему у меня не используется индекс ? - 1,000,000 раз задаваемый вопрос. Посмотрите как грамотно ребята все разложили по полочкам, на что они обратили внимание. CS_stubborn_cbo_external.pdf Прекрасный образец исследования проблемы.
  2. Подземный стук в БД, все виснет время от времени ? CS_Intermittent_Hang.pdf Тут меня восхитило, как они нашли соответсвующий баг. Не скрою, я думал что это почти невозможно - оказалось, это даже не слишком сложно.
Что важно, описанная техника реально применима в жизни. И не слишком зависит от текущей версии БД.

Update 1.
В 11g появился Hang Manager. Кажется это процесс dia0. Пока не могу найти больше информации. Копать надо в сторону параметров _hm_* и _diag_hm*


Читать дальше...

ASMlib

Существует убеждение, что ASMlib для Linux позволяет ускорить ввод-вывод. Это странно, но однозначного ответа получить нельзя. В презентациях иногда вспоминают это, иногда пропускают. Преподаватели на курсах имеют самые разные идеи насчет этого вопроса :)

За разрешением вопроса о том, что же далает ASMLIB обратимся к книге Oracle Automatic Storage Management. Поскольку один из авторов Rich Long, Director of Development, можно предположить, что это наиболее достоверный источник информации.

В книге утверждается, что ASMLIB обеспечивает следующие 3 основные функции (курсив мой):

  1. Device discovery
    1. Действительно, с помощью команды oracleasm можно создать asm диски, чтобы облегчить немного жизнь ASM. В заголовок диска прописывается специальная строчка, говорящая о том, что следует адресоваться к диску с помощью asmlib. Далее в параметре ASM инстанс необходимо прописать asm_diskstring="ORCL:*" чтобы предотвратить открытие всех дисков для поиска необходимых ASM. Более подробно можно прочитать http://www.oracle.com/technology/tech/linux/asmlib/persistence.html
      Но в принципе, udev делает тоже самое (?)


  2. I/O processing
    1. Cокращается число file handler в системе. Для каждого диска существует всего лишь один, так называемый "portal device", через который ведется весь ввод-вывод. С одной стороны, это полезно чтобы не подкручивать лимиты ОС. С другой стороны, если файлы открываются, то их нужно и закрывать, а это не все процессы делают. Мне говорили, что замена ASM диска без ASMlib может стать проблемой, если дисков очень много.
    2. ASMLIB не использует kernel async IO. Используется собственный механизм вводы-вывода, также асинхронный. надеюсь, что он быстрее чем родной, ведь его не просто так написали ?

  3. Perfomance
    1. Делается меньше переключений контекста, что экономит CPU time. Верю, но почему не воспользовались интерфейсом ODM, который реализовал, например, Veritas ?
    2. За один вызов к asmlib можно выполнить несколько операций I/O. Наверно для full scan можно, а вот для чего еще это работает я понять не могу.

Почему меня так беспокоит весь этот гондурас ?

Если бы видели матрицу поддержки EMC powerpath ASMlib он вас тоже бы беспокоил.
Через версию они (EMC) все ломают. Апофеозом борьбы можно считать Note:469163.1
которая рекомендует игнорировать все происки врагов и использовать лом:
/usr/sbin/asmtool -C -l /dev/oracleasm -n -s /dev/ -a force=yes

Вот только зачем, если у Вас не тысячи пользователей и сотни файлов ?
Из-за экономии 10% CPU при следующем upgrade powerpath можно потерять свои диски...

Резюме:

Посмотрите сначала на поддержку ASMLIB на вашей платформе. Посмотрите на кол-во дисков и пользователей. Взвесьте все "за" и "против" - теперь Вы их знаете. В любом случае вы всегда можете мигрировать raw устройства в asmlib диски без потери данных. Дело в том, что в первых 128 байтах на диске находится название дисковой группы и признак, управляется ли этот диск asmlib. Так что oracleasm cre
atedisk всего лишь проставляет признак, не разрушая название группы.

Update 1.
Для чтение заголовков ASM дисков у нас существует редактор kfed. К сожалению описание самого заголовка internal only. Можете поэкспериментировать сами :)


Читать дальше...

11g: продвинутые возможности для разработчиков

Игорь Мельников (Igor.Melnikov) представляет очередной семинар для разработчиков,
на этот раз "Oracle Database 11g: продвинутые возможности для разработчиков".

Так, например, больше вы нигде не узнаете, как взглянуть на свой pl/sql код после оптимизации ...


Читать дальше...

Семинар Oracle RAC для разработчиков (окончание)



Наш семинар закончен. Отзывы участников вполне положительные. Мы так думаем, по крайней мере :) Все оценки только "отлично" или "хорошо". Замечания ( и очень ценные !) так же есть. Будем работать над их устранением.

Материалы для участников доступны по следующей ссылке. Там же объясняется, почему мы предоставляем их только участникам и просим их не распространять.

PS Фотография - пока какая есть :(
Point-and-shoot cameras - must die ! Canon - rules !


Читать дальше...

Семинар Oracle RAC для разработчиков

Наш семинар Oracle RAC для разработчиков начинается уже сегодня. Мы многое постарались сделать. Изучена литература (список см. слева), переработан контент семинара, чтобы сделать его интереснее. Так только в первый день семинара 9 презентаций и примерно 15 демонстраций. Но если Вы опоздали с регистрацией - не волнуйтесь, следующий объявлен в конце марта, предположительно 27-28 числа. Он будет конечно еще интереснее, так как не все что хотели, мы физически успели реализовать.
You are welcome !

UPDATE 1.
На первый день пришло 65 человек (!). В 17.45 часов мы решили проголосовать чтобы перенести еще одну презентацию (~45 мин) на следующий день. Публика проголосовала, чтобы слушать немедленно. Гвозди бы делать из этих людей :)


Читать дальше...

Oracle Enterprise Linux story

Wim Coekaerts, на минуточку Vice President of Linux Engineering,
более 2-х часов рассказывал про Linux и Oracle VM.

Я задал ему несколько вопросов:

Q. Чем отличается Oracle Enterprise Linux (OEL) и Red Hat ?
A. Только логотипами. Действительно в R4 U4 мы поставили несколько обновлений, которые не принял Red Hat, но с выходом R5 мы это прекратили. Ядро одно и тоже, так и будет. Но вы можете получать обновления с linux.oracle.com.

A. Является ли Unbreakable Linux программой только для USA ?
Q. Нет, это глобальная инициатива. Support по OEL ничем отличаться от support остальных продуктов не будет. Т.е. будет все так же глобальным. Да, 10 лет назад все знали инженеров в поддержке, теперь это совсем не так, но это общая политика.

Q. Мы уже знаем, что с помощью Oracle VM можно построить hardware partitioning,
платить только за процессоры в партиции, но можно ли будет на 8 сокетный сервер ставить SE* в 2 сокетную партицию ?
A. Я уверен, что для Oracle VM сделают исключение. Пока нет, но я уверен, что его сделают.

Q. Будет ли развиваться OCFS2 для windows и других платформ ?
A. Я этого не знаю, поскольку отвечаю только за Linux направление

PS

Немного прояснилось почему вообще решили делать Oracle Enterprise Linux. По официальной версии в RedHad не было специалистов по базам данных. Все равно приходилось обращаться в Oracle за консультациями. Решили поэтому сократить путь для выпуска обновлений. Еще раз подчеркну - именно для того, чтобы не создавать отдельного linux в OEL и нет например нужных для БД параметров ядра, пользователя oracle и прочее прочее.

Насколько правдива эта история - я не знаю. Записано с чужих слов :)


Читать дальше...

Jonathan Lewis "Optimizing Oracle" seminar

Удалось посетить семинар Jonathan Lewis Optimizing Oracle. Описание семинара на сайте немного устарело, но в целом совпадает с действительностью. Семинар - совершенно открытый и проводиться Oracle University.

Важно понимать перед поездкой , что семинар построен совсем не по книге Cost-Based-Oracle-Fundamentals. Совпадение с книгой есть, но всего на 1 или две презентации (я думаю 1.5-2 часа). Но книгу лучше прочитать до семинара.

Этот семинар о том, как работает Oracle. Чего следует избегать и почему. Почти в каждом слайде (!) ссылка на пример.



Семинар в первую очередь могу рекомендовать тем, кому интересно, как на самом деле работает Oracle. Кто готов "копаться" дальше самостоятельно.

Я полагаю, что реальную пользу прежде всего извлекут те, у кого накоплен практический опыт преодоления проблем. Кто сталкивался с проблемами производительности, находил свои решения. Прежде всего, мне кажется это application dba. Т.е. кто по роду своей деятельности больше разбираются с чужим кодом, чем с backup & recovery. Мне кажется, что нужно иметь хотя бы 5 летний опыт работы с Oracle, начиная с 8i. И это не семинар как писать на pl/sql, скорее как исправить уже сложившуюся ситуацию.

Большинство примеров приводится для версий 8i и 9i. Меньше для 10g и считанное число для 11g. Но вам показывают идею. Хочется понять как это работает в 11g - пожалуйста, берите пример и смотрите.

Джонатан очень интересно рассказывает. Я бы сказал - очень профессионально. Четко, выдерживает тайминг, отлично знает материал. За 3 дня ни разу не показалось, что он устал. Боюсь, что у этого семинара есть только один недостаток - слишком много информации :) Вы получаете тонны материала ! Вы получаете CD c 460 примерами !

Даты следующих семинаров Вы можете посмотреть на сайте Джонатана.

И пожалуй, этот семинар - самое интересное, что я в жизни слышал про Oracle Database.

PS
На фотографиях - ночной Dublin и зимний Howth. Ирландия (я был первый раз) мне очень понравилась. Конечно лучше приезжать не в феврале. При температуре около 0 градусов стоять у моря невозможно - околеваешь сразу. А на открытой местности ветер может чуть-ли не сбить с ног. Капюшон - крайне важная часть одежды ирладцев зимой. Посмотреть все фотографии


Читать дальше...