Мы бы хотели посвятить эту книгу памяти жертв 11 сентября 2001г.
Один из них, ставший героем, был сотрудником корпорации Oracle.
Его звали Тодд Бимер. Благодаря героизму Тодда и других пассажиров
рейса 93 в тот день было спасено много жизней. Пассажиры этого рейса
погибли за родину, и благодарная нация в вечном долгу перед ними.
Скотт, Мэтт и Майк
В первых фразах Введения (стр.viii), как нам представляется, звучит основной
лейтмотив рецензируемой книги: “Мы взялись за этот проект, потому что несколько лет находились между двух огней: занимались поддержкой РСУБД на платформе, которую мы часто не хотим признавать жизнеспособным конкурентом более традиционных систем РСУБД на основе Unix. Отчасти по этой причине хорошей информации об Oracle для Windows NT всегда не хватало, но мы надеемся, что наша книга частично восполнит этот пробел.”
Правда, вряд ли под выделенным рецензентами местоимением “мы” авторы имели в виду себя (отнесем это к совсем немногим неудачам переводчика),
ведь поставленную задачу они выполнили и не просто
“частично”. В литературе по Oracle (по крайней мере, на русском языке) нет
более информативной книги по системе “сервер Oracle/платформа Windows”.
В эту книгу влюбляешься с первого к ней обращения. [Не правда ли, довольно странное признание убежденных UNIX-оидов, коими считают себя авторы рецензии?!] - Пожалуй, нет, и вот почему:
- книга очень технологична, в ней рассмотрено множество вопросов, раскрывающих взаимное влияние конфигурации ОС Windows NT/2000 и РСУБД Oracle9i/8i, тонкости инсталляции, организации функционирования и сопровождения промышленной базы данных Oracle в операционной среде Windows NT/2000. Именно промышленной (это очень существенно!), так как тестовые, учебные, личные и даже административные базы данных Oracle были и будут ставиться под Windows, несмотря на любые предпочтения и рекомендации даже самых продвинутых пользователей;
- книга правдива, в ней не скрываются (хотя сильно и не выпячиваются) ограничения Windows 2000. Самое откровенное признание авторов: “Единственно, в чем Oracle не блещет для Windows 2000, - это очень большие системы” (стр.108). Основными ограничениями, на наш взгляд, и это отражено в книге, являются архитектурные решения Windows по организации управления процессами/потоками и ограничения по задействованию оперативной памяти;
- книга предельно полезна для АБД Oracle, которым приходится работать с Windows 2000 в силу различных обстоятельств, в том числе и в результате правильного и обоснованного выбора платформы для сервера базы данных Oracle. Рекомендации по конфигурации экземпляра, выбору оптимального варианта RAID, использованию возможностей Windows 2000, несвязанных с эксплуатацией сервера базы данных Oracle9i, и т.д. будут очень полезны и практическим АБД Oracle, и преподавателям, и техническим консультантам;
- в литературном плане книга очень хорошо написана (и переведена почти без ошибок, что немаловажно), поэтому она легко читается даже в электричке;
- и “последнее в списке, но не по важности” - в споре Unix- и Windows-оидов, какая операционная среда лучше для СУБД Oracle, эта книга является решающим аргументов в пользу каждой, как это ни покажется странным, из сторон. Приведенные ограничения Windows препятствуют ее применению для очень больших систем, но высоко квалифицированная настройка и сопровождение Windows вполне может повысить общую производительность системы базы данных. В этом кроется решение и второй проблемы противоречий упомянутых Unix/Windows–оидов: сопровождение эффективной системы Oracle под управлением Windows требует не менее квалифицированного системного персонала, чем сопровождение Oracle под управлением Unix. И представленная книга очень много дает в плане достижения подобной высокой квалификации.
Собственно говоря, после высказанных дифирамбов рецензию можно было бы благополучно закончить.
Но книга настолько привлекательна, что стоит немного больше рассказать о ее содержании, отметить ее выигрышные позиции.
Книга содержит так много интересного материала, что при подробном описании
объем рецензии может сравниться с объемом самоё книги :-).
Основные темы книги приведены в аннотации изд. “ЛОРИ” и отражены в ее оглавлении:
- Часть 1.“Общие сведения”
- Часть 2. “Реализация РСУБД Oracle для Windows 2000”
- Часть 3. “Windows 2000: основная платформа управления предприятием”
- Часть 4. “Кластеризация и высокая готовность”
- Часть 5. Приложения:
- А. “Конфигурация управления носителями для резервного копирования на ленту с помощью RMAN”
- В. “Генерация и поиск диагностической информации для Oracle9i”
Поэтому мы не будем останавливаться на тех разделах книги, в которых ведется освещение возможностей
собственно РСУБД Oracle9i. Это достаточно известные сведения, да простят нас те, кто впервые знакомятся с Oracle и/или впервые читают рецензию на книгу по Oracle.
На какие темы стоит обратить внимание:
- использование реестра и переменных Windows для Oracle, реализация нескольких баз данных Oracle на одной установке Windows;
- концепция потоков в Windows и связанные в ними ограничения;
- использование оперативной памяти, выделяемой экземпляру Oracle;
- применение RAID-памяти, конфигурация логических дисков на RAID и использование swap-памяти (то есть, файла подкачки страниц pagefile.sys).
Нам кажется, что это самые первоочередные (но не все, конечно) вопросы, которые должны быть изучены еще до установки ОС Windows на машине и инсталляции РСУБД Oracle под управлением Windows. Ошибки начальной установки очень трудно, иногда невозможно, устранить в процессе промышленной эксплуатации системы. И по своему опыту мы знаем, как у ряда Заказчиков были сделаны буквально все ошибки конфигурации Windows, которые так успешно препятствовали применению Oracle.
Конфигурация. Для начала приведем перечень разновидностей Windows 2000 (стр.5):
- Windows 2000 Professional – эквивалентна Windows NT4.0 Workstation - поддерживает два процессора и до 4Гбайт ОЗУ;
- Windows 2000 Standard Server - основная серверная платформа поддерживает до четырех процессоров и до 4Гбайт ОЗУ, эквивалентна Windows NT4.0 Server;
- Windows 2000 Advanced Server - поддерживает до восьми процессоров и до 8Гбайт ОЗУ, возможность 2-узловой кластеризации, эквивалентна Windows NT4.0 Enterprise Edition;
- Windows 2000 Datacenter Server- поддерживает до 32 процессоров и до 64Гбайт ОЗУ, возможность 4-узловой кластеризации, неэквивалентна Windows NT4.0.
Поскольку книга написана в 2002г., а сейчас на дворе 2005г., следует уточнить некоторые сведения, связанные с прогнозами и надеждами того времени:
- РСУБД Oracle9i сертифицирован для всех упомянутых платформ Windows 2000;
- для 64-битовой ОС Microsoft Windows XP на процессорах Itanium сертифицированы Enterprise и Standard варианты 64-битовой Oracle9i, но не применим 32-битовый Oracle9i;
- для ОС Microsoft Windows XP на процессорах AMD64/EM64T сертифицированы Enterprise и Standard варианты 32-битовой Oracle9i, работающий исключительно под управлением 32-битового варианта Windows XP.
Не ошибитесь в выборе (покупке) техники и устанавливаемой на ней базы данных Oracle9i, если Вы не пользуетесь консультациями официальных партнеров Oracle!
Реестр. Конфигурационная информация может поступать из нескольких источниках (переменные среды, ввод из командной строки), а не только из реестра, который “является базой данных, в которой содержится системная информация, относящаяся к ОС, аппаратным средствам и любому установленному программному обеспечению. Это основное место хранения настроек окружения для большинства пользователей и приложений, а также информации, необходимой для конфигурации и загрузки системы.” (стр. 22-23) Особенно важно это хорошо знать, если Вы устанавливаете несколько баз данных Oracle на одной машине. Это вполне возможно, но хлопотно, и совершенно нами (рецензентами) не рекомендуется для баз данных, находящихся в промышленной эксплуатации.
Потоки. “Поточная организация архитектуры налагает некоторые ограничения, главное из которых – память. Поскольку архитектура состоит из потоков одного процесса, адресное пространство ограничено, и остается меньше памяти для маневра.” (стр. 8) Не вдаваясь в типы потоков, надо сказать, что экземпляр Oracle (программное ядро, SGA, PGA процессов) в среде Windows представляет собой один процесс, разделяемый на потоки по количеству серверных процессов, фоновых и переднего плана, как обычно для Oracle. И на это все-про-все выделяется всего 4Гбайта адресуемой памяти, из которых 2Гбайта Windows забирает под свои нужды. Есть ухищрения, чтобы увеличить объем памяти до 3Гбайтов, но это можно не в каждой разновидности Windows 2000, и не по силам каждому системному администратору. Все должно решиться, по словам авторов книги, когда MicroSoft реализует 64-битовую версию ОС Windows 2000, в которой адресуемая память каждого процесса составит 1Терабайт, а конкретный процесс будет способен использовать столько памяти, сколько вы ему сможете дать.
А пока для существующих установок на стр.165 приводятся рекомендации по обдуманному использованию памяти:
- сократить число соединений с базой данных, используя многопоточный сервер:
- уменьшить размер стека для каждого из соединений;
- снизить использование SGA каждым сеансом;
- уменьшить размер SGA уменьшения размера стека, памяти SGA,…
И следом приводятся примеры, как, например, использовать утилиту orastack.
Обратим внимание на рекомендацию “уменьшить размер SGA”, ибо в классических рекомендациях всегда звучит “чем больше SGA, тем лучше”.
Попутно отметим распространенную ошибку при комплектации машины – поскольку любое приложение в Windows 2000 использует всего 2Гбайта памяти, то и на машину ставится 2Гбайта физической памяти.
RAID. Еще две распространенные ошибки, одна из которых приводит к дополнительным затратам при покупке дисковой памяти RAID, а другая к его недостаточно эффективному использованию. Почему-то считается, что чем выше уровень RAID, тем лучше. Тем дороже – это точно, но по части эффективности, скажем, при конфигурации базы данных Oracle, - не всегда. Приведем некоторые рекомендации (стр. 96) по конфигурированию RAID:
- не применяйте RAID 5 для файлов, требующих быстрой записи на диск, поскольку RAID 5 производит четыре физические операции ввода-вывода на каждую логическую операцию ввода-вывода. По крайней мере, не размещайте на томах RAID 5 журнальные файлы;
- RAID 0+1 (зеркальные наборы томов с чередованием) обеспечивают отказоустойчивость с меньшим воздействием на производительность, чем при простом зеркалировании;
- чередование (RAID 0) по контроллерам, а также по дискам повышает производительность и т.д.
Вторая ошибка связана с форматированием всего пространства RAID в единый логический диск с:\. Это, скорее всего, еще наследие от персоналок. Никакой свободы маневра АБД по размещению файлов табличных пространств и журналов. Но кроме этого, Windows 2000 разрешает разместить на каждом диске не более одного файла подкачки страниц pagefile.sys, размером не более 4Гбайтов. Вот и представьте себе, в какой тесноте работает Ваша промышленная база данных Oracle с большим числом одновременных пользователей!
Заключительные замечания.
Resource Kit. Отмечая достоинства этой книги, следует сказать, что на стр. 86 приведен список сайтов, на которых можно получить бесплатное дополнительное инструментальное программное обеспечение для работы с Windows 2000. Думается, что профессиональный системный администратор обязательно должен воспользоваться таким ресурсом.
Приложения к основному тексту. Они хотя и не велики по объемам, но содержат существенную информацию. В приложении А говорится о системе резервирования на внешней ленточной памяти фирмы VERITAS, о программном продукте NetBackup Server/Client, о технологии резервирования базы Oracle утилитой RMAN. Большие базы данных требуют большой памяти для сохранения (резервного копирования), и VERITAS предоставляет одно из современных решений этой проблемы.
В приложении В рассмотрены инструментальное средство отладки Oradebug (едва ли не в первый раз в Oracle-литературе столь открыто) в стыковке с трассировкой SQL, утилитой TKPROF и др.
Теперь еще раз вспомним Введение:
“…мы надеемся, что наша книга частично восполнит этот пробел” отсутствия хорошей информации об Oracle для Windows NT. Судите сами, уважаемые читатели, справились ли авторы со своей задачей.
Виктор Абрамов,
научный редактор "Oracle Magazine/Русское Издание"
Анатолий Бачин,
главный редактор “Oracle Magazine/Русское Издание” |