 |
|
Настольная книга по администрированию
Oracle Tips by Burleson Consulting
|
Обзор компонент
Теперь, когда мы провели обзор архитектуры Application
Server 10g, давайте продолжим наше путешествие обзором компонент. Не все эти
компоненты могут оказаться установленными на тех или иных предприятиях, но
Application Server 10g позволяет любой из них (или всем им) быть созданной
внутри архитектуры.
Application Server Portal
Подобно таким инструментальным средствам других
производителей как Dreamweaver или Microsoft FrontPage, Portal позволяет
разработчикам создавать и развертывать Web-контент. Существенное же различие
состоит в том, что, используя Portal, разработчики могут включать динамически
создаваемые, персонифицированные Web-страницы из многочисленных источников
данных. Программный продукт Portal предлагает следующие возможности:
создание, управление и сопровождение страниц Portal
сборка Web-контента из множества источников с использованием Portlets
контент Web-страницы, содержащий данные, полученные из базы данных
возможности публикации с использованием простых мастеров
такие продвинутые возможности как текстовый поиск (с помощью Oracle Text) и
беспроводная поддержка по интерфейсам XML и HTML
Из этих компонент складывается архитектура, которая
позволяет разработчикам быстро создавать и развертывать контент Web-страниц. На
рисунке 1-8 изображен администратор Portal, определяющий контент Portlet (портлетов)
и контент основных Web-страниц. В исполнительном периоде пользователи Portal
обращаются к этим определениям для создания контента для публикации, используя
определения Portlet, определения Web-страниц и данные из БД Oracle.
Исследование всех возможностей доставки контента, имеющихся
в Oracle Application Server 10g, выходит за рамки этой книги. Полную информацию
по этому вопросу можно найти в книге Вандиера и Кокса ?Справочник по Oracle9i
Application Server Portal? (?Oracle9i Application Server Portal Handbook?) (изд-во
McGraw-Hill/Osborne, 2001 г.).
Рисунок 1-8. Архитектура Application Server Portal 10g
Application Server Discoverer
Эта компонента позволяет облегчить реализацию запросов
конечных пользователей. Discoverer является инструментальным средством для
создания нерегламентированных запросов, отчетов, выполнения анализа и публикации
в Web. Подобно Crystal Reports и Business Object (коммерческим продуктам,
генерирующим запросы SQL на основании принятых с графического дисплея данных,
что делает возможным составление запросов к базе данных для лиц, не знающих
синтаксиса операторов SQL), Discoverer предлагает модельное представление GUI (ГИП
? графический интерфейс пользователя) для спецификации контента БД Oracle и
формата отображения.
В дополнение к сказанному, Discoverer является
интеллектуальным инструментальным средством бизнес-анализа, имеющим интерфейсы с
Oracle Clickstream и БД Oracle. При использовании Discoverer конечный
пользователь разрабатывает так называемые рабочие тетради (workbooks). На самом
высоком уровне рабочая тетрадь является набором метаданных, включающим следующие
компоненты:
участвующие в запросе таблицы
форматирование отчета для результирующего множества
производимые над данными вычисления
После своего определения эти рабочие тетради позволяют
неопытным конечным пользователям с легкостью создавать нерегламентированные
запросы к БД Oracle, используя для этого графический интерфейс уровня конечного
пользователя Discoverer (Discoverer End-User Layer - EUL). Кроме того,
Discoverer позволяет конечным пользователям просматривать данные на нескольких
уровнях, погружаясь вниз для получения подробностей, или сворачивая данные до
уровня итогов.
Как видно из рисунка 1-9, при использовании Discoverer
имеются две основные фазы. Сначала администратор Discoverer создает рабочие
тетради, указывая используемые таблицы, информацию о форматировании и правила
вычислений для произвольного отчета. Затем (в фазе исполнения) конечный
пользователь обращается к EUL и создает персонифицированные отчеты, используя
для этого мастера Discoverer.
Рисунок 1-9. Архитектура Application Server Discoverer 10g
Основной частью администрирования для Oracle Discoverer
является разработка и сопровождение рабочих тетрадей и объектов метаданных. К
примеру, каждый раз, когда конечный пользователь запускает отчет, Discoverer
обращается к таблице метаданных eul_qpp_statistics базы данных инфраструктуры,
чтобы получить оценку времени выполнения отчета. Подробно вопросы
администрирования и использования Discoverer рассматриваются в книге ?Справочник
по Oracle Discoverer? (Oracle Discoverer Handbook) изданной в 2001 году
издательством McGraw-Hill/Osborne.
Oracle Forms Server
Программный сервер Oracle Forms Server - это продукт
эволюционного развития инструментального средства для разработки приложений
SQL*Forms. Первоначально он использовался для формирования экранов на базе
контентов Oracle. Усовершенствованный таким образом, чтобы он мог обеспечивать
поддержку HTML, Oracle Forms Server теперь используется в составе Application
Server 10g для формирования визуального образа Web-страниц, в состав которых
входит контент БД Oracle.
Поскольку Forms Server является главным ?мотором?
формирования Web-страниц, критичными аспектами администрирования Application
Server 10g в целом является администрирование и настройка именно этой его
компоненты. Более подробно вопросы администрирования и настройки Oracle Forms
Server будут рассмотрены в главе 10.
Персонификация Application Server
Анализ поведения пользователей при просмотре страниц и
создание соответствующего требованиям пользователей контента Web-страницы
превращаются для сильно загруженного сайта компании, занимающейся электронной
коммерцией, в труднопреодолимую вычислительную задачу. Для решения подобных
вопросов Oracle разработал наборы Oracle Application Server Personalization 10g
и Oracle Data Mining. Personalization является в высшей степени усложненным
инструментом и использует в своей работе внутренние данные о посещениях Web-страниц
пользователями, о количестве щелчков мышью на странице и статистику рефереров.
Стоит, однако, отметить, что у Oracle имеется несколько конкурентов на рынке
персонификации Web, из которых особенно выделяются компании Blue Martini,
Vignette и Personify.
Целью Personalization является точная идентификация классов
конечных пользователей и корреляция их поведения с поведением пользователей их
других известных групп и классов. Используя чрезвычайно сложные методы
многомерной корреляции, можно настроить контакты Web-страницы в соответствии с
предсказаниями о предпочтениях в части Web-контента каждого конечного
пользователя. Подобный анализ по самой своей природе является очень ресурсоемким,
поэтому практически все большие предприятия с Application Server 10g специально
выделяют для выработки таких прогнозных рекомендаций большие сервера, которые
используются исключительно для этих целей.
Профессионалы в области ИТ-маркетинга знают, что очень важно
поместить на построенную в соответствии с требованиями пользователя Web-страницу
подходящую продукцию. Чтобы быть успешным, Application Server 10g должен иметь
возможность точно предсказать пристрастия обратившегося пользователя к покупке
тех или иных продуктов, основываясь на моделях предыдущих покупок и просмотра
страниц, а также на моделях покупательного спроса придерживающихся таких же
взглядов покупателей (профилирование заказчиков). Главная проблема при
разработке подобных прогнозных моделей состоит в том, чтобы правильно отнести
посетителей сайта к одной из потребительских групп. Потребительской группой
называется группа, состоящая из заказчиков с аналогичными демографическими и
покупательскими моделями.
На рисунке 1-10 показан процесс анализа демографической
информации для причисления посетителя к одной из потребительских групп.
Посетитель может быть причислен к потребительской группе по одной из двух
причин:
демографическая категория (выбирается из персональной информации)
модель просмотра страниц (выбирается из URL рефереров)
После того как в Personalization определены потребительские
группы, вы должны запустить процедуру интеллектуального анализа данных, чтобы
получить данные о корреляции шаблонов каждой потребительской группы с
конкретными продуктами. Выполняемая в соответствии с требованиями пользователя
персонификация HTML основывается на данных из трех источников:
данные для известных потребительских групп Такие группы состоят из
предопределенных итоговых данных по характеристикам потребительской группы.
взвешенное ранжирование просмотренных страниц Это просто мера популярности
страницы с продуктами для каждой из потребительских групп.
архивные данные Это архивные данные о продажах, коррелированные с
потребительскими группами.
Рисунок 1-10. Архитектура Personalization
Personalization использует эти сложные механизмы
потребительских групп и интеллектуального анализа данных для создания
Web-контента (рисунок 1-11).
Рисунок 1-11. Механизмы Oracle Application Server Personalization 10g в
исполнительном периоде.
Администрирование Personalization упрощается за счет
использования соответствующего ГИП, а в документации Oracle содержится
прекрасное обсуждение вопросов, связанных с администрированием Personalization.
Oracle Application Server Wireless
Эта компонента делает возможными беспроводные коммуникации
между удаленными беспроводными серверами и архитектурой Application Server 10g.
Центральной частью Oracle Application Server Wireless 10g является использование
коммуникаций XML. Wireless преобразует данные XML в любой из языков разметки
данных, который может использоваться беспроводной системой, в том числе, HTML,
Wireless Markup Language (WML - язык разметки данных для беспроводных систем) и
другие специализированные языки разметки типа VoiceXML и HDML. Это позволяет
приложению генерировать только один набор данных XML, который затем может быть
переформатирован для любого оконечного устройства, будь то сотовый телефон, PDA
или пейджер.
Беспроводные коммуникации с Oracle становятся привычным
делом благодаря повсеместному присутствию провайдеров Интернет-сервисов,
создающих беспроводные инфраструктуры (правда, главным образом в больших
городах). В этих областях можно использовать Wireless для установления
непосредственного взаимодействия с Application Server 10g с использованием
стандартной модели коммуникации J2EE и XML. Преимущество Wireless заключается в
отделении коммуникаций базы данных от проблем и сложностей беспроводного
протокола путем инкапсуляции коммуникаций в отдельный промежуточный уровень.
Эта компонента является одной из наиболее интересных
компонент Application Server 10g, поскольку с ней связаны перспективы
беспроводной голосовой связи с базами данных Oracle. Эта технология может помочь
обеспечить связь базы данных Oracle с миллионами конечных пользователей.
Сервер отчетов Oracle
Эта компонента делает возможной быструю разработку отчетов,
документов и электронных блокнотов, в которых используются данные из баз данных
Oracle. Для достижения подобной функциональности сервер отчетов Oracle (Oracle
Report Server) должен взаимодействовать с экземпляром сервера Application Server
10g и с порталом (Portal) для обеспечения управления входящими запросами на
отчеты, а также для отсылки выполненных отчетов заказавшим их пользователям.
Чтобы понять, что из себя представляет сервер отчетов Oracle, давайте рассмотрим
простой пример, и шаг за шагом пройдем все этапы отчета (рисунок 1-12).
Рисунок 1-12. Конфигурация сервера отчетов (Reports Server 10g) сервера
приложений в исполнительном периоде
Invocation (Вызов) Сервер отчетов вызывается, когда конечный
пользователь вводит URL (или кликает по ссылке на Web-странице).
Routing (Маршрутизация) Экземпляр Application Server 10g
перехватывает запросы HTML или XML и направляет их в Report CGI (или в сервлеты
Reports).
Request validation (Подтверждение запроса) После этого Oracle Reports
подвергает синтаксическому разбору запрос HTML или XML и правила безопасности
для отчета. Если включены средства защиты, Oracle Report посылает обратно
пользователю HTML-страницу, чтобы принять от него имя пользователя и его пароль.
Execution (Выполнение) Затем подтвержденный запрос ставится на сервере
отчетов в очередь на выполнение. Отметим, что вы можете сконфигурировать для
каждого сервера отчетов несколько механизмов (?движков?) исполнительного
периода.
Formating (Форматирование) По завершении выполнения отчета сервер отчетов
форматирует выходные данные как HTML и переправляет законченный отчет в
экземпляр сервера Application Server 10g.
Delivery (Доставка) После этого экземпляр Application Server 10g заканчивает
работу с запросом, отправляя завершенный отчет конечному пользователю.
Single Sign-On
С помощью Single Sign-On (SSO - процедура однократного
представления системе) клиент может один раз войти в приложение, после чего он
становится автоматически аутентифицированным для всех других компонент сервера
приложений, а также для надлежащим образом установленных внешних приложений.
Вместо того чтобы обеспечивать отдельную аутентификацию для каждого приложения
на сервере, SSO предлагает централизованный репозиторий аутентификации. Для
подтверждения полномочий пользователей, когда они переходят от одного приложения
к другому, SSO использует экземпляр инфраструктуры БД, за счет чего отпадает
необходимость в повторной аутентификации.
Компонента SSO взаимодействует с Oracle HTTP Server (OHS) и
позволяет использовать сформатированную информацию из Single Sign-On как
заголовок отрытого источника Apache. Обратите внимание, что SSO действует только
в домене вашей системы Oracle. Многие распределенные системы электронной
коммерции взаимодействуют с порталами от третьих фирм, но SSO нельзя расширить
для обслуживания подобных внешних клиентов. К примеру, сайту электронной
коммерции, созданному средствами Oracle, может потребоваться обработать запрос
на оплату с помощью Cybercash, но для Cybercash потребуется собственный
независимый механизм SSO. Следовательно, многим администраторам Application
Server 10g придется разрабатывать протоколы XML Data Type Definition (DTD -
протоколы определения типов данных XML) для коммуникации с внешними системами от
третьих фирм.
Более подробно мы обсудим SSO и другие компоненты
безопасности Application Server 10g в главе 12.
Oracle Internet Directory
Oracle Internet Directory (OID) - это созданная в
соответствии с облегченным протоколом доступа к каталогу (Lightweight Directory
Access Protocol - LDAP) служба каталога, обеспечивающая централизованное
хранение информации о пользователях, приложениях и ресурсах вашего предприятия.
OID в сочетании с SSO позволяет конечным пользователям один раз войти в систему,
а затем использовать свои предварительно определенные учетные данные (созданные
АБД). Эти учетные данные определяют те компоненты Application Server 10g, с
которыми разрешено взаимодействовать конечному пользователю.
Поскольку она отвечает требованиям LDAP, OID можно
рассматривать как простой механизм справочной таблицы (lookup table) для
Web-сервисов. Например, записи LDAP можно использовать вместо записей в
традиционном файле tnsnames.ora, обеспечивая тем самым возможность
взаимодействия с клиентами из любого узла вашей сети. Эта методология заменила
устаревшее инструментальное средство Oracle*Names, использовавшееся как метод
определения сервисов для Oracle.
Подводя итог, можно сказать, что OID является удобным для
конфигурирования инструментом для определения доступа конечных пользователей к
Application Server 10g. Поскольку она сильно связана с SSO и расширенными
свойствами безопасности, OID является критичной компонентой управления
безопасностью в Oracle. Для управления OID используется GUI, который носит
название Oracle Directory Manager (ODM - администратор Oracle Directory). Более
подробно мы обсудим это инструментальное средство для управления правилами
доступа к данным наряду с другими вопросами безопасности в главе 12.
Репозиторий метаданных (инфраструктура)
Репозиторий метаданных является важнейшей компонентой
Application Server 10g, так как он позволяет создать общий интерфейс управления
нескольким экземплярами Application Server 10g и другими компонентами.
Репозиторий метаданных обычно называют инфраструктурой; как уже упоминалось
ранее, он является общим для всех ферм Application Server 10g и компонент,
использующих общее определение. Более подробно об инфраструктуре мы поговорим в
главе 3.
Oracle Management Server
С помощью Oracle Management Server (OMS) администраторы
могут включать Application Server 10g в централизовано управляемую конфигурацию,
используя для этого Oracle Enterprise Manager (OEM является отдельным
продуктом). OMS является компонентой консоли OEM, которая используется для
управления экземплярами Application Server 10g, базами данных и прочими
компонентами. Главной особенностью OMS является его способность хранить данные
OEM в репозитории метаданных. Эта возможность OMS позволяет администраторам
коллективно использовать информацию о конфигурации серверов, планировать события
и задания и оповещать заинтересованных лиц о сбоях системы. Для запуска OMS
используется команда emctl, а команда emctl start oms используется для запуска
процессов Web-сервера и OMS.
Поскольку OMS является тем ?glue?(?клеем?), который
скрепляет воедино все компоненты Application Server 10g, мы будем говорить о
функциональных возможностях OMS на протяжении всей этой книги. OMS обеспечивает
важные функции администрирования пользователей и управляет потоком информации
между консолью OEM и всеми управляемыми узлами. OEM позволяет любому серверу
стать управляемым узлом, для чего устанавливает на нем интеллектуального агента
Oracle (Oracle Intelligent Agent - OIA), после чего этот сервер становится
доступным для центрального административного GUI. Фактически OIA является
демон-процессом, который взаимодействует с базой данных и операционной системой
каждого сервера в составе каждой фермы Application Server 10g. Интеллектуальный
агент организует локализованное выполнение задач, указанных OMS, а для серверов
Oracle OIA выполняет контролируемый по времени мониторинг базы данных. Концепция
управляемых узлов увеличивает возможности OEM, позволяя АБД Application Server
10g быстро применять конфигурационные изменения ко многим компонентам серверов.
TopLink
Для разработчиков на Java TopLink предоставляет механизм,
позволяющий сделать объекты Java персистентными, то есть продолжающими свое
существование в промежутках между сеансами. В объектно-ориентированных (OO)
языках программирования типа Java, C# или C++ объекты могут создаваться (точнее,
им могут приписываться значения) и уничтожаться в соответствии с нуждами
программы.
Проблема в том, что в объектно-ориентированных языках, типа
Java, объекты создаются в неупорядоченной (heap) RAM-памяти (т.е., в
динамической области оперативной памяти, специально выделяемой для размещения
динамических структур данных ? прим.пер.) поэтому после
завершения выполнения программы все объекты программы разрушаются. Oracle
Application Server TopLink 10g является инфраструктурой персистентности, которая
позволяет обеспечить персистентность объектов, предоставляя для этого процедуры,
обеспечивающие хранение объектов Java в реляционных таблицах базы данных (любой
реляционной базы данных, поддерживающей JDBC). Вдобавок TopLink предлагает
Mapping Workbench, инструментальное средство с GUI, значительно упрощающее
задачу отображения объектов Java и их атрибутов на таблицы базы данных. Кроме
того, TopLink обеспечивает мощные опции типа инфраструктуры запросов, поддержки
транзакций уровня объектов, отображения отношений, кэширование объектов и
многого другого. Ранее, до появления TopLink программистам приходилось в JDBC
писать собственные программы для записи и выборки атрибутов объектов Java в
реляционную таблицу или из нее. Это не только отнимало у них очень много времени
и было источником большого числа ошибок. К тому же получающуюся программу было
очень трудно изменить. TopLink построен поверх JDBC, но не требует от
разработчиков применения JDBC (и даже SQL!). TopLink поддерживает все
удовлетворяющие требованиям J2EE серверы приложений и может быть использован для
хранения данных объекта как из стандартных объектов Java, так и из так
называемых стандартных объектов (entity beans). Для получения дополнительной
информации рекомендуем обратиться к документации по Oracle Application Server
TopLink 10g.