2009 г.
Краткий технический обзор грид-сервера хранения данных HP Oracle Exadata
Официальный документ Oracle, Октябрь 2008 г.
Источник: Oracle Magazine - Русское издание
Оригинал:
A Technical Overview of the HP Oracle Exadata Storage Grid
Сервер хранения данных HP Oracle Exadata
Сервер хранения данных HP Oracle Exadata – это механизм для хранения
данных, в высшей степени оптимизированный для использования с базой
данных Oracle. С помощью Exadata удается достичь потрясающей
производительности подсистемы ввода-вывода и обработки SQL-запросов
(SQL processing) для приложений, работающих с хранилищами данных,
благодаря использованию архитектуры с массовым параллелизмом для
активации динамической грид-памяти (dynamic storage grid) при
развертываниях среды Oracle Database 11g. Комплекс Exadata представляет
собой комбинацию программного обеспечения и оборудования, используемых
для хранения данных в базе данных Oracle и обращения к ним. Он
предлагает готовые к работе с базой данных услуги хранения, типа
возможности разгрузить базу данных, перенося обработку с сервера базы
данных в систему хранения, обеспечивая при таком переносе полную
прозрачность обработки SQL-запросов и приложений базы данных.
Устройства хранения Exadata предлагают существенное повышение
производительности, а также неограниченную масштабируемость подсистемы
ввода-вывода, они просты в использовании и управлении и обеспечивают
предприятию доступность и надежность, требующиеся для решения
стратегически важных задач.
Exadata обеспечивает для Oracle Database экстремальные значения
производительности ввода-вывода и обработки SQL-запросов, используя во
внедрениях Oracle Database 11g архитектуру с массовым параллелизмом для
активации совместно используемой грид-памяти хранения (shared storage
grid). |
Комплекс Exadata является совместным предложением Oracle и HP. HP
обеспечивает технологию аппаратных средств, используемую в сервере
хранения Exadata. Oracle обеспечивает программное обеспечение для
придания среде хранения интеллекта базы данных и сильной интеграции
среды хранения Exadata с базой данных Oracle и всеми ее возможностями.
HP обеспечивает международное присутствие и безоговорочное лидерство в
области производства серверов с процессорами x86, а также службу
поддержки мирового класса, что делает это партнерство столь мощным.
Партнерство Oracle и HP делает возможным производство сервера хранения
Exadata и тех поистине революционных возможностей, которые он
предлагает.
Сегодняшние пределы для ввода-вывода базы данных
Фундаментом Exadata является интеллектуальное программное обеспечение
базы данных для обработки сложных задач анализа, выполняемых
приложениями, работающими с хранилищами данных. База данных Oracle
обеспечивает интеллектуальное (brainy) программное обеспечение, типа
битовой индексации, индексации соединений, кубов OLAP,
материализованных представлений, кэшей результатов, секционирования и
т.д. для того, чтобы сделать возможным очень сложный анализ данных и
свести к минимуму потребность в дорогих аппаратных средствах. А
обращение к базам данных, содержащим сотни терабайтов данных, наращивая
интеллектуальное программное обеспечение мощными аппаратными средствами
для выполнения "лобовых" просмотров и соединений, обеспечивает огромные
возможности для увеличения объемов и ускорения обработки баз данных для
бизнеса. Наличие мускулистых (brawny) аппаратных средств для
обеспечения необходимой полосы пропускания для высокопроизводительных
приложений, работающих с хранилищами данных, в дополнение к мозговитому
(brainy) программному обеспечению, является ключом для достижения
критической производительности, обеспечиваемой семейством продуктов
Exadata.
Интеллектуальный софтвер (Brainy software) и сильный хартвер (brawny hardware) обеспечат результат наиболее быстро
|
Традиционные среды хранения предлагают базе данных Oracle узкий и
ограниченный интерфейс к среде хранения данных. Сегодня в путях
ввода-вывода имеется много так называемых узких мест, ограничивающих
полосу пропускания данных, что, следовательно, ограничивает обшую
производительность базы данных. Серверам базы данных требуется большое
количество адаптеров главной шины (Host Bus Adapters – HBA) сети
устройств хранения данных (Storage Area Network – SAN), чтобы
обеспечить полосу пропускания, необходимую для доставки данных из среды
хранения в базу данных с необходимой скоростью. Очень часто сервер
оказывается не в состоянии поддержать количество HBA, требующихся для
достижения адекватной производительности, или же это количество HBA
становится слишком дорогим. Помимо этого, для обеспечения необходимой
полосы пропускания и избыточности существенно увеличиваются стоимость и
сложность SAN-коммутаторов. Кроме того, большие массивы хранения не
могут предоставить адекватную полосу пропускания тем сотням дисков,
которые в них входят. Это приводит к тому, что потенциальная
производительность дисков искусственно ограничивается на уровне,
который значительно ниже того, который они способны обеспечить.
Производительность дисков становится узким местом для
волоконно-оптических кольцевых линий связи (Fibre Channel Loops – FCL)
с дисками и для производительности обработки массивов хранения.
При обработке SQL-запросов с помощью Smart Scan в среде хранения
Exadata интеллект базы данных переносится как можно ближе (насколько
это возможно) к аппаратным средствам для получения экстремальной
производительности ввода-вывода. |
Традиционные внешние запоминающие устройства к тому же «не знают»,
что хранящаяся в них информация представляет собой базу данных, и
поэтому не могут обеспечить какие бы то ни было операции обработки
SQL-запросов или ввода-вывода, предназначенных специально для работы с
базой данных. Хотя база данных запрашивает строки и столбцы, из
устройств хранения на самом деле возвращаются блоки данных, а вовсе не
результирующий набор запроса к базе данных. Традиционные устройства
хранения не обладают никаким интеллектом базы данных, чтобы различить
фактически запрошенные конкретные строки и столбцы. Так что, при
обработке ввода-вывода от имени базы данных традиционные устройства
хранения потребляют полосу пропускания, возвращая много данных, которые
нерелевантны запросу, заданному базой данных.
Продукты семейства Exadata решают вопросы, относящиеся к трем ключевым
измерениям ввода-вывода базы данных, которые могут препятствовать
производительности хранилища данных.
- Комплексы Exadata базируются на архитектуре с массовым
параллелизмом, которая предлагает большее число каналов для обеспечения
более быстрой пересылки большего объема данных между серверами баз
данных и серверами хранения.
- Комплексы Exadata построены с использованием более широких
каналов, которые предлагают чрезвычайно высокую полосу пропускания
между серверами баз данных и серверами хранения.
- Комплексы Exadata готовы к работе с базами данных и могут
поставлять только те данные, которые требуются для удовлетворения
SQL-запросов, что приводит к существенному уменьшению объема
пересылаемых данных между серверами баз данных и серверами хранения.
Семейство продуктов Exadata
Семейство продуктов Oracle Exadata состоит из двух членов.
Фундаментом семейства продуктов Exadata является сервер хранения Oracle
Exadata компании HP. Он используется для построения решений для
хранилищ данных с использованием поставляемых заказчиками серверов базы
данных и инфраструктуры. Вторым членом семейства продуктов Exadata
является машина Oracle Database компании HP. Машина базы данных
представляет собой полное и полностью интегрированное решение для
работы с хранилищами данных, в состав которого включены все компоненты
для быстрого и беспрепятственного развертывания хранилищ данных
предприятия.
Сервер хранения HP Oracle Exadata
Сервер хранения Exadata является внешним устройством хранения данных
базы данных, на котором выполняется программное обеспечение сервера
хранения Exadata, поставляемое Oracle. Компоненты аппаратных средств
сервера хранения Exadata (также называемые ячейками Exadata – Exadata cells)
были тщательно выбраны, чтобы соответствовать потребностям
высокопроизводительной обработки запросов. Программное обеспечение
Exadata оптимизировано, чтобы можно было воспользоваться всеми
возможными преимуществами компонентов аппаратных средств и Oracle
Database. Каждая ячейка Exadata обеспечивает базе данных потрясающую
производительность ввода-вывода и полосу пропускания.
Cервер хранения Exadata является фундаментом семейства продуктов
Exadata. Ячейки подключаются к серверам базы данных и используются как
постоянная память (среда постоянного хранения) для базы данных. |
Аппаратные средства ячейки базируются на серверах HP Proliant
DLl 80 G5. Ячейка поставляется предварительно сконфигурированной и
содержит два четырехъядерных процессора Intel с частотой 2.66 ГГц,
двенадцать дисков, подключенных к интеллектуальному контроллеру массива
хранения с 512 Кб энергонезависимого кэша, 8 Гбайт оперативной памяти,
сдвоенный порт связи InfiniBand, плату управления для удаленного
доступа, избыточные источники питания, полностью предварительно
установленное программное обеспечение. Она может быть установлена в
типовую 19-дюймовую стойку.
Рисунок 1: Ячейка хранения Exadata
Предлагаются две версии ячейки Exadata. Первая базируется на дисках с
интерфейсом Serial Attached SCSI (SAS) емкостью 450 Гбайт. Эта версия
ячейки обладает информационной емкостью до 1.5 Тбайт
некомпрессированных пользовательских данных и полосой пропускания
данных до 1 Гбайт/сек. Вторая версия ячейки Exadata базируется на
дисках с интерфейсом SATA и обладает информационной емкостью до 3.3
Тбайт некомпрессированных пользовательских данных и полосой пропускания
данных до 750 Мбайт/сек. Когда данные хранятся в компрессированном
формате, количество пользовательских данных и размер полосы пропускания
данных, обеспечиваемых каждой ячейкой, часто возрастает в 2-3 раза.
Информационная емкость пользовательских данных вычисляется после
зеркалирования всего дискового пространства, и после того, как выделено
место для структур базы данных: журналы, пространство отката и
временное пространство. Фактические данные пользователя изменяются от
приложения к приложению.
Между серверами и средой хранения в Oracle Exadata используется самое
современное межузловое соединение InfiniBand. Для повышения доступности
ячейка Exadata имеет сдвоенный порт соединения InfiniBand. Каждая связь
InfiniBand обладает 16-гигабитовой полосой пропускания, что во много
раз выше, чем у традиционных сетей хранения или сетей серверов. Далее,
протокол Oracle подключения к сети использует прямое размещение данных
(прямой доступ к памяти – DMA или direct memory access), чтобы
гарантировать очень низкие накладные расходы центрального процессора за
счет непосредственного переноса данные «с провода» в буферы базы
данных, не делая дополнительного копирования данных. Сеть InfiniBand
имеет гибкость сети LAN и эффективность SAN. При использовании сети
InfiniBand Oracle гарантирует, что сеть не станет узким местом для
производительности. Та же самая сеть InfiniBand также обеспечивает
высокопроизводительное межузловое соединение узлов в кластерах Oracle
Database Real Application Cluster (RAC).
На приведенном ниже рисунке 2 показана небольшая среда базы данных на
базе устройстве хранения данных Exadata. Две базы данных Oracle – один
RAC и один одиночный экземпляр – совместно используют три ячейки
Exadata. Все компоненты для этой конфигурации – серверы базы данных,
ячейки Exadata, коммутатор InfiniBand, коммутаторы Ethernet и другие
аппаратные средства поддержки – могут быть размещены в типовой
19-дюймовой стойке, занимая при этом меньше ее половины.
Рисунок 2: Облегченная конфигурация ячейки хранения Exadata
Архитектура комплекса Oracle Exadata проработана таким образом, чтобы в
нем для достижения масштабирования до любого уровня производительности
можно было использовать архитектуру scale-out. Для достижения более
высокой производительности и емкости запоминающего устройства к
конфигурации добавляются дополнительные ячейки Exadata. По мере
добавления дополнительных ячеек емкость, пропускная способность и
производительность увеличиваются линейно. В конфигурации Exadata
никогда не делается (и не требуется) никаких каналов связи между
ячейками (cell-to-cell communication).
По мере того, как добавляется емкость к серверу хранения Exadata,
автоматически добавляется и производительность. Комплекс Exadata
обеспечивает почти безграничную масштабируемость. |
Как показано на приведенном ниже рисунке 3, типовая 19-дюймовая
стойка размера 42U может содержать до восемнадцати ячеек Exadata. Если
выбраны диски с интерфейсом SAS, то доступны 97 Тбайт полной
(неформатированной) емкости (216 Тбайт полной емкости для дисков SATA).
Пиковая пропускная способность для конфигурации на базе SAS составляет
18 Гбайт/сек. Если требуется дополнительная емкость запоминающего
устройства, добавьте больше стоек с ячейками Exadata, чтобы
масштабироваться до любой необходимой полосы пропускания или
производительности. Добавление дополнительных стоек – это простой
процесс, поскольку связная архитектура InfiniBand может
распространяться и между стойками при полном сохранении возможностей
связи. Как только подключается новая стойка, новые диски Exadata
обнаруживаются и делаются доступными Oracle Database.
Рисунок 3: Масштабирование среды хранения Exadata для производительности и емкости
Зеркалирование дисков, обеспечиваемое механизмом автоматического
управления средой хранения (Automatic Storage Management – ASM), и
способные к «горячей» замене (то есть, замене без прекращения работы)
диски Exadata являются гарантией того, что база данных может допускать
отказы индивидуальных дисководов. Данные зеркалируются в различные
ячейки, гарантируя, что отказ одной из ячеек не вызовет потери или не
станет препятствием для доступности данных. Такая архитектура с
массовым параллелизмом обеспечивает неограниченную масштабируемость и
высокую доступность.
При использовании Oracle Exadata обработка SQL-запросов
переносится с сервера базы данных на сервер хранения Oracle Exadata. В
дополнение к обеспечению традиционного обслуживания блоками данных,
Oracle Exadata делает возможной передачу функций от экземпляра базы
данных в базовую среду хранения. Одним из уникальных механизмов,
обеспечиваемых средой хранения Exadata по сравнению с традиционными
средами, является возвращение не всей таблицы, к которой делался
запрос, а только строк и столбцов, удовлетворяющих запросу к базе
данных. Комплекс Exadata помещает обработку SQL-запросов настолько
близко к аппаратным средствам, насколько это возможно, и обеспечивает
работу в параллельном режиме всех дисков. Он уменьшает потребление CPU
на сервере базы данных, занимает намного меньшую полосу пропускания при
переносе данных между серверами базы данных и серверами хранения и
возвращает результирующий набор запроса, а не целые таблицы. Устранение
передачи данных и сокращение рабочей нагрузки на сервер базы данных
может принести значительную пользу при запросах к хранилищам данных,
которым традиционно не хватало полосы пропускания и времени CPU.
Устранение передач данных может также привести к существенной выгоде
для систем онлайновой обработки запросов (OLTP).
Среда хранения Exadata полностью прозрачна для приложений,
использующих базу данных. Существующие SQL-операторы, будь то
нерегламентированные (специальные, ad hoc) запросы или запросы из
пакетированных или заказных приложений, не требуют никакой модификации
в случае использования среды хранения Exadata. Все преимущества
решения, связанные с разгрузкой обработки и расширением полосы
пропускания, становятся доступными без какой бы то ни было модификации
приложений. И все возможности базы данных Oracle полностью
поддерживаются в среде хранения Exadata. Комплекс Exadata работает
одинаково хорошо и в случае развертывания базы данных Oracle для
одиночного экземпляра, и для кластеров Real Application Clusters. Такие
функциональные возможности, как Data Guard, диспетчер восстановления
(RMAN), Streams и другие инструментальные средства базы данных
администрируются абсолютно одинаково как с Exadata, так и без них.
Пользователи и администратор базы данных сегодня применяют те же самые
инструментальные средства и знания, с которым они хорошо знакомы,
потому что они работают точно так же, как они работали с традиционными
(без Exadata) средами хранения. Среды хранения и с комплексами Exadata,
и без них могут одновременно использоваться в среде хранения базы
данных, чтобы облегчить переход к средам Exadata, или от них.
Применение памяти, напоминающей трубопровод (stovepiped), приводит к
неэффективному использованию доступной ширины полосы пропускания памяти
и других ресурсов. |
Природа традиционных продуктов для сред хранения поощряет
неэффективное их развертывание для каждой базы данных в инфраструктуре
ИТ. Архитектура Exadata гарантирует, что вся полоса пропускания и все
ресурсы ввода-вывода подсистемы хранения Exadata могут быть сделаны
доступными всякий раз, когда и к какой бы то ни было базе данных или
классу работы требуется доступ. Пропускная способность подсистемы
ввода-вывода измеряется для различных классов работ или баз данных,
совместно использующих сервер хранения Exadata, основываясь на
определяемых пользователем политиках и соглашениях об уровне
обслуживания (service level agreements (SLAs)). Диспетчер ресурсов базы
данных (Database Resource Manager – DBRM) был модифицирован для
применения со средой хранения Exadata, чтобы управлять использованием
определяемых пользователем ресурсов ввода-вывода как внутри баз
данных(intra), так и между (inter) ними, чтобы гарантировать выполнение
определенных заказчиком SLA. Функциональные возможности управления
ресурсами ввода-вывода среды хранения Exadata делают возможным
приспосабливание ресурсов ввода-вывода к деловым приоритетам
организации и построение разделяемой грид-памяти хранения для баз
данных Oracle.
Машина базы данных HP Oracle Database
В дополнение к ячейкам среды хранения Exadata Oracle предлагает
полностью интегрированную платформу для приложений, работающих с
хранилищами данных. Машина базы данных – это легко развертывающееся
решение, готовое к использованию сразу же после установки хранилища
данных предприятия. В состав машины базы данных входят следующие
аппаратные средства:
Корпорация Oracle в тесном сотрудничестве с HP работала над тем, чтобы
спроектировать конфигурацию аппаратных средств, оптимизирующую
производительность базы данных Oracle. |
- Четырнадцать серверов хранения Exadata (с дисками с интерфейсом SAS или SATA)
- Восемь серверов базы данных Oracle Database 11g Proliant
HPDL360 G5 (четырехъядерные процессоры Intel® 2.66 ГГц с Dual Socket),
оперативная память 32 Гбайт, четыре дисковода SAS емкостью 146 Гбайт
каждый, двухпортовый канальный адаптер хоста InfiniBand (HCA), двойные
порты Ethernet на 1 гигабит/сек и избыточные источники питания
- Вся необходимая инфраструктура InfiniBand (HCA, коммутаторы
и кабели) для обеспечения взаимодействия сервера базы данных с сервером
хранения Exadata
- Коммутатор Ethernet для коммуникации между машинами базы данных и клиентами или другими вычислительными системами
- Аппаратные средства для клавиатуры, видео-блока или устройства визуального отображения (дисплея) и мыши (KVM)
- И это все упаковано в отдельную стандартную 19-дюймовую стойку (размер 42U)
Каждая стойка машины базы данных, использующая ячейки хранения
Exadata на основе SAS, обеспечивает до 46 Тбайт данных
нескомпрессированной пользовательской емкости и полосу пропускания
средств ввода-вывода до 10.5 Гбайт/сек. Кроме того, каждая стойка
машины базы данных является строительным блоком хранилища данных. Путем
использования включенной структуры коммутации InfiniBand стойки могут
быть связаны друг с другом для построения отдельных баз данных, которые
могут масштабироваться до петабайтов.
В итоге продукты Exadata решают вопросы, связанные с тремя
критическими измерениями ввода-вывода базы данных, которые могут стать
препятствиями для производительности хранилищ данных.
- Больше каналов: Exadata базируется на архитектуре с
массовым параллелизмом, которая обеспечивает больше каналов для более
быстрой доставки большего объема данных между серверами базы данных и
серверами хранения. По мере того, как в конфигурацию данных базы
добавляются серверы хранения Exadata, полоса пропускания масштабируется
линейно.
- Сделайте каналы шире: канал InfiniBand в пять раз быстрее
волоконно-оптического канала. Exadata построен с использованием более
широких каналов InfiniBand, которые обеспечивают чрезвычайно широкую
полосу пропускания между серверами базы данных и серверами хранения.
- Отправляйте по каналам меньше данных, выполняя обработку
данных непосредственно в устройстве хранения: комплекс Exadata
подготовлен к работе с базой данных и может отправлять только те
данные, которые требуются для удовлетворения SQL-запросов, что приводит
к тому, что между серверами базы данных и серверами памяти хранения
пересылается меньше данных.
Архитектура Exadata
Среда аппаратных средств для типичной решетки хранения на базе
Exadata показана на рисунке 2. Каждая ячейка Exadata – это автономный
сервер с памятью на дисках, на котором выполняется программное
обеспечение Exadata, предлагаемое корпорацией Oracle. Базы данных
развертываются для всех ячеек Exadata, и несколько баз данных могут
совместно использовать ячейки Exadata. База данных и ячейки Exadata
взаимодействуют через высокоскоростной интерфейс InfiniBand.
Аппаратные средства Exadata обеспечиваются HP, а программное обеспечение – Oracle. |
Коллекцию ячеек Exadata, совместно используемых целым рядом
баз данных, принято называть Exadata Realm (область Exadata). Набор из
трех ячеек на рисунке 2 представляет собой пример такой области.
Области гарантируют изоляцию и, следовательно, защиту для всего
представленного набора баз данных. Предлагаются механизмы для
управляемого и безопасного переноса отдельных дисков и целых ячеек
между областями.
Архитектура решения для Exadata включает компоненты на сервере базы данных и в ячейке Exadata. Общая архитектура показана ниже.
Рисунок 4: Архитектура программного обеспечения Exadata
Программное обеспечение сервера базы данных
База данных Oracle Database 11g была значительно усилена, для
того чтобы воспользоваться всеми преимуществами среды хранения Exadata.
Программное обеспечение Exadata оптимально разделяется между сервером
базы данных и ячейкой Exadata. Сервер базы данных и программное
обеспечение сервера хранения Exadata взаимодействуют, используя для
этого iDB – протокол интеллектуальной базы данных. Протокол iDB
реализован в ядре базы данных и прозрачно отображает операции базы
данных на расширенные за счет Exadata операции. В дополнение к
традиционной пересылке блоков данных, обеспечиваемой базой данных,
протокол iDB реализует архитектуру передачу функций. Протокол iDB
используется для передачи SQL-операций на выполнение вниз, в ячейки
Exadata и для возвращения результирующих наборов запросов в экземпляр
базы данных. Вместо того чтобы возвращать блоки базы данных, ячейки
Exadata возвращают только строки и столбцы, удовлетворяющие
SQL-запросам. Подобно существующим протоколам ввода-вывода, iDB может
также непосредственно читать и писать последовательности байтов с диска
и на диск, так что в тех случаях, когда разгрузить обработку не
представляется возможным, Exadata работает, как традиционное
запоминающее устройство для базы данных Oracle. Но когда подобная
разгрузка выполнима, накопленные в экземпляре базы данных сведения дают
возможность, например, передавать вниз просмотры таблиц, чтобы эти
операции выполнялись на сервере хранения Exadata, а на сервер базы
данных возвращались только запрошенные данные.
Протокол iDB построен на базе промышленного стандарта
протокола Reliable Datagram Sockets (RDSv3) и выполняется поверх
протокола InfiniBand. Для устранения ненужного копирования блоков
используется реализация ZDP (Zero-loss Zero-copy Datagram Protocol) или
RDS с отсутствием промежуточного копирования. На серверах базы данных и
ячейках Exadata могут использоваться несколько сетевых интерфейсов. Это
протокол с очень малым временем ожидания, который сводит к минимуму
число создаваемых копий данных, которые требуются для обслуживания
операций ввода-вывода.
Комплекс Exadata предлагает избыточное и устойчивое к отказам решение с широкополосным доступом к базе данных. |
Механизм автоматического управления средой хранения (Automatic
Storage Management – ASM) является фундаментом управления средой
хранения Exadata. Механизм ASM виртуализирует ресурсы среды хранения и
обеспечивает расширенное управление томами и функциональные возможности
файловой системы Exadata. Равномерное расщепление файлов базы данных по
всем доступным ячейкам Exadata и дискам (страйпинг) приводит к
однородной нагрузке на ввод-вывод по всем аппаратным средствам
хранения. Возможность ASM выполнять неагрессивное распределение и
перераспределение ресурсов является ключевым условием для достижения
желаемых коллективных возможностей разднляемой грид-памяти для сред
Exadata. А функциональные возможности зеркалирования ASM и групп
отказов (наборы дисков, разделяющих общие ресурсы, требующие защиты
против сбоев – прим. пер.) обеспечивают большую часть защиты данных и
способности системы противостоять ошибкам во всей среде Exadata. При
использовании ASM данные зеркалируются по всем ячейкам, что гарантирует
высокую доступность в случае отказа отдельной ячейки.
В Oracle Database 11g была усилена опция диспетчера ресурсов
базы данных (DBRM) для использования с Exadata. В дополнение к
управлению использованием CPU, сегментами отката, степенью
параллелизма, активными сеансами и другими ресурсами, диспетчер DBRM
позволяет пользователю определять и управлять пропускной способностью
средств ввода-вывода как внутри базы данных, так и между базами данных.
Он позволяет разделять среду хранения между базами данных, не испытывая
опасений, что одна база данных монополизирует всю полосу пропускания
средств ввода-вывода и окажет воздействие на производительность других
баз данных, совместно использующих среду хранения. Группам потребителей
выделяется определенный процент доступной пропускной способности
средств ввода-вывода, и DBRM гарантирует, что заявленные плановые цифры
будут обеспечены. Это реализуется благодаря тому, что база данных
маркирует операции ввода-вывода метками, определяющими базу данных и
группу потребителей, от имени которых эти операции ввода-вывода
производятся. В результате базе данных предоставляется полная картина
приоритетов операций ввода-вывода для всего стека ввода-вывода.
Распределение ввода-вывода для группы потребителей внутри базы данных
определяется и управляется на сервере базы данных. Распределение
ввода-вывода между базами данных определяется программным обеспечением
ячейки Exadata и управляется диспетчером ресурсов ввода-вывода (I/O
Resource Manager – IORM). Программное обеспечение ячейки Exadata
гарантирует, что ресурсы ввода-вывода для обмена между базами данных
управляются и должным образом распределены как внутри, так и между
базами данных. В целом, DBRM гарантирует, что каждая база данных
получает выделенное ей количество ресурсов ввода-вывода, а определенные
пользователями SLA выполняются.
Плагин Enterprise Manager для Exadata
Exadata работает с Enterprise Manager, чтобы обеспечить графический
пользовательский интерфейс для мониторинга и среду Exadata. |
Для облегчения ведения мониторинга среды Exadata комплекс был также
интегрирован с Oracle Enterprise Manager (EM) Grid Control. Благодаря
установке плагина для Exadata в существующие системы EM, стало
возможным вести мониторинг статистики и деятельности на сервере
хранения Exadata, а события и предупреждения теперь можно отослать
администратору. Среди преимуществ интеграции системы EM с Exadata можно
назвать:
- Мониторинг среды хранения Oracle Exadata
- Сбор информации о конфигурации среды хранения и ее производительности
- Возможность возбуждать на основании значений порогов режим извещений и предупреждений
- Предоставление обширного набора готовых показателей и отчетов, базирующихся на архивных данных
Все функциональные пользователи были уверены, что с Exadata
будет работать Oracle Enterprise Manager. При использовании
EM-интерфейса пользователи могут легко управлять средой Exadata наряду
с другими средами базы данных Oracle, традиционно используемыми вместе
с Enterprise Manager. АБД может использовать знакомый EM-интерфейс,
чтобы просматривать отчеты, определять состояние системы Exadata и
управлять конфигурациями среды хранения Exadata.
Программное обеспечение Exadata
Как и любое запоминающее устройство, сервер хранения Exadata
представляет собой компьютер с центральными процессорами, оперативной
памятью, шиной, дисками, сетевыми адаптерами (NIC) и другими
компонентами, которые обычно можно найти в сервере. На сервере работает
операционная система (OS), роль которой в случае Exadata исполняет
Oracle Enterprise Linux (OEL) 5.1. Резидент Oracle Storage Server
Software в ячейке Exadata функционирует под управлением OEL. OEL в
ограниченном плане может администрировать и управлять ячейкой Exadata.
Основным компонентом программного обеспечения Exadata, которое
выполняется в ячейке и обеспечивает большую часть сервисов хранения
Exadata, является CELLSRV (Cell Services – сервисы ячейки). Это
многопоточное программное обеспечение, которое используя протокол iDB
взаимодействует с экземпляром базы данных на сервере базы данных и
обслуживает базы данных блоками. Это обеспечивает расширенные
возможности по разгрузке SQL-операторов, предоставляет блоки Oracle в
тех случаях, когда разгрузить SQL-обработку невозможно, и реализует
функциональные возможности управления ресурсами ввода-вывода DBRM,
чтобы измерить пропускную способность средств I/O для различных баз
данных и групп потребителей, издающих команды ввода-вывода.
Два других компонента программного обеспечения Oracle,
выполняющиеся в ячейке, – это сервер управления (Management Server –
MS) и сервер рестарта (Restart Server – RS). MS является первичным
интерфейсом для администрирования, управления и задания запросов о
состоянии ячейки Exadata. Он работает в сотрудничестве с интерфейсом
командной строки ячейки Exadata (Command Line Interface – CLI) и
плагином для EM Exadata, и обеспечивает управление и конфигурирование
автономной ячейки Exadata.
К примеру, для ячейки имеются CLI-команды для конфигурирования
среды хранения, для запроса статистики ввода-вывода и рестарта ячейки.
Также поставляется распределенный CLI, чтобы для облегчения управления
ячейками команды можно было бы посылать сразу в несколько ячеек. Сервер
рестарта (RS) гарантирует непрекращающееся функционирование
программного обеспечения Exadata и сервисов. Он используется для
обновления программного обеспечения Exadata. Кроме того, он
гарантирует, что сервисы хранения запущены и приведены в рабочее
состояние, а когда это потребуется, они будут перезапущены.
Обработка Exadata Smart Scan
Технология Smart Scan переносит сведения о базе данных как можно ближе к аппаратным средствам. |
При использовании традиционных неготовых к работе с iDB устройств
хранения все сведения о базе данных постоянно хранятся на сервере
вместе с программным обеспечением базы данных. Для иллюстрации того,
как в этой архитектуре выполняется обработка запросов SQL, ниже
показано как сканируется таблица.
Рисунок 5: Традиционная модель ввода-вывода и обработки SQL-запросов для базы данных
- Клиент выдает оператор SELECT с предикатом фильтрации и возврата только представляющих интерес строк.
- Ядро базы данных представляет этот запрос в виде файлов и экстентов, содержащих просматриваемую таблицу.
- Ядро базы данных выдает команды ввода-вывода для чтения блоков.
- Все блоки таблицы, к которой был сделан запрос, считываются в память.
- Затем выполняется обработка SQL-запросов на «сырых» блоках для поиска строк, которые удовлетворяют предикату.
- Наконец, найденные строки передаются клиенту.
Как это часто имеет место с большими запросами, предикат
отфильтровывает большинство прочитанных строк. Но тем не менее все
блоки из таблицы должны быть прочитаны, переданы по сети хранения и
скопированы в память. В память считывается намного больше строк, чем
необходимо для выполнения требуемой SQL-операции. При этом генерируется
большое число передач данных, на что расходуется полоса пропускания и
что воздействует на пропускную способность (а значит, и на
производительность) и время ответа приложения.
Интеграция функциональности базы данных на уровне среды
хранения стека базы данных позволяет намного более эффективно выполнять
запросы и другие операции базы данных. Реализация функциональных
возможностей базы данных так близко к аппаратным средствам, насколько
это возможно (в случае Exadata – на уровне дисков), может в
значительной степени ускорить выполнений операций базы данных и
увеличить пропускную способность системы.
При использовании среды хранения Exadata операции с базой
данных обрабатываются намного более эффективно. Запросы, выполняющие
сканирование таблицы, могут быть обработаны непосредственно внутри
комплекса Exadata с использованием только необходимого подмножества
данных, возвращаемых на сервер базы данных. Фильтрация строк,
фильтрация столбцов и некоторая обработка соединений (наряду с другими
функциями) выполняются в ячейках хранения Exadata. Когда это
происходит, на сервер базы данных возвращаются только релевантные и
необходимые данные.
Exadata Smart Scan возвращает только релевантные строки и столбцы
запроса, позволяя лучше использовать полосу пропускания средств
ввода-вывода и увеличивать производительность базы данных. |
На приведенном ниже рисунке 6 показано, как в среде хранения Exadata работает сканирование таблицы.
Рисунок 6: Разгрузка обработки при использовании Smart Scan
- Клиент выдает оператор SELECT с предикатом для фильтрации и возврата только строк, представляющих интерес.
- Ядро базы данных определяет, что среда хранения Exadata
доступна, создает команду iDB, представляющую клиентскую команду SQL, и
посылает ее в среду хранения Exadata.
- Компонент CELLSRV программного обеспечения Exadata
просматривает блоки данных, чтобы определить те строки и столбцы,
которые удовлетворяют полученному SQL-оператору.
- В память считываются только строки и требуемые столбцы, удовлетворяющие предикату.
- Ядро базы данных объединяет результирующие наборы из всех ячеек Exadata.
- И, наконец, строки возвращаются клиенту.
Сканирования Smart Scan прозрачны для приложения, – ни для какого
приложения или SQL-оператора не требуется никаких изменений.
Возвращенные данные являются полностью согласованными и транзакционными
и строго соответствуют функциональности и поведению согласованного
чтения (consistent read) для Oracle Database. Если в процессе такого
«разумного сканирования» ячейка выходит из строя, незаконченные части
Smart Scan прозрачно перенаправляются для завершения в другую ячейку.
Сканирования Smart Scan должным образом обрабатывают сложные внутренние
механизмы Oracle Database, включая: незафиксированные данные и
заблокированные строки, сцепленные (chained) строки, компрессированные
таблицы, обработку национального языка, операции с датами, поиски с
помощью регулярных выражений, материализованные представления и
секционированные таблицы. А SQL EXPLAIN PLAN показывает, когда
используются «разумные сканирования» Exadata.
База данных Oracle и Exadata совместно выполняют различные
SQL-операторы. Перенос обработки SQL-операторов с сервера базы данных
приводит к сокращению числа циклов центрального процессора на сервере и
значительно сокращает потребление полосы пропускания, которая
вследствие такого сокращения становится доступной для лучшего
обслуживания других запросов. SQL-операции выполняются быстрее, и
одновременно может выполняться большее количество таких операций. Это
происходит благодаря уменьшению конкуренции за полосу пропускания
средств ввода-вывода. А сейчас мы посмотрим на различные SQL-операции,
которые получают дополнительные преимущества, благодаря использованию
Exadata.
Фильтрация предикатов с помощью Smart Scan
Exadata при сканировании таблиц осуществляет фильтрацию по
предикатам. На сервер базы данных возвращаются только требуемые строки,
а не все строки таблицы. Например, когда выдается следующий
SQL-оператор, из Exadata в экземпляр базы данных возвращаются только те
строки, для которых дата найма служащих превышает указанную дату.
SELECT FROM employee_table WHERE hire_date > '1-Jan-2003';
Такая возможность возвращать на сервер только релевантные строки
значительно повышает производительность базы данных. Такое повышение
производительности возможно и в тех случаях, когда выдаются и более
сложными запросы. Таким образом, эти же преимущества имеют место и в
случае сложных запросов, типа запросов с подзапросами.
Фильтрация столбцов с помощью Smart Scan
При сканировании таблиц Exadata обеспечивает фильтрацию
столбцов, так называемое проецирование столбцов. На сервер базы данных
возвращаются только требуемые для запроса столбцы, а не все столбцы
таблицы. Например, при исполнении следующего SQL-оператора в ядро базы
данных из Exadata возвращаются только столбцы employee_name и
employee_number.
SELECT employee_name, employee_number FROM employee_table;
Для таблиц со многими столбцами или со столбцами, содержащими
большие объекты (LOB), экономия пропускной способности средств
ввода-вывода может оказаться очень большой. В тех случаях, когда
фильтрация предикатов и столбцов используется вместе, в значительной
степени повышается производительность и сокращается потребление
пропускной способности средств ввода-вывода. Кроме того, фильтрация
столбцов применима также и к индексам, что позволяет еще более повысить
производительность запросов.
Обработка соединений с помощью Smart Scan
Exadata выполняет соединения между большими таблицами и
маленькими справочными таблицами – весьма часто встречающийся сценарий
для хранилищ данных со схемами типа звезды. Такая обработка реализуется
с использованием фильтров Блюма (Bloom Filters), которые являются очень
эффективным вероятностным методом для определения, является ли строка
членом желательного результирующего набора.
Другие виды обработки Exadata Smart Scan
Двумя другими операциями базы данных, которые направляются для
выполнения в Exadata, являются создание инкрементальных резервных копий
баз данных и создание табличных пространств. Скорость и эффективность
создания инкрементальных резервных копий базы данных с помощью Exadata
была значительно увеличена. При использовании среды хранения Exadata
степень детализации отслеживания изменений в базе данных становится
намного более тонкой. При применении Exadata изменения отслеживаются на
уровне индивидуальных блоков Oracle, а не на уровне большой группы
блоков. Это приводит к меньшему потреблению пропускной способности
средств ввода-вывода, используемых для создания резервных копий, и
более быстрому выполнению резервного копирования.
С помощью Exadata операция создания файла также выполняется
намного более эффективно. Так, например, при выполнении команды Create
Tablespace, вместо синхронной обработки каждого блока нового табличного
пространства, форматируемым в памяти сервера и записываемым в среду
хранения, в Exadata посылается команда iDB, инструктирующая комплекс о
том, что необходимо создать табличное пространство и сформатировать
блоки. Использование памяти хоста уменьшается, а ввод-вывод, связанный
с созданием и форматирование блоков табличного пространства,
переносится в среду Exadata. Экономия пропускной способности средств
ввода-вывода для этих операций означает, что размер полосы пропускания,
доступный для других критичных для бизнеса работ, увеличивается.
Управление ресурсами ввода-вывода при работе с Exadata
Управление ресурсами ввода-вывода гарантирует, что самая критичная
работа получает наивысший приоритет, и на нее не будут оказывать
воздействия другие задачами, использующие ресурсы ввода-вывода. |
В традиционной среде хранения, созданной совместно используемой
grid-памятью, трудно расположить по приоритетам работу различных
заданий и пользователей, расходующих пропускную способность I/O
подсистемы хранения. То же самое происходит, когда подсистема хранения
совместно используется (разделяется) несколькими базами данных. В числе
возможностей DBRM (диспетчер ресурсов базы данных) и управления I/O от
Exadata есть способ, чтобы предотвратить ситуацию, когда один класс
работ или одна база данных монополизируют дисковые ресурсы и полосу
пропускания, и гарантировать, что при использовании среды хранения
Exadata будут выполняться определяемые пользователем SLA.
DBRM осуществляет координацию и приоритезацию пропускной
способности I/O, потребляемой при обмене между базами данных и между
различными пользователями и классами работ. Благодаря сильной
интеграции базы данных со средой хранения, Exadata знает о том, какие
типы работы и сколько именно потребляется пропускной способности I/O.
Поэтому пользователи могут использовать систему Exadata для определения
различных типов рабочих нагрузок, назначения приоритетов этим рабочим
нагрузкам, а также гарантирования, что самые критичные рабочие нагрузки
будут самыми приоритетными.
В средах хранилищ данных или в средах со смешанными рабочими
нагрузками можно гарантировать, что различным пользователям и задачам в
базе данных будет выделено относительно правильное количество ресурсов
I/O. Например, можно пожелать выделить 70% ресурсов ввода-вывода
интерактивным пользователям системы и 30% ресурсов ввода-вывода –
пакетным заданиям для генерации отчетов. Для этого достаточно ввести
принудительное использование функциональных возможностей DBRM и
управления I/O в Exadata.
Администратор Exadata может создать план распределения
ресурсов, который определяет, как должны быть приоритезированы запросы
ввода-вывода. Это достигается путем помещения различных типов работ в
сервисные группировки, называющиеся группами потребителей (Consumer
Groups). Группы потребителей определяются множеством атрибутов, включая
имя пользователя, название программы клиента, функцию или отрезок
времени, в течение которого выполнялся запрос. Как только эти группы
потребителей определены, пользователь может установить иерархию, в
соответствии с которой группа потребителей получает приоритет в
распределении ресурсов ввода-вывода, и какая часть I/O ресурсов
отдается каждой группе потребителей. Эта иерархия, определяющая
установление приоритетов I/O ресурсов, может быть применена
одновременно как к операциям внутрибазового обмена данными (то есть, к
операциям, происходящим в пределах базы данных), так и к операциям
межбазового обмена данными (то есть, к операциям, происходящим между
различными базами данных).
Функциональные возможности управления ресурсами ввода-вывода Exadata
позволяют устанавливать SLA и приоритеты для различных классов работ,
чтобы они основывались на бизнес-потребностях, а не соответствовали
стандартному приоритету: первым пришел, первым обслужен. |
В том случае, если среда хранения Exadata совместно используется
между несколькими базами данных, можно расположить по приоритетам
ресурсы ввода-вывода, выделенные каждой базе данных, чтобы не позволить
одной базе данных монополизировать дисковые ресурсы и полосу
пропускания и гарантировать, что выполняются определяемые пользователем
SLA. Например, на схеме ниже вы представлены две базы данных, совместно
использующие среду хранения Exadata.
Рисунок 7: Управление ресурсами ввода-вывода для обмена между базами данных при использовании Exadata
Начнем с того, что бизнес-цели диктуют, что каждая из этих баз
данных имеет относительную большую значимость и важность для
организации. Принято решение, что база данных A должна получать 33% от
всех доступных ресурсов ввода-вывода, а база данных B – 67% ресурсов
I/O. Для того, чтобы гарантировать выделение в каждой базе данных
правильного относительного количества ресурсов I/O различным
пользователям и задачам, должны быть определены различные группы
потребителей.
- Для базы данных A определены две группы потребителей:
- 60% ресурсов ввода-вывода зарезервировано для интерактивной маркетинговой деятельности
- 40% ресурсов ввода-вывода зарезервировано для пакетной маркетинговой деятельности
- Для базы данных B определены три группы потребителей:
- 60% ресурсов ввода-вывода зарезервировано для интерактивной деятельности по сбыту
- 30% ресурсов ввода-вывода зарезервировано для пакетной деятельности по сбыту
- 10% ресурсов ввода-вывода зарезервировано для действий по сбыту с основными клиентами
Эти выделения ресурсов группам потребителей являются относительными
по отношению к полным ресурсам ввода-вывода, выделенных каждой базе
данных.
В сущности, диспетчер ресурсов ввода-вывода Exadata разрешил одну из
проблем, которую не смогла разрешить традиционная технология сред
хранения: создание совместно используемой общедоступной грид-среды
хранения с возможностью балансирования и расположения по приоритетам
работ нескольких баз данных и пользователей, совместно использующих
подсистему хранения. Управление ресурсами ввода-вывода Exadata
гарантирует, что определяемое пользователем SLA будет выполнено для
нескольких баз данных, совместно использующих среду хранения Exadata. А
это гарантирует, что каждая база данных или пользователь получают для
выполнения своих бизнес-целей должную долю дисковой полосы пропускания.
Увеличение производительности при применении Exadata
При работе с хранилищами данных среда хранения Exadata
обеспечивает непревзойденное повышение производительности для типичных
рабочих нагрузок. Полное сканирование таблиц получит произвольно
большое ускорение, благодаря фильтрации Smart Scan и сбалансированным
аппаратным средствам, используемым для хранилищ данных на базе Exadata.
Серверы хранения Exadata обеспечивают такую архитектуру scale-out,
чтобы по мере добавления ячеек росла и полоса пропускания конфигурации.
Вместе с более быстрым межузловым соединением InfiniBand и сокращением
объема передаваемых данных, вызванного переносом части обработки, это
приводит к очень большому повышению производительности. Часто при
использовании среды хранения Exadata в подобных операциях замечается
десятикратное увеличение скорости по сравнению с продуктами для сред
хранения, традиционно используемых с Oracle Database, – но во многих
случаях было достигнуто 50-кратное или даже еще большее убыстрение.
Создание виртуальной среды хранения Exadata
В Exadata предлагается богатый набор изощренных и мощных
возможностей создания виртуальной среды управления средой хранения, в
которых используются сильные стороны Oracle Database, программного
обеспечения Exadata и аппаратных средств Exadata.
Программное обеспечение среды хранения Exadata
Как говорилось ранее, ячейка Exadata – это сервер, на котором
работает Oracle Enterprise Linux, а также предлагаемое Oracle
программное обеспечение Exadata. При первом запуске ячейка загружается,
как и любой другой компьютер, в режим обслуживания среды хранения
Exadata. На первых двух дисководах имеются маленькие разделы LUN,
называемые «системной областью», размером приблизительно 13 Гбайт,
зарезервированные для операционной системы OEL, программного
обеспечения Exadata и метаданных конфигурации. Системная область
содержит данные Oracle Database 11g Automatic Diagnostic Repository
(ADR) и другие метаданные о ячейке Exadata. Администратор не должен
управлять LUN системной области, поскольку она создается автоматически.
Ее контент автоматически зеркалируется на различных физических дисках
для защиты от их отказов и проведения горячей замены дисков. Остальная
часть этих двух дисководов доступна для данных пользователей.
Создание виртуальной среды хранения пользователя Exadata
Компонент Automatic Storage Management (ASM) используется для
управления средой хранения в ячейке Exadata. Управление томами ASM,
страйпинг и сервисы защиты данных делают его оптимальным выбором для
управления томами. ASM обеспечивает защиту данных от отказов диска и
ячейки, наилучшую возможную производительность и чрезвычайно гибкие
опции конфигурирования и реконфигурирования.
Cell Disk (диск ячейки) является виртуальным представлением
физического диска за вычетом системной области LUN (если она имеется).
Cell Disk является одним из ключевых дисковых объектов, которыми
администратор управляет внутри ячейки Exadata. Диск ячейки
представляется отдельным LUN, который создан и управляется
автоматически программным обеспечением Exadata, когда оно обнаруживает
физический диск.
Exadata
и ASM обеспечивают интерактивное динамическое управление томами,
автоматическое выравнивание (балансировку) нагрузки и надежную защиту
данных. |
Диски ячейки могут быть далее виртуализированы в один или более
грид-дисков (Grid Disk). Грид-диски сетки представляют собой дисковый
объект, распределенный для ASM, как, например, диски ASM, чтобы от
имени базы данных управлять пользовательскими данными. Самый простой
случай - когда одному грид-диску соответствует весь диск ячейки. Но
также возможно секционировать диск ячейки по нескольким разделам
грид-диска. Помещение нескольких грид-дисков на диск ячейки позволяет
администратору распределять память по пулам различной
производительности или требованиям доступности. Разделы грид-диска
могут использоваться для выделения "горячих", "теплых" и "холодных"
областей диска ячейки или для разделения баз данных, совместно
использующие диски Exadata. Например, диск ячейки может быть
секционирован таким образом, что один грид-диск хранится на более
высокопроизводительной части физического диска и конфигурирован с
тройным зеркалированием, в то время как второй грид-диск хранится на
менее производительной части диска и используется для архивирования или
хранения резервных копий данных без какого-либо зеркалирования. А
стратегия Information Lifecycle Management (ILM – управление жизненным
циклом информации) может быть реализована с использованием
функциональных возможностей грид-диска.
Рисунок 8: Создание виртуальной среды диска сетки
Следующий ниже пример иллюстрирует соотношение дисков ячейки с грид-дисками в более сложной грид-памяти хранения Exadata.
Как только диски ячейки и грид-диски будут сконфигурированы, для
всей конфигурации Exadata определяются дисковые группы ASM.
Определяются две дисковых группы ASM: одна для всех "горячих"
грид-дисков, а вторая – для всех "холодных" дисков. Все "горячие"
грид-диски помещаются в одну дисковую группу ASM, а все "холодные"
грид-диски – в другую отдельную дисковую группу. Когда в базу данных
загружаются данные, ASM равномерно распределяет данные и операции
ввода-вывода по дисковым группам. Для этих дисковых групп может быть
активизировано ASM-зеркалирование с целью защиты от отказов дисков для
обеих, одной из двух, или для ни одной из дисковых групп.
Зеркалирование может быть включено или выключено независимо для каждой
из дисковых групп.
Рисунок 9: Пример дисковых групп ASM и зеркалирования
И, наконец, для защиты от отказа всей ячейки Exadata
определяются ASM-группы отказа. Группы отказа гарантируют, что
зеркалированные ASM-экстенты помещены в различные ячейки Exadata.
Рисунок 10: Пример ASM-зеркалирования и групп отказа
С Exadata и ASM:
- Конфигурирование дисков ячейки (создание LUN) автоматизируется программным обеспечением Exadata.
- Опционально на физическом диске могут сосуществовать несколько
грид-дисков, чтобы приспособить производительность к потребностям
приложения базы данных или сконструировать стратегию ILM с помощью
Exadata.
- ASM автоматически расщепляет данные базы данных «полосками»
по всем дискам и ячейкам Exadata, чтобы обеспечить сбалансированную
загрузку ввода-вывода и оптимальную производительность.
- Динамическое добавление и удаление томов в ASM активирует
ненарушающее работу ассигнование ячеек и дисков, а также их
освобождение и перераспределение.
- ASM-зеркалирование и функциональные возможности горячей
перестановки ячеек Exadata обеспечивают прозрачную защиту данных и
доступ к ним, невзирая на отказы дисков.
- ASM предусматривает двойное или тройное зеркалирование, чтобы степень защиты данных соответствовала их критичности.
- В Exadata автоматически создаются ASM-группы отказа, чтобы
обеспечить прозрачную защиту данных и доступ к ним, невзирая на отказы
дисков.
Миграция к среде хранения Exadata
Среда хранения Exadata может использоваться в дополнение к массивам
хранения и продуктам, которые традиционно использовались для хранения
баз данных Oracle. Отдельная база данных может частично храниться в
среде хранения Exadata, а частично на традиционных запоминающих
устройствах. Табличные пространства могут храниться в среде хранения
Exadata, в средах других производителей или как комбинация этих двух
возможностей, что является абсолютно прозрачным по отношению к
операциям базы данных и приложениям. Но для того чтобы можно было
воспользоваться всеми преимуществами функциональности Smart Scan среды
хранения Exadata, все табличное пространство должно храниться в среде
Exadata. Такое совместное хранение и сосуществование является основной
характеристикой, делающей возможным онлайновый переход (миграцию) к
среде хранения Exadata.
Для существующей базы данных может быть проведена онлайновая
неразрушающая миграция к среде хранения Exadata, если эта база данных
развернута в среде ASM и использует избыточность ASM. Это достигается
следующим образом:
- Добавьте к существующей дисковой группе ASM грид-диск Exadata.
- Затем ASM автоматически перенастроит данные внутри дисковой
группы, перенося пропорциональное количество данных на недавно
добавленный грид-диск Exadata.
- После этого диск от другого производителя (non-Exadata disk)
должен быть выведен из состава дисковой ASM-группы. В результате ASM
еще раз перенастроит данные, перенося данные с дисков от другого
производителя на другие диски этой дисковой группы.
- Пункты 1-3 повторяются до тех пор, пока вся база данных не будет перенесена в среду хранения Exadata.
Кроме того, миграция может быть совершена с использованием диспетчера
восстановления (RMAN), который позволяет выполнить создание резервных
копий на традиционной среде хранения, а затем восстановить данные в
среде Exadata. Для облегчения миграции может быть также использована
технология Data Guard. Для этого сначала на базе среды хранения Exadata
создается резервная база данных. Для резервной базы данных может
использоваться среда хранения Exadata, а промышленная база данных может
использовать традиционные средства хранения. Путем выполнения быстрого
переключения, на что требуется всего лишь несколько секунд, можно
преобразовать резервную базу данных в промышленную. Все эти подходы
обеспечивают "страховочную сетку" (safety net), поскольку легко и
изящно можно отменить миграцию, если вдруг возникнут непредвиденные
обстоятельства.
Дополнительная защита данных при использовании Exadata
Комплекс Exadata прозрачен для приложения и использует имеющиеся знания Oracle Database и инфраструктуры. |
Комплекс Exadata был спроектирован для включения тех же самых
стандартов высокой доступности (High Availability – HA), которых
заказчики ожидают от продуктов Oracle. При использовании Exadata все
опции и инструментальные средства базы данных работают так же, как они
работали с традиционными (non-Exadata) средами хранения. Пользователи и
АБД используют знакомые им инструментальные средства и имеющиеся у них
знания базы данных Oracle и процедур. При использовании архитектуры
Exadata устраняются все элементы, выход которых из строя приводит к
отказу всей системы. Чтобы гарантировать непрерывную доступность и
защиту данных, в Exadata были включены знакомые опции, типа
зеркалирования, изоляции ошибок и защиты от отказов дисков и ячеек.
Другие характеристики, гарантирующие высокую доступность в пределах
сервера хранения Exadata, описаны ниже.
Встроенная в Exadata Hardware Assisted Resilient Data (HARD)
Инициатива
Oracle Hardware Assisted Resilient Data (HARD) – это комплексная
программа, разработанная для предотвращения нарушений целостности
данных прежде, чем они произойдут. Нарушения целостности данных
происходят очень редко, но когда они случаются, они могут оказать
катастрофическое влияние на базу данных и, следовательно, на весь
бизнес. В комплексе Exadata значительно усилены функциональные
возможности встроенной в него HARD, чтобы обеспечить еще более высокие
уровни защиты и сквозной проверки правильности данных. Комплекс Exadata
выполняет обширную проверку правильности хранящихся в нем данных,
включая контрольные суммы, местоположения блоков, волшебные числа,
головные и хвостовые проверки (head & tail checks), ошибки
выравнивания и т.д. Реализация этих алгоритмов проверки правильности
данных в комплексе Exadata будет препятствовать записи разрушенных
данных на хранение в постоянную память. Кроме того, эти проверки и
защиты предлагаются без ручных операций, которые обычно требуются при
использовании HARD в обычных средах хранения.
Data Guard
Технология Oracle Data Guard – это программная опция Oracle Database,
которая создает, поддерживает и ведет мониторинг одной или нескольких
резервных баз данных, чтобы защитить вашу базу данных от отказов,
бедствий, ошибок и разрушений. Технология Data Guard работает с Exadata
без какой-либо модификации и может использоваться и для промышленных, и
для резервных баз данных. При использовании Active Data Guard со средой
хранения Exadata выполнение запросов и отчетов может быть перенесено с
промышленной базы данных на чрезвычайно быструю резервную базу данных,
с гарантией, что на критичную работу, выполняемую в промышленной базе
данных, не будет оказано никакого воздействия, и при этом будет
обеспечена защита от аварий.
Технология Flashback
В комплексе Exadata технология Oracle Flashback используется для
обеспечения ряда опций для просмотра и восстановления данных назад во
времени. Опция Flashback работает в Exadata точно так же, как она
работает в средах хранения других производителей (non-Exadata). Опции
Flashback предлагают возможность сделать запрос к хранящимся в архиве
данным, выполнить анализ изменений и выполнить самостоятельный ремонт
(«самообслуживание»), чтобы избавиться от логических искажений, причем,
база данных в это время остается в онлайновом режиме. В сущности, со
встроенными опциями Oracle Flashback Exadata позволяет пользователю
иметь нечто подобное функциональным возможностям снэпшотов и
восстанавливать базу данных к состоянию, предшествующему моменту, когда
произошла ошибка.
Диспетчер восстановления (RMAN) и защищенная резервная копия Oracle (OSB)
Чтобы обеспечить эффективное резервное копирование и восстановление баз
данных Oracle, Exadata работает с диспетчером восстановления Oracle
(RMAN) – инструментом на основе командной строки и Enterprise Manager.
Все имеющиеся сценарии RMAN работают без изменений в среде Exadata.
Диспетчер RMAN был спроектирован для тесной работы с сервером,
обеспечивая в процессах резервного копирования и восстановления
обнаружение искажений на уровне блоков. Диспетчер RMAN оптимизирует
производительность и потребление дисковой памяти во время резервного
копирования с помощью мультиплексирования файла и компрессирования
набора резервных копий и интегрируется с Oracle Secure Backup (OSB –
защищенной резервной копией Oracle), а также продуктами управления
носителями производства третьих фирм для резервного копирования на
магнитную ленту.
Заключение
Предприятия сегодня все шире и шире используют для принятия важных
стратегических решений и анализа данных системы анализа
бизнес-информации, чтобы довести до максимума эффективность
эксплуатации. Хотя потребность в обработке все большего количества
данных растет с каждым днем, корпорации сталкиваются с сокращением
своих ИТ-бюджетов, что вынуждает их принимать более трудные решения для
оправдания полной стоимости владения (TCO) используемого программного
обеспечения и оборудования для ИТ. Благодаря включению Exadata в
инфраструктуру ИТ компании смогут:
- Повысить производительность базы данных и быть в состоянии за то же самое время делать намного больше.
- Успешно справляться с ростом, так как по мере добавления
данных и ячеек также добавляется и пропускная способность средств
ввода-вывода.
- Обеспечить доступность и защиту стратегически важных данных.