Что включает в себя портфель технологий oracle

Обновлено: 06.07.2024

Выделяют три группы продуктов в семействе технологий Oracle: база данных, сервер приложений и система управления (Enterprise manager). Это основные компоненты для организации сетевых вычислений (grid computing). Основной концепцией для построения инфраструктуры (Grid-а) выступает виртуализация. Пользователи работают с информацией (обычно посредством веб-приложения), но они не знают и не должны знать откуда и как эти данные выводятся. Упрощённо – база данных отвечает за хранения и выдачу информации, сервер приложений – за инфраструктуру и развертывание служб нужных пользователю и система управления используется для администрирования и управления. Платформа или физические сервера используемые для работы не имеют значения для конечного пользователя. Виртуализация позволяет эффективно рапределять ресурсы, предоставляя максимальную производительность там где это нужно (балансировка нагрузки).

Сервер баз данных

Сервер баз данных Оракл включает в себя экземпляр (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 цикл. Экземпляр и структуры в памяти нужные для работы запускаются администратором и существуют пока администратор не остановит их: это называется запуск и остановка экземпляра.

1

Пользовательским процессом может выступать любое клиент-серверное приложение которые можнт подключится к Oracle серверу.Мы будет использовать SQL*Plus и SQL Developer. Это программное обеспечение предоставляемое Oracle-ом для подключения к серверу и выполнения SQL запросов. Что использует пользователь абсолютно не важно для Oracle сервер-а. Когда пользователь вводит данные и нажимает кнопку «Выполнить» будет сгенерирована команда, к примеру INSERT и отправлена команда серверному процессу для исполнения на инстансе и базе данных. Единственное требования это чтобы команда была корректной. Не стоит забывать что все взаимодействие осуществляется согласно клиент-серверной модели. Даже если пользовательский процесс запущен на той же самой системе что и сервер – клиент-серверное разделение всё равно работает и сетевой протокол использвется для взаимодействия между двумя процессами.

Сервер приложений

Возможно использовать отдельное соединение для каждого пользователя: каждый польователь будет создавать сессию к серверу приложений, а сервер приложений в свою очередь создавать подключение к базе данных. Однако, эта модель признана очень неэффективной по сравнению с пулами подключений (connection pooling model). Согласно модели пула подключений сервер приложений создает относительно небольшое количество соединения с базой данных и делает их доступными для запросов (помещая запросы в очередь при необходимости) для относительно большого количества пользователей сервера приложений. Рисунок 1-2 показывает трех-уровневую модель доступа и использованием пула запросов.

С точки зрения базы данных, нет абсолютно никакой разницы между запросами из SQL*Plus или пула запросов. В первом случае пользовательский процесс происходит на одной машине, во втором случае пользовательский процесс разбит на 2 уровня: сервер приложений генерирует пользовательский интерфейс и пользовательский уровень отображает его.

2

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 даёт целостное представление обо всей инфраструктуре и может кардинально улучшать производительность администраторов. С его помощью один администратор может обслуживать десятки и сотни серверов.

Инструменты разработчика Oracle

Встроенные языки

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 – администратор должен находить проблемные участки и передавать разработчику для исправления, однако на практике разработчикам не хватает знания (или желания) делать это и администраторам приходится брать на себя эту роль.

Сторонние языки программирования

Другие языки программирования доступные для создания клиент-серверных приложения запускают вне базы-данных. Наиболее широко используются С и 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

Некоторые не хотят использовать языки программирования для разработки приложений для работы с базой данных. Оракл предлагает средства для разработки в составе Oracle Developer Suite. В принципе результат разработки с помощью этих средст примерно такой же: генерация SQL запросов, которые посылаются к базе данных для обработки.

С помощью Oracle Forms Developer можно создать приложение, которое запускается на сервере приложений Oracle и отображается в браузере. Такие приложения легко разрабатывать и они оптимизированы для взаимодействия с объетами базы данных. Специальные макросы и компоненты позволяют создавать веб-приложения с богатым функционалом.

Oracle Reports – это инструмент для создания и форматирования отчётов, как по запросу так и по расписанию. Готовые отчёты кешируются для выдачи. Oracle Reports, так же как и Oracle Forms, это среда разработки и требуются навыки программиста для создания специальных отчётов. Большим преимуществом при использовании Oracle Reports является то, что результат можно настраивать каким угодно способом, чтобы достичь желаемого результата.

Oracle Discoverer – это иснтрумент для генерации специальных отчётов, позволяющий пользователем самим создавать себе необходимую отчётность. Когда Oracle Discover установлен и настроен на сервере приложений, больше не нужны услуги программиста и пользователи сами делают что им нужно.

Помогаем людям по-новому взглянуть на мир данных, открывать новые идеи и безграничные возможности

Ресурсы для обучения и построения карьеры

Пример применения Artificial Intelligence

Artificial Intelligence

Искусственный интеллект Artificial intelligence (AI) помогает устранять ошибки, вызванные человеческим фактором, и берет на себя выполнение повторяющихся задач, благодаря чему организации могут сосредоточиться на более важных видах деятельности.

Oracle предлагает портфель услуг и возможностей, включая облачные приложения на базе AI, которые помогают предприятиям использовать AI. Благодаря платформе AI компании Oracle специалисты по обработке данных и разработчики получают полный набор облачных служб для создания, развертывания и управления решениями на основе AI.

Oracle Academy знакомит учащихся с работой с AI с помощью курса Artificial Intelligence with Machine Learning in Java.

Пример применения Autonomous Database

Автономная база данных Autonomous Database

Автономная база данных Oracle Autonomous Database позволяет переосмыслить управление базами данных за счет использования машинного обучения Machine Learning и автоматизации для отказа от человеческого труда и устранения ошибок, вызванных человеческим фактором, а также за счет ручной настройки, снижения затрат и уровня сложности и обеспечения повышенной надежности, безопасности и эффективности.

Автономная база данных Autonomous Database поддерживает комплекс высокопроизводительных транзакций, включая отчеты, пакетную обработку, Internet of Things (IoT) и Machine Learning. Это упрощает разработку и развертывание приложений и обеспечивает аналитику, персонализацию и выявление мошеннических операций в режиме реального времени.

Участники Oracle Academy получают доступ к Oracle Autonomous Database для преподавания и обучения в рамках программы Oracle Academy Cloud Program.

Пример применения Java

Объектно-ориентированный язык программирования Java — язык программирования № 1 в мире. В 2020 г. мир отметил 25-летний юбилей языка Java, который продолжает оставаться наиболее широко используемым языком для профессионального развития. С учетом того факта, что количество виртуальных машин Java Virtual Machine во всем мире превышает 45 миллиардов, не удивительно, что Java постоянно присутствует в списках наиболее востребованных навыков для работы в сфере информационных технологий.

Java лежит в основе практически всех сетевых приложений. Java продолжает предлагать современные способы обучения информационным технологиям по всему миру — от Big Data до Machine Learning/Artificial Intelligence и многих других современных сценариев использования при разработке приложений.

Просмотрите видеоролик Oracle Moved by Java, героями которого стали участники Oracle Academy.

Пример применения Machine Learning

Machine Learning

Oracle включает машинное обучение Machine Learning в различные облачные службы, в том числе в революционную автономную базу данных Autonomous Database, чтобы предприятия могли реализовать новые инновационные возможности, одновременно оптимизируя выполнение операций и повышая безопасность.

Чтобы помочь преподавателям и учащимся оставаться в курсе новейших технологий, Oracle Academy и эксперты Oracle регулярно представляют информацию о Machine Learning и других технологиях преподавателям и учащимся по всему миру на мероприятиях по профессиональному развитию Oracle Academy и мероприятиях для учащихся.

С чего начать

Открываем тему — потому что в рамках одной статьи рассказать про восемь различных программно-аппаратных комплексов Oracle можно только в формате «открытия темы». Поэтому сегодня мы «пробежимся» по Exadata, Exalogic, SuperCluster, Exalytics, Database Appliance, Big Data Appliance, Private Cloud Appliance и Zero Data Loss Recovery Appliance, а в других материалах будем обсуждать каждую продуктовую линию отдельно и детально.


На самом деле термин «программно-аппаратные комплексы», которым мы будем пользоваться в этой статье, не вполне корректен, ведь любые вычислительные системы по определению являются программно-аппаратными комплексами. Правильнее говорить об оптимизированных программно-аппаратных комплексах. Потому что каждый программно-аппаратный комплекс — это результат тщательнейшего проектирования, подбора компонентов, настройки программного обеспечения, комплектации решения функциональностью и, конечно, оптимизации.

Аппаратное обеспечение и программное обеспечение проектируются, тестируются и отлаживаются совместно. И если вы знаете, на каком оборудовании будут работать приложения, то вы можете добиться высочайшей производительности, вероятность «сюрпризов» от несовместимости компонентов при этом становится меньше, а оказание поддержки — проще. Заказчикам не приходится подбирать и оптимизировать компоненты — серверы, диски, процессоры, сетевые компоненты, память и т.п. Устанавливать и настраивать программное обеспечение, тестировать работоспособность каждого сервера, заниматься их последующим обновлением и т.п. тоже не нужно. Существенно упрощается обслуживание ИТ-инфраструктуры. Именно в этом заключается идея программно-аппаратных комплексов, которые компания Oracle начала создавать с 2008 г. — самостоятельно разрабатывать программно-аппаратные конфигурации для достижения наивысшей производительности.

Машины Exadata были дебютом Oracle в жанре программно-аппаратных комплексов. Exadata — это машина, предназначенная исключительно для выполнения СУБД Oracle. Она используется для OLTP-нагрузок, для хранилищ данных, для смешанных нагрузок, для консолидации приложений на базе Oracle Database. На аппаратном уровне Exadata в зависимости от конфигурации — это и быстрая дисковая подсистема и 40-гигабитная сеть Infiniband, а также многотерабайтная оперативная память и FLASH-память на десятки терабайт. То есть, с аппаратной точки зрения — это очень быстрые и мощные машины.


Но важнейшей особенностью архитектуры Exadata являются так называемые ячейки (рис. 1). Каждая ячейка Exadata — это самостоятельный сервер с 12 дисками и специальным ПО Exadata Software. Ячейки Exadata — это не просто серверы хранения, они умеют выполнять множество операций самостоятельно. Это операции, которые в традиционной архитектуре делает сама СУБД Oracle — тем самым серверы баз данных разгружаются для других операций. Не всегда очевидный, но очень важный момент — многие ресурсоемкие запросы требуют перекачки больших объемов данных с дисков по сети на сервера СУБД Oracle для обработки. В случае использования ячеек, зачастую удается отфильтровать заведомо ненужные данные прямо на системе хранения, чтобы передавать в СУБД требовалось только ничтожную часть первоначального объема данных. Это позволяет в некоторых случаях увеличивать производитльность запросов в десятки и сотни раз. Ячейки не связаны между собой непосредственно, что позволяет распараллеливать запросы без накладных расходов. Количество ячеек в системе неограниченно, при этом данные «размазаны» между многими ячейками Exadata.

Важно понимать, что даже если самостоятельно собрать похожий аппаратный комплекс на оборудовании Oracle или других производителей, создать на его основе систему, аналогичную Exadata не получится. Дело в том, что программное обеспечение Exadata, которое отвечает за большую часть преимуществ Exadata, включая гибридно-колоночную компрессию, индексы хранения, работа c FLASH-картами и т.д., поставляется только с Exadata. Благодаря оптимизации, которую проходят комплексы Exadata и использованию Exadata Software, система в целом работает в разы быстрее, чем любые аналогичные, но обычные, неоптимизированные конфигурации.

Как вы понимаете, на такой конфигурации могут работать довольно серьезные базы данных, так что малый бизнес для Database Appliance — далеко не предел. С другой стороны, если для вашего бизнеса 72 процессорных ядра много, то не нужно платить сразу за все — можно для начала лицензировать меньшее количество ядер (минимально два ядра), все остальные будут временно заблокированы. Когда с течением времени вашему бизнесу потребуются дополнительные вычислительные мощности, можно приобрести лицензию на необходимое количество ядер — и они будут активизированы. Так Database Appliance оптимизирует затраты клиентов.

Изначально Oracle Database Appliance задумывали, как машину для базы данных Oracle, но затем заказчики получили возможность устанавливать на эту конфигурацию виртуальную машину Oracle и разворачивать на ней полноценные решения — со слоями приложений, базы данных и т.д. А поскольку виртуальная машина Oracle поддерживает частичное лицензирование, можно лицензировать одни процессорные ядра только для виртуальной машины и серверов приложений, другие — только для слоя базы данных и т.д.

Oracle Exalogic — это Exadata «наоборот», аналогичная машина, оптимизированная для выполнения слоя приложений Oracle. Exalogic, построенная на архитектуре Intel, предлагает высочайшую производительность для Oracle Fusion Middleware, приложений Oracle (таких как Oracle E-Business Suite, Utilities, Siebel и т.д.) и виртуальных машин, она оптимизирована для приложений WebLogic.


Exalogic — это очень мощная машина. У нее до 30 вычислительных узлов, до 1080 ядер Xeon, встроенное хранилище для огромных объемов данных — дисковый массив ZFS на 80 ТБ. Конечно, заказчик может создать подобную конфигурацию сам, но тогда у него не будет главного — флажка «Enable Exalogic Optimizations» на панели администратора (рис. 2). А он включает многочисленные оптимизации и специальныое ПО, которое позволяет, как и в случае Exadata, значительно ускорить систему, по сравнению с обычными конфигурациями.

Oracle SuperCluster — это машина, которая сочетает в себе возможности Exadata и Exalogic на платформе SPARC. Фактически это машина для консолидации — на нее можно установить базу данных, слой приложений и настроить все это для совместной работы с использованием всех преимуществ SPARC-платформы, включая виртуализацию, отказоустойчивость и т.д. При этом на SuperCluster используются ячейки Exadata для ускорения работы базы данных. Но самое большое преимущество можно получить, когда на одном SuperCluster разворачивается целиком целая система, например, система Oracle E-Business Suite, или система SAP, которая состоит из серверов приложений и базы данных Oracle.


Сейчас существуют две продуктовые линии SuperCluster: одна на процессоре Т5, вторая — на процессорах М6. На рис. 3 приведено сравнение конфигураций SuperCluster Т5-8 и М6-32. Одно из основных преимуществ SuperCluster М6-32 — это огромный объем оперативной памяти, до 32 ТБ, а также 384 процессорных ядра. Если ваша бизнес-система требовательна к количеству процессоров, к объему оперативной памяти и, возможно, не слишком хорошо приспособлена для работы в кластере, то SuperCluster М6-32 закроет все потребности даже такой «капризной» системы.

Машина Oracle Exalytics предназначена для ускорения слоя бизнес-аналитики. Ее главные возможности — это ускорение работы Oracle Business Intelligence и Oracle Essbase благодаря использованию большого объема оперативной памяти, интеграция с Exadata, ускорение отчетов и задач планирования и бюджетирования, поддержка большого количества пользователей, использование технологий In-Memory технологий: Oracle TimesTen или Oracle Database с опцией ln-Memory.

Exalytics версии X5-4 имеет до 3 ТБ оперативной памяти, 72 процессорных ядра Intel, FLASH-хранилище объемом 4,8 ТБ и жесткие диски суммарным объемом 7,2 ТБ. Exalytics версии T5-8 — еще более «богатая» машина, у нее 4 ТБ оперативной памяти, 128 процессорных ядер SPARC T5 и 3,2 ТБ FLASH-памяти. Эту огромную вычислительную мощь имеет смысл использовать с огромным количеством одновременно работающих пользователей аналитической системы, в том числе для поддержки хранилищ данных, работающих на альтернативных платформах, и испытывающих проблемы с производительностью.

Oracle Private Cloud Appliance — это инфраструктура для быстрого развертывания виртуальных машин на базе Oracle VM. Это удобный в использовании комплекс, который позволяет вам очень быстро развертывать виртуальные машины и управлять ими. Виртуальные машины создаются вручную из ISO-образов или из шаблонов Oracle VM. В Private Cloud Appliance, можно, например, создать простую виртуальную машину вроде Oracle Linux VM или Solaris VM за одну минуту, а 16-узловой кластер Oracle RAC — примерно за 45 минут. Кроме того, в OPCA используется относительно недавно приобретенная Oracle система SDN (Software Define Network) для быстрого создания и управления виртуальными сетями.

Инфраструктура предназначена для работы с Intel-ориентированными виртуальными машинами (Linux, Solaris, Windows). Можно приобрести минимальную двухузловую конфигурацию и наращивать ее до 25 узлов. Число процессорных ядер в такой максимальной конфигурации составит 900 (по 36 на узел), объем памяти — 6,4 ТБ (по 256 ГБ на узел). У системы есть небольшое собственное хранилище (ZFS Storage), но предполагается, что виртуальные машины будут использовать системы хранения, которыми располагает заказчик.

Oracle Zero Data Loss Recovery Appliance — это первый в мире программно-аппаратный комплекс, созданный специально для защиты баз данных Oracle. Recovery Appliance обеспечивает непрерывную защиту бизнес-критичных баз данных, выполняя всю обработку процессов резервного копирования, чтобы минимизировать нагрузку на производственные сервера. Оно исключает риск потери данных и резко снижает накладные расходы, связанные с защитой данных на производственных серверах. Кроме того, Recovery Appliance масштабируется для защиты тысяч баз данных, гарантирует сквозную проверку достоверности данных, а также реализует полный жизненный цикл защиты данных, включая резервное копирование на диск, резервное копирование на магнитную ленту и дистанционную репликацию.

Новые возможности Oracle Zero Data Loss Recovery Appliance тесно интегрируются с функциями СУБД Oracle и утилитой Recovery Manager (RMAN) для резервного копирования. Recovery Appliance реализует архитектуру только инкрементного (incremental forever) резервного копирования, чтобы минимизировать нагрузку на производственные системы.

Основная цель Recovery Appliance — исключить потери критически важной информации в базе данных. Передача журналов транзакций Redo в режиме реального времени на резервную БД была впервые реализована в технологии Oracle Data Guard. Recovery Appliance распространяет эту технологию на все базы данных простым и экономически эффективным способом. Recovery Appliance предлагает такой же уровень защиты данных, как и Data Guard, для баз данных, где не требуется быстрое переключение на резервную БД.

Система Recovery Appliance «понимает» внутренние форматы блоков СУБД Oracle, что позволяет производить проверку целостности данных на глубоком уровне. Целостность данных во всех резервных копиях и блоках Redo автоматически проверяется при их получении системой Recovery Appliance.

Recovery Appliance автоматизирует и принимает на себя управление всеми процессами полного и инкрементного резервного копирования на ленты. В качестве опции в программно-аппаратном комплексе Recovery Appliance могут быть установлены адаптеры Fibre Channel 16 Гбит/с для пересылки данных непосредственно из Recovery Appliance на ленточные библиотеки с использованием входящего в комплект поставки высоко интегрированного ПО Oracle Secure Backup для управления.

Сегодня с потребностью обработки гигантских объемов данных сталкиваются многие компании, которые должны заниматься глубоким анализом поведения клиентов, планировать высокоточную рекламу, объединять и анализировать данные из многих источников, в том числе неструктурированных, бороться с мошенничествами и т.д.

И последнее на сегодня. Пожалуйста, не пользуйтесь калькой с английского, и не называйте программно-аппаратные комплексы «инженерными системами». Это неправильно, потому что в русском языке под инженерными системами понимают совсем другое — системы электро-, тепло- и газоснабжения, водоснабжения и канализации, вентиляции и кондиционирования, освещения и связи. Вот почему наши оптимизированные программно-аппаратные комплексы достойны того, чтобы называть их своим именем — ведь они могут управлять целыми городами инженерных систем.

CDM (Custom Development Method) - разработка прикладного программного обеспечения;

PJM (Project Management Method) - управление проектом;

AIM (Application Implementation Method) - внедрение прикладного программного обеспечения;

BPR (Business Process Reengineering) - реинжиниринг бизнес-процессов;

OCM (Organizational Change Management) - управление изменениями, и др.

Метод CDM оформлен в виде консалтингового продукта CDM Advantage - библиотеки стандартов и руководств (включающего также PJM). Он представляет собой развитие достаточно давно созданного Oracle CASE-Method, известного по использованию CASE-средств фирмы Oracle и книгам Р. Баркера. CDM является методическим руководством по разработке прикладного программного обеспечения с использованием инструментального комплекса Oracle Developer Suite, а сам процесс проектирования и разработки тесно связан с Oracle Designer и Oracle Forms.

В соответствии с CDM жизненный цикл программного обеспечения формируется из определенных этапов (фаз) проекта и процессов, каждый из которых выполняется в течение нескольких этапов (Приложение Б):

стратегия (определение требований);

анализ (формулирование детальных требований к системе);

проектирование (преобразование требований в детальные спецификации системы);

реализация (написание и тестирование приложений);

внедрение (установка новой прикладной системы, подготовка к началу эксплуатации);

На этапе стратегии определяются цели создания системы, приоритеты и ограничения, разрабатывается системная архитектура и составляется план разработки. На этапе анализа строятся модель информационных потребностей (диаграмма «сущность-связь»), диаграмма функциональной иерархии (на основе функциональной декомпозиции системы), матрица перекрестных ссылок и диаграмма потоков данных.

На этапе проектирования разрабатывается подробная архитектура системы, проектируются схема реляционной БД и программные модули, устанавливаются перекрестные ссылки между компонентами системы для анализа их взаимного влияния и контроля за изменениями.

На этапе реализации создается БД, строятся прикладные системы, производится их тестирование, проверка качества и соответствия требованиям пользователей. Создается системная документация, материалы для обучения и руководства пользователей.

На этапах внедрения и эксплуатации анализируются производительность и целостность системы, выполняется поддержка и, при необходимости, модификация системы.

Процессы CDM выполняют следующие действия:

определение бизнес-требований, или постановка задачи (Business Requirements Definition);

исследование существующих систем (Existing Systems Examination). Выполнение этого процесса должно обеспечить понимание состояния существующего технического и программного обеспечения для планирования необходимых изменений;

определение технической архитектуры (Technical Architecture);

проектирование и реализация базы данных (Database Design and Build). Процесс предусматривает проектирование и реализацию реляционной базы данных, включая создание индексов и других объектов БД;

проектирование и реализация модулей (Module Design and Build). Этот процесс является основным в проекте. Он включает непосредственное проектирование приложения и создание кода прикладной программы;

конвертирование данных (Data Conversion). Цель этого процесса - преобразовывать, перенести и проверить согласованность и непротиворечивость данных, оставшихся в наследство от "старой" системы и необходимых для работы в новой системе;

внедрение, или переход к новой системе (Transition). Этот процесс включает решение задач установки, ввода новой системы в эксплуатацию, прекращения эксплуатации старых систем;

поддержка и сопровождение (Post-System Support).

Процессы состоят из последовательностей взаимосвязанных задач.

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

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

В соответствии с этими факторами в CDM выделяются два основных подхода к разработке:

Классический подход (Classic). Этапы данного подхода представлены. (Приложение Б) Классический подход применяется для наиболее сложных и масштабных проектов, он предусматривает последовательный и детерминированный порядок выполнения задач. Для таких проектов характерно большое количество реализуемых бизнес-правил, распределенная архитектура, критичность приложения. Применение классического подхода также рекомендуется при нехватке опыта у разработчиков, неподготовленности пользователей, нечетко определенной задаче. Продолжительность таких проектов от 8 до 36 месяцев.

Подход быстрой разработки (Fast Track). Данный подход, в отличие от каскадного классического, является итерационным и основан на методе DSDM (Dynamic Systems Development Method). В этом подходе четыре этапа - стратегия, моделирование требований, проектирование и генерация системы и внедрение в эксплуатацию. Подход используется для реализации небольших и средних проектов с несложной архитектурой системы, гибкими сроками и четкой постановкой задач. Продолжительность проекта от 4 до 16 месяцев.

PJM - это определенная дисциплина ведения проекта, позволяющая гарантировать, что цели проекта, четко определенные в его начале, остаются в центре внимания на протяжении всего проекта. В основе PJM лежит метод, ориентированный на выполнение самостоятельных процессов (под процессом понимается набор связанных задач, выполнением которых достигается определенная цель проекта). Так же, как и CDM, метод руководства проектом представляется в виде четко определенной операционной схемы, в которой выделяются процессы, этапы, задачи, результаты решения задач и зависимости между задачами:

Управление проектом и предоставление отчетности (Control and Reporting). Этот процесс содержит задачи, в результате решения которых определяются границы проекта и подход к разработке, происходит управление изменениями и контролируется возможный риск;

Управление работой (Work Management). Процесс содержит задачи, помогающие контролировать работы, выполняемые в проекте;

Управление ресурсами (Resource Management). Здесь решаются задачи, связанные с обеспечением каждого этапа исполнителями;

Управление качеством (Quality Management). Процесс управления качеством гарантирует, что проект отвечает требованиям пользователя в течение всего процесса разработки;

Управление конфигурацией (Configuration Management).

Цикл решения задач PJM состоит из отдельных этапов. Количество этапов зависит от выбранного подхода к разработке. Задачи PJM распределяются внутри каждого процесса по трем группам - задачи планирования, управления и завершения, и по уровням - отнести задачу на уровень проекта или на уровень отдельного этапа.

По аналогии с CDM, в PJM предусмотрено широкое использование шаблонов разрабатываемых документов.

Комплекс Oracle Developer Suite содержит набор интегрированных средств разработки для быстрого создания приложений. Он включает средства моделирования, программирования на Java, разработки компонентов, бизнес-анализа и составления отчетов. Все эти средства используют общие ресурсы, что позволяет совместно работать над одним проектом группе разработчиков. Oracle Developer Suite интегрирован с Oracle Database и Oracle Application Server, образуя единую платформу для создания и установки приложений.

В Oracle Developer Suite встроена поддержка языка UML для разработки приложений на основе моделей. Модели хранятся в общем репозитории Oracle, который предназначен для поддержки больших коллективов разработчиков.

CASE-средство Oracle Designer является интегрированным средством, обеспечивающим в совокупности со средствами разработки приложений поддержку жизненного цикла программного обеспечения.

Oracle Designer представляет собой семейство методов и поддерживающих их программных продуктов. Базовый метод Oracle Designer (CDM) - структурный метод проектирования систем, охватывающий полностью все стадии жизненного цикла программного обеспечения. Версия Oracle Designer для объектно-реляционной СУБД Oracle содержит также расширение в виде средств объектного моделирования, базирующихся на стандарте UML.

Oracle Designer обеспечивает графический интерфейс при разработке различных моделей (диаграмм) предметной области. В процессе построения моделей информация о них заносится в репозиторий. В состав Oracle Designer входят следующие компоненты:

Repository Administrator - средства управления репозиторием (создание и удаление приложений, управление доступом к данным со стороны различных пользователей, экспорт и импорт данных);

Repository Object Navigator - средство доступа к репозиторию, обеспечивающее многооконный объектно-ориентированный интерфейс доступа ко всем элементам репозитория;

Process Modeler - средство анализа и моделирования бизнес-процессов;

Systems Modeler - набор средств построения функциональных и информационных моделей проектируемой системы, включающий средства для построения диаграмм "сущность-связь" (Entity-Relationship Diagrammer), диаграмм функциональных иерархий (Function Hierarchy Diagrammer), диаграмм потоков данных (Data Flow Diagrammer) и средство анализа и модификации связей объектов репозитория различных типов (Matrix Diagrammer);

Systems Designer - набор средств проектирования программного обеспечения, включающий средство построения структуры реляционной базы данных (Data Diagrammer), а также средства построения диаграмм, отображающих взаимодействие с данными, иерархию, структуру и логику приложений, реализуемую хранимыми процедурами на языке PL/SQL (Module Data Diagrammer, Module Structure Diagrammer и Module Logic Navigator);

Server Generator - генератор описаний объектов БД Oracle (таблиц, индексов, ключей, последовательностей и т.д.);

Forms Generator - генератор приложений для Oracle Forms. Генерируемые приложения включают в себя различные экранные формы, средства контроля данных, проверки ограничений целостности и автоматические подсказки;

Repository Reports - генератор стандартных отчетов, интегрированный с Oracle Reports.

Репозиторий Oracle Designer представляет собой хранилище всех проектных данных и может работать в многопользовательском режиме, обеспечивая параллельное обновление информации несколькими разработчиками. В процессе проектирования автоматически поддерживаются перекрестные ссылки между объектами словаря и могут генерироваться более 70 стандартных отчетов о моделируемой предметной области. Физическая среда хранения репозитория - база данных Oracle.

Антон Меринов

Обзор возможностей. характеристик и сфер применения СУБД Oracle

На мировом рынке корпоративных систем управления базами данных (СУБД) доминирующее положение занимает традиционная тройка продуктов: 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-серверах, персональных компьютерах и т. д.

Читайте также: