Что такое oracle сервер
Само понятие «сервер Oracle» со временем претерпело целый ряд изменений. Сегодня сервер уже представляет собой не один продукт (реализованный для разных операционных систем), а линейку продуктов — впрочем, подобная практике принята и у конкурентов. Для новичка, не вполне ориентирующегося в названиях и конфигурациях, предлагаемых Oracle, и озабоченного необходимостью принять вполне конкретное решение, наличие такой линейки — одно из главных затруднений. К счастью, линейка «не длинна», поэтому затруднение преодолимо. Посмотрим, что входит в линейку продуктов Oracle.
Сторонние языки программирования
Другие языки программирования доступные для создания клиент-серверных приложения запускают вне базы-данных. Наиболее широко используются С и Java, но возможно использовать почти все популярные запросы третьего-уровня. Для большинства языков Oracle предоставляет OCI (Oracle Call Interface) библиотеки, которые позволяют подключаться к базе данных и выполнять SQL запросы.
Программы написанные на C или другом процедурном языке используют OCI библиотеки для создания подключения к базе данных. Эти библиотеки являются собственностью Oracle. Это значит что любой код, написанный с использование этих библиотек написан только для Oracle базы данных и должен быть переписан для работы с другими базами данных. Программы написанные на языке Java могут избежать этой проблемы. Oracle предоставляет возможности для подключения к базе с помощью Java для «толстых» (thich) и «тонких» (thin) клиентов.
«Толстый» клиент направлен на работу с Oracle. Он использует OCI библиотеку и может использовать все возможности базы данных, включая структурные особенности Oracle. Но такой клиент не сможет работать с другими базами данных, и необходима OCI библиотека для работы.
«Тонкий» клиент работает вне зависимости от типа базы данных: он работает с виртуальной базой согласно Java стандарту, и позволяет соотносить виртуальную базу с базой. Это даёт приложению возможность работать с любой другой базой данных и такое приложение может быть развёрнуто в не-Oracle среде без изменений. Однако функциональность огранчена только Java Database Connectivity (JDBC) стандартом.
Выбор между «толстым» и «тонким» клиентом должен производиться командой, после изучения всех потребностей к функционалу, производительности работы базы данных, производительности разработки, возможности перехода на другую СУБД и т.п. С помощью JDeveloper можно разрабатывать оба типа Java приложений.
Компоненты Oracle Application Server
Oracle Application Server предлагает также механизм кэширования и готовые решения задач, возникающих при создании порталов, систем бизнес-анализа и беспроводного доступа.
Портал
Компонент Oracle Application Server Portal входит также в продукт Oracle Developer Suite (описан ниже в этой главе) и применяется для создания простых в использовании корпоративных порталов. Разработанный портал развертывается внутри Application Server.
Сервер баз данных
Сервер баз данных Оракл включает в себя экземпляр (instance) базы данных и саму базу данных с множеством возможностей таких как потоки, партицирование, хранилище данных, репликация и RAC (Real Application Cluster), но самое главное, это надёжное, высоко-производительное хранилище данных, построенное на объектно-ориентированной системе для баз данных. Исторически, один из проектов в поздних 70-ых для поддержки теории предложенной Dr. E.F Codd, привел к созданию реляционной системы управления базами данных (РСУБД), со временем ставшую известной как Oracle Server. Oracle Server это основной продукт Oracle, который продолжает активно развиваться и является ядром других продуктов.
База данных – это набор файлов в дисковой системе. База существует пока существуют файлы. Теоретически нету ограничений по размеру и количеству файлов, таким образом нет ограничений размера базы данных. Доступ к данным происходит через экземпляр (instance) сервера базы данных. Инстанс – набор процессов и структур данных в памяти. Инстанс может быть стартован и остановлен. Пользователи подключаются к инстансу и уже инстанс управляет доступом к данным. Невозможно работать с данными напрямую. Инстанс и файлы базы данных вместе и создают Oracle сервер.
Такая модель доступа является клиент-серверной моделью, также известной как двухуровненой (two-tier) модель. В клиент-серверной модели пользовательский интерфейс и логика приложения не зависят от управления данными. Для приложения разработанного с использованием SQL это значит, что пользовательская часть приложения создаёт SQL запросы, а серверная часть исполняет их. Это классическое разделение клиентской и серверной части, обычно соединённой локальной сетью. Сетевой протокол используемый в Oracle – закрытый и называется Oracle Net.
Клиентская часть состоит из 2ух компонентов: пользователей и пользовательских процессов. В серверной части три составляющие: серверный процесс, который исполняет SQL запросы, instance и сама база данных. Каждый пользователь взаимодействует с пользовательски процессом. Пользовательский процесс взаимодействует с серверным процессом, обычно посредством локальной сети. Серверный процесс взаимодействует с экземпляром, и экземпляр с базой данных. Рисунок 1-1 показывает это взаимодействие. Сессия – это пользовательский процесс с серверным процессом. Обычно это один пользовательскйи процесс для пользователя и серверный процесс для каждого пользовательского процесса. Сессия обычно создается по запросу пользователя и уничтожается когда она больше не нужна: это называется log-on и log-off цикл. Экземпляр и структуры в памяти нужные для работы запускаются администратором и существуют пока администратор не остановит их: это называется запуск и остановка экземпляра.
Пользовательским процессом может выступать любое клиент-серверное приложение которые можнт подключится к Oracle серверу.Мы будет использовать SQL*Plus и SQL Developer. Это программное обеспечение предоставляемое Oracle-ом для подключения к серверу и выполнения SQL запросов. Что использует пользователь абсолютно не важно для Oracle сервер-а. Когда пользователь вводит данные и нажимает кнопку «Выполнить» будет сгенерирована команда, к примеру INSERT и отправлена команда серверному процессу для исполнения на инстансе и базе данных. Единственное требования это чтобы команда была корректной. Не стоит забывать что все взаимодействие осуществляется согласно клиент-серверной модели. Даже если пользовательский процесс запущен на той же самой системе что и сервер – клиент-серверное разделение всё равно работает и сетевой протокол использвется для взаимодействия между двумя процессами.
Бизнес-анализ
В состав продукта Application Server Business Intelligence входит компонент Portal, а также оригинальные инструменты бизнес-анализа, разработанные Oracle:
- Oracle Reports – масштабируемый промежуточный слой для вывода результатов заранее заданных запросов в виде отчетов;
- Oracle Discoverer для предъявления произвольных запросов и анализа результатов;
- платформа развертывания для разработанных в JDeveloper приложений для OLAP-обработки и добычи данных.
Эти средства мы обсудим в следующих заметках моего блога.
Service Registry
Реестр служб Oracle Service Registry позволяет публиковать информацию о службах и ссылку на авторитетную систему (System of Record) для SOA-служб.
Communication and Mobility Server
В этот продукт входит компонент TimesTen, а также SIP Servlet Container, каркас активации и активаторы, средства голосового и мобильного доступа.
Встроенные языки
SQL используется для работы с данными, но на нём нельзя создать полноценное приложение, так как нет возможности для создания пользовательского интерфейса и отсутствует поддержка сложных структур данных. Два других внутренних языка программирвоания устраняют эти пробелы. Это PL/SQL и Java. PL/SQL – язык третьего уровня и является собственностью Oracle. Он поддерживает стандартные управляющие конструкции: алгоритмы ветвления (if then else) и циклы, и имеет возможность создания пользовательского интерфейса. SQL запросы могуть быть частью PL/SQL кода, таким образом, программа PL/SQL может использовать SQL для получения данных из базы данных, выполнять определенные действия в зависимости от данных, и затем выполнять другие запросы для записи данных назад в базу. Java так же может выполнять SQL запросы, написанные внутри Java кода. Это стандарт технологии: любой Java программист должен быть способен написать код, который будет работать в базе данных Oracle (либо другой Java-совместимой базе данных).
Все администраторы баз данных должны хорошо знать SQL и PL/SQL. Это стандартное и необходимое требование.
Знание Java уже не особо обязательно, так как Java редко используется в базе данных. Раньше Oracle Application Server не мог запускать некоторые стандартные компоненты (к примеру Servlet-ы и EJB). Чтобы устранить это Oracle разработали Java машину встроенную в базу данных, которая соответствует стандартам. Как бы то ни было, начиная с Oracle Application Server 9i, стало возможным запускать J2EE компоненты там, где им и положено быть: на сервере приложений. Благодаря этому стало запускать меньше Java кода внутри базы данных.
Обычно DBA (database administrator) проводят много времени над задачами повышения производительности и отладки SQL и PL/SQL кода. С точки зрения Oracle – администратор должен находить проблемные участки и передавать разработчику для исправления, однако на практике разработчикам не хватает знания (или желания) делать это и администраторам приходится брать на себя эту роль.
BI Publisher
Инструмент форматирования отчетов, применяемый для генерирования высококачественных отчетов на основе данных в формате XML.
Enterprise Manager
Увеличение объёма и сложности IT установок может сделать управление компонентами достаточно сложной процедурой. Инструменты управления могут сделать эту задачу легче, и занчительно повысить производительность сотрудников.
Oracle Enterprise Manager включает в себя 3 группы инструментов:
*Управление базой данных (Database Control)
*Управление сервером приложений (Application Server Control)
*Управление инфраструктурой (Oracle Enterprise Manager Grid Control)
Управление базой данных – графический инструмент для управление одной базой данных, которая может быть RAC кластером. Есть возможности управления и мониторинга в режиме реального времени, планировщик задач и резервного копирования, генерация отчётности.
Управление сервером приложений – инстурмент для управления серверами приложений. Технология управления несколькими серврами зависит от версии. До 10gR2 включительно используется технологий «ферма», с ерпозиторием мета-данных и центральным управляющим входом. Эта модель закрытая и предоставляет отличные позможности для установки и поддержи приложений. Начиная с версии 10gR3 используется технологий основанная на J2EE кластеризации.
Oracle Enterprise Manager Grid Control обобщает управление инфраструктурой. Репозиторий (находящийся внутри базы данных Oracle) и один или несколько серверов управляют всей средой: всеми базами данных и серверами приложений, расположенными где-угодно. Данный инструмент также может управлять узлами, или машинами на которых запущены сервера и, с помощью плагинов, различными сторонними продуктами. Каждый управляемый узел запускает процесс, который ответственнен за мониторинг управляемых процессов на узле: этот процесс выполняет разные задачи и возвращает результаты на сервер управления.
Oracle Enterprise Manager Grid Control даёт целостное представление обо всей инфраструктуре и может кардинально улучшать производительность администраторов. С его помощью один администратор может обслуживать десятки и сотни серверов.
Сервер приложений
Возможно использовать отдельное соединение для каждого пользователя: каждый польователь будет создавать сессию к серверу приложений, а сервер приложений в свою очередь создавать подключение к базе данных. Однако, эта модель признана очень неэффективной по сравнению с пулами подключений (connection pooling model). Согласно модели пула подключений сервер приложений создает относительно небольшое количество соединения с базой данных и делает их доступными для запросов (помещая запросы в очередь при необходимости) для относительно большого количества пользователей сервера приложений. Рисунок 1-2 показывает трех-уровневую модель доступа и использованием пула запросов.
С точки зрения базы данных, нет абсолютно никакой разницы между запросами из SQL*Plus или пула запросов. В первом случае пользовательский процесс происходит на одной машине, во втором случае пользовательский процесс разбит на 2 уровня: сервер приложений генерирует пользовательский интерфейс и пользовательский уровень отображает его.
Кэширование
Компонент Oracle Application Server Web Cache реализует промежуточный уровень для кэширования веб-страниц целиком или частично. Предшествующий механизм Oracle Application Server Database Cache, который использовался для кэширования PL/SQL-процедур и анонимных PL/SQL-блоков, начиная с версии Oracle Application Server 10g не поддерживается.
WebCenter
Business Activity Monitoring (BAM)
Компонент BAM служит для построения инструментальных панелей реального времени, на которых отображаются основные индикаторы производительности (key performance indicator, KPI), содержащие данные от оповещений, поступающих через Сеть.
Комплект SOA Suite для Oracle Middleware
Адаптеры для Fusion Middleware
Имеются адаптеры для приложений, мониторов обработки транзакций, EDI и другие.
Комплект Fusion Middleware SOA Suite служит основой архитектуры интеграции приложений Application Integration Architecture (AIA). В AIA включены также готовые бизнес-объекты и бизнес-процессы под общим названием Process Integration Packs. Эта архитектура является фундаментом для интеграции существующих и будущих приложений Oracle.
Редакции Oracle Application Server
Продукт Oracle Application Server поставляется в нескольких редакциях: Enterprise Edition, Standard Edition, Standard Edition One и Java Edition; последний включает компоненты, необходимые разработчикам на Java. В Standard Edition и Standard Edition One включены компоненты Portal, TopLink вместе с Application Development Framework и Web Cache. В Enterprise Edition добавлены следующие компоненты:
Для редакции Oracle Application Server Enterprise Edition имеется еще ряд дополнительных опций:
Oracle Wireless
В состав компонента Oracle Wireless (бывший Oracle Portal-to-Go) входят:
- контент-адаптеры для преобразования информационного содержимого в формат XML;
- преобразователи форматов (device transformer) для преобразования из XML в язык разметки, поддерживаемый конкретным
- устройством;
- порталы персонализации для персонализации оповещений, адресов назначения оповещений, адресных меток (location mark) и профилей; кроме того, беспроводной портал персонализации применяется для создания, обслуживания, тестирования и публикации URL службы, а также для управления пользователями.
Инструменты разработчика Oracle
Чем отличается сервер Oracle
Оптимизация для ПО Oracle
Благодаря серверам Oracle заказчики достигают высочайшей производительности, экономической эффективности и безопасности для критически важных для бизнеса нагрузок. Также они увеличивают время безотказной работы приложений Oracle, выполняя их на любом сервере Oracle, а приложения Java работают в 2 раза быстрее на серверах Oracle SPARC с использованием уникальных встроенных ускорителей. 1
Интегрированная комплексная система безопасности
Серверы Oracle нейтрализуют угрозы безопасности для данных и приложений заказчика без ущерба для производительности. Встроенное шифрование, защита памяти приложений и расширенные средства безопасности обеспечивают защиту баз данных и данных приложений заказчиков на протяжении всего жизненного цикла. Функция надежной загрузки серверов Oracle x86 защищает компании от вредоносного ПО и невыявленных вторжений.
Максимальная доступность
Серверы Oracle обеспечивают максимальное время бесперебойной работы для всех баз данных и приложений заказчиков. Встроенное резервирование и секционирование повышает доступность системы и снижает риски при развертывании. Компании сокращают время простоев благодаря мониторингу, архитектуре управления отказами и компонентам горячей замены серверов Oracle с нулевым временем простоя для обновлений или ремонта.
Снижение затрат и повышение ценности
Заказчики могут сократить капитальные расходы и затраты на управление за счет консолидации корпоративных нагрузок в меньшем количестве систем с высокопроизводительными серверами Oracle. Общая стоимость владения для компании ниже, поскольку операционная система и ПО для виртуализации поставляются без дополнительной платы. Oracle Premier Support for Systems включает сервис Oracle Enterprise Manager Ops Center, упрощающий административные нагрузки и позволяющий сократить расходы.
Выделяют три группы продуктов в семействе технологий Oracle: база данных, сервер приложений и система управления (Enterprise manager). Это основные компоненты для организации сетевых вычислений (grid computing). Основной концепцией для построения инфраструктуры (Grid-а) выступает виртуализация. Пользователи работают с информацией (обычно посредством веб-приложения), но они не знают и не должны знать откуда и как эти данные выводятся. Упрощённо – база данных отвечает за хранения и выдачу информации, сервер приложений – за инфраструктуру и развертывание служб нужных пользователю и система управления используется для администрирования и управления. Платформа или физические сервера используемые для работы не имеют значения для конечного пользователя. Виртуализация позволяет эффективно рапределять ресурсы, предоставляя максимальную производительность там где это нужно (балансировка нагрузки).
Набор разработчика от Oracle
Некоторые не хотят использовать языки программирования для разработки приложений для работы с базой данных. Оракл предлагает средства для разработки в составе Oracle Developer Suite. В принципе результат разработки с помощью этих средст примерно такой же: генерация SQL запросов, которые посылаются к базе данных для обработки.
С помощью Oracle Forms Developer можно создать приложение, которое запускается на сервере приложений Oracle и отображается в браузере. Такие приложения легко разрабатывать и они оптимизированы для взаимодействия с объетами базы данных. Специальные макросы и компоненты позволяют создавать веб-приложения с богатым функционалом.
Oracle Reports – это инструмент для создания и форматирования отчётов, как по запросу так и по расписанию. Готовые отчёты кешируются для выдачи. Oracle Reports, так же как и Oracle Forms, это среда разработки и требуются навыки программиста для создания специальных отчётов. Большим преимуществом при использовании Oracle Reports является то, что результат можно настраивать каким угодно способом, чтобы достичь желаемого результата.
Oracle Discoverer – это иснтрумент для генерации специальных отчётов, позволяющий пользователем самим создавать себе необходимую отчётность. Когда Oracle Discover установлен и настроен на сервере приложений, больше не нужны услуги программиста и пользователи сами делают что им нужно.
На мировом рынке корпоративных систем управления базами данных (СУБД) доминирующее положение занимает традиционная тройка продуктов: IBM DB2, Microsoft SQL Server и Oracle. Более 80% рынка СУБД в течение долгих лет контролируется тремя компаниями производителями: IBM, Oracle и Microsoft. По статистическим данным на рынке России лидирующее положение занимает Oracle, так как по статистическим данным за 2010 год, данная СУБД занимает более 60% всего рынка, среди других СУБД и около 30% мирового рынка СУБД. В 2017г. показатели по России не изменились, а в международном масштабе выросли.
СУБД Oracle имеет большое количество различных версии и типов. Данная СУБД выпускается одноименной компанией Oracle.
Компания Oracle была основана нынешним президентом компаний Лэрри Элисоном и Роберттом Майнором в 1977 году, в Рэдвуде, штат калифорния. Первая реляционная СУБД фирмы базировалась на модели IBM System/R и была первой системой, в которой использовался язык SQL, разработанный фирмой IBM.
На сегодняшний день СУБД Oracle поддерживают свыше 80 вариантов операционной среды в широком диапазоне, включая мэйнфреймы IBM, мини-компьютеры DEC VAX, UNIX, Windows и множество других платформ.
Для примера возьмем Oracle9i. Ядром СУБД является сервер базы данных, который поставляется в одной из четырех редакций в зависимости от масштаба информационной системы, в рамках которой предполагается его применение.
Для интернет-систем (public) и систем масштаба крупной организации (enterprise) предлагается продукт Oracle9i Database Enterprise Edition (корпоративная редакция), для которого имеется целый набор опций, архитектурно и функционально расширяющих возможности сервера. Продукт Oracle9i Database Standard Edition (стандартная редакция) ориентирован на организации среднего масштаба или подразделения в составе крупной организации (workgroup). Для персонального использования предлагается "персональный Oracle" (Oracle9i Database Personal Edition) , и для систем мобильной связи и небольших офисов — Oracle9i Database Lite. В стандартной, персональной и мобильной редакциях основной акцент сделан на невысокую стоимость, простоту установки и сопровождения. При этом все варианты сервера Oracle имеют в своей основе один и тот же исходный код и функционально идентичны , за исключением некоторых дополнительных опций, которые необходимы для специфических конфигураций (например, для поддержки кластерных архитектур необходима опция Oracle9i Real Application Clusters).
Основное преимущество такого подхода к построению СУБД — это идентичность кода для всех вариантов сервера баз данных. Для всех компьютерных платформ и архитектур существует единая СУБД Oracle, поставляемая в различных версиях, которая ведет себя одинаково и предоставляет одинаковую функциональность вне зависимости от платформы, на которой она установлена.
Одной из основных характеристик СУБД Oracle является функционирование системы на большинстве платформ. В том числе на больших ЭВМ, UNIX-серверах, персональных компьютерах и т. д.
Широкое распространение приложений для Интернета и сетей интранет стало причиной перехода от архитектуры клиент/сервер (когда значительные части приложения реализованы в виде «толстых» клиентов) к трехуровневой архитектуре (когда броузер предоставляет все, что нужно «тонкому» клиенту). Сервер приложений Oracle Application Server позволяет развернуть промежуточный слой трехуровневой архитектуры для веб-приложений, компонентных приложений и интеграции приложений масштаба предприятия. Oracle Application Server – основная часть продукта Fusion Middleware, допускающая масштабирование на несколько серверов промежуточного слоя.
Этот продукт включает веб-прослушиватель на базе популярного сервера Apache, сервлеты и сценарии JavaServer Pages (JSP), бизнес-логику и/или компоненты для доступа к данным. Бизнес-логика часто развертывается в виде компонентов Enterprise JavaBeans (EJB). Компоненты для доступа к данным могут быть написаны с применением JDBC, SQLJ и EJB. TopLink – это инструмент отображения, который связывает Java-объекты с базой данных через JDBC, так что разработчик на Java может не думать о конструировании вызовов SQL и об ошибках приложения, вызванных изменениями в схеме базы данных.
Сегодняшняя номенклатура серверов Oracle состоит из следующих типов:
- Oracle Enterprise Edition;
- Oracle Standard Edition;
- Personal Oracle;
- Oracle Lite.
Говоря о формальной стороне дела, нужно отметить, что, во-первых, этот набор типов сформировался не сразу (в свое время не было, например, Oracle Lite, а еще раньше — Personal Oracle), а во-вторых — к огорчению пользователей, но в полном соответствии с рыночными стереотипами поведения крупных компаний — приведенные названия со временем не раз менялись «в приказном порядке». Так, Oracle Standard Edition ранее именовался Oracle Workgroup Server, и различие между этими двумя типами серверов не «видовое», а чисто версионное, то есть отражает ход естественного эволюционного развития одного и того же продукта.
Эти замечания следует учесть тем, кто активно пользуется литературой по Oracle. Там вы вполне можете столкнуться с описанием того продукта, что вам требуется, но под другим названием — не стоит из-за этого бросать книжку или статью в дальний угол и искать новую! Реальные версионные изменения в системе часто оказываются незначительными или вовсе отсутствуют.
Разберемся с тем, что кроется за теперешней типизацией серверов Oracle. Нагляднее всего будет соотнести ее с областью применения. В табл. 1 показано, как предлагает применять типы своих серверов сама фирма.
Таблица 1
Тип сервера | Рекомендуемая платформа | Предлагаемая область использования |
---|---|---|
Oracle Enterprise Edition | UNIX, Windows NT, в том числе с возможностями параллельной обработки | Сервер прямого доступа для всего предприятия (завода, организации) |
Oracle Standard Edition | UNIX (в том числе Linux) и Windows NT | Сервер прямого доступа в рамках подразделения (отдела) |
Personal Oracle | Windows-платформы | Локальный сервер, встроенный в самостоятельную прикладную систему; сервер для «персонального использования» |
Oracle Lite | Windows NT/9x/CE | Сервер для автономных мобильных компьютеров, подключаемых время от времени к основной БД |
По поводу этих рекомендаций нужно заметить, что в целом они — корректный ориентир, однако составлены в расчете на зарубежную действительность. Масштабам «нашего» предприятия, например, вполне может соответствовать «их» отдел. К тому же это общие рекомендации, вовсе не запрещающие возможность использования того или иного сервера «не в своей нише».
Функциональные различия серверов разных типов постоянно изменяются с выпуском новых версий, однако некоторое постоянство этих различий все же имеет место. Осуществляя выбор сервера конкретного типа, полезно знать, что первые три из них («персональный», «стандартный» и «заводской») — это генетически родственные продукты. Все три имеют общую архитектуру, общее устройство, логику и принципы работы и являются развитием того самого магистрального сервера баз данных, который существовал 20 лет назад. Различаются они реализацией общей архитектуры применительно к менее ресурсоемким платформам и более простым требованиям, а также связанным с этим возможным отключением каких-то функций. Personal Oracle можно считать функциональным сужением сервера Standard Edition и применением архитектуры последнего к более простым условиям; в свою очередь, Standard Edition — это функциональное сужение Enterprise Server. Разрабатывается как бы одна общая архитектура, а потом делаются ее более простые реализации.
Примерами такого сужения могут служить процессная архитектура и параллельная обработка. Общая для всех трех типов серверов логика работы СУБД как совокупности самостоятельных процессов в Enterprise Edition для Unix выполнена «один к одному» в виде именно процессов, а в версии Standard Edition для NT (как, впрочем, и для Enterprise Edition для NT) имитируется потоками (threads) этой операционной системы. Personal Oracle (как и Standard Edition) фактически реализован как частный случай параллельного сервера (когда две или более СУБД работают одновременно с одной базой данных), выполненного в полном объеме в Enterprise Edition. Докапывающиеся до самых глубин знатоки Oracle утверждают, что тонкости работы отдельного (не параллельного) сервера можно понять только с учетом этого обстоятельства.
Таким образом, некоторые функции в младших типах серверов не реализованы, а некоторые попросту отключены. Знание последнего факта позволяет некоторым пользователям творчески относиться к данным табл. 1. Так, если повезет, то в Internet можно найти не документированный фирмой Oracle способ перевода Personal Oracle в состояние, когда он сможет обслуживать более одного соединения с базой данных по сети (напомню, что по замыслу изготовителя этот тип сервера должен использоваться локально и ему формально выделено только одно внешнее соединение для обмена с другими серверами). Для этого требуется выставить соответствующие конфигурационные параметры, что позволит получить удовлетворительный сервер с меньшими требованиями к ресурсам, чем предъявляются к Oracle Standard Edition. Следует, правда, заметить, что подобные настройки, во-первых, требуют определенной квалификации, а во-вторых, не встречают понимания у представителей Oracle.
Табл. 2 дает некоторое представление о схожести и различии функциональности двух наиболее популярных типов серверов из упомянутой тройки.
Таблица 2
Свойство | Oracle8 Server (Standard Edition) | Enterprise Server (Enterprise Edition) |
---|---|---|
Oracle Enterprise Manager (OEM) | Есть | Есть |
Резервирование и восстановление без остановки сервера | Есть | Есть |
Инкрементальное восстановление | Нет | Есть |
Параллельное резервирование и восстановление | Нет | Есть |
Восстановление табличного пространства на указанный момент времени | Нет | Есть |
Поразрядные индексы | Нет | Есть |
Оптимизация запросов типа «звезда» | Есть | Есть |
Параллельная обработка (запросов, операторов DML; загрузка, сканирование индексов и т.д.) | Нет | Есть |
Распределенные запросы | Есть | Есть |
Репликация (основные возможности) | Есть | Есть |
Репликация (расширенные возможности) | Нет | Есть |
Pro*C | Есть | Есть |
ODBC-драйвер | Есть | Есть |
Расширенная поддержка очередей | Нет | Есть |
Встроенные процедуры и триггеры | Есть | Есть |
Поддержка больших объектов (LOB) | Есть | Есть |
Поддержка картриджей | Частично | Полностью |
Расширенная сетевая поддержка | Нет | Есть |
Работа с объектами | Нет | Есть |
Режим рассредоточения табличных пространств по дисковым областям (partitioning) | Нет | Есть |
Режим параллельного сервера | Нет | Есть |
По-иному обстоит дело с Oracle Lite. Исторически это была внешняя по отношению к линейке серверов система, которая эволюционировала в противоположном направлении: не в сторону ограничения возможностей более старших серверов с целью «снижения веса» системы для использования в более простых условиях, а в сторону достижения совместимости с основной линейкой. Как результат, Oracle Lite характеризуется не только невероятно низкими для серверов Oracle требованиями к ресурсам платформы, но и некоторыми «генетическими» расхождениями с основной линией.
Так, имеются расхождения в базовых типах данных. Используется свой загрузчик данных, похожий, хотя и не полностью, на SQL*Loader. Но, возможно, более важное различие — в отсутствии поддержки PL/SQL. В последних версиях Lite (версия 4.0) появились триггеры и встроенные процедуры, но языком для них служит только Java, в то время как на серверах «основной тройки» такая Java-возможность возникла — в дополнение к давно реализованной возможности создания триггеров и процедур на языке PL/SQL.
Эти и ряд других форм несовместимости могут создать проблему для миграции баз данных и приложений с остальных серверов на Oracle Lite (и в противоположном направлении), в то время как подобной проблемы внутри «основной тройки» практически не существует (если не выходить за рамки общей функциональности). Переход от сервера к серверу внутри «тройки» прост и не требует от администратора переучивания — необходимо только обучиться тому новому, что имеется у более «старшей» модели (если переход совершается от «младшего» типа к «старшему»). Переход же к Oracle Lite потребует кое о чем забыть, а кое-что выучить на иной манер. (Для примера и в дополнение к сказанному выше — совсем по-другому выглядит одинаковая для всех остальных типов серверов процедура установки системы. Загляните в каталог RDBMS\Admin и убедитесь в отсутствии SQL-сценариев, знакомых по всем операционным средам и по всем трем серверным разновидностям.)
Другое дело, что несовместимость Oracle Lite с остальными продуктами может лежать за пределами ваших задач или упомянутая миграция может не потребоваться. В таком случае, а также если от вашей СУБД не требуется работа с текстами и видео, инкрементальное резервирование, усиленная парольная защита, поддержка одновременной работы 500 пользователей и многое другое — смело ставьте Oracle Lite на свой laptop или PC и используйте СУБД Oracle как вам угодно! В конце концов какая-то работа по включению Lite в общую линейку серверов все же проводилась, и взаимоотношения этих систем характеризуются не только различиями и противоречиями.
Локальные корпоративные нагрузки заказчиков обрабатываются с максимальной производительностью, безопасностью и надежностью при использовании обширного портфеля серверов Oracle x86 и SPARC. Каждый сервер оптимизирован для выполнения корпоративных приложений, приложений Java и нагрузок Oracle Database с максимальной производительностью. Компании сокращают количество серверов и снижают общую стоимость владения (TCO) за счет серверов Oracle.
Узнайте, как компании повышают производительность, эффективность и безопасность UNIX с серверами Oracle SPARC M8 и T8.
BPEL Process Manager Option
Инструмент Business Process Execution Language (BPEL, язык исполнения бизнес-процессов) спроектирован для работы в сервисно-ориентированных архитектурах (SOA) и применяется для создания, администрирования и развертывания бизнес-процессов, связывающих несколько приложений. Он поддерживает стандарты BPEL, Web Services, XML, XSLT, XPATH, JMS и JCA.
Читайте также: