<Insert Picture Here> Машина Баз Данных Oracle Exadata: Опыт реального использования Владимир Дёмкин Oracle СНГ 1 Exadata X3 | Database In-Memory Machine 2012 2009 2010 2008 Warehouse OLTP & VLDB База Данных на Дисках Scale-Up Массивный Флэш Весь в/в в флэш База Данных в Памяти 2 Exadata Scale-Out Platform Полное решение для работы СУБД – Сервера, СХД, Коммуникации Масштабируемые сервера СУБД • 8x 2-socket servers 256 GB DRAM each or • 2x 8-socket servers 2 TB DRAM each Масштабируемые интеллектуальные сервера СХД • 14x 2-socket storage servers • 168 disks – 500TB • 56 Flash PCI cards – 22 TB Flash Дублирование всех компонентов Высокоскоростная сетевая инфрастуктура • InfiniBand internal connectivity ( 40 Gb/sec ) • 10Gb or 1Gb Data Center connectivity 3 Стандартная и Лёгкая в развертывании • Все Машины Баз Данных одинаковы o Готовы к запуску по прибытию o Протестированы o Высокий уровень поддержки o Нет уникальных проблем o Идентичны системам используемым инженерами Oracle • Для существующих приложений OLTP и DW ‒ Все возможности СУБД Oracle за 30 лет ‒ Нет необходимости в сертификации Exadata • Задействует всю экосистему Oracle Развёртывание за дни, а не месяцы ‒ Накопленные знания и опыт специалистов заказчика и партнёров 4 Ключевые возможности 1. Интеллектуальная СХД • Smart Scan обрабатывает запросы • Масштабируемое через Infiniband хранилище 3. Hybrid Columnar Compression uncompressed compress 10-50X + + + 2. Smart PCI Flash Cache • • Укоряет произвольный доступ x30 Повышает скорость сканирований x3 primary DB standby test dev backup 4. I/O Resource Manager (IORM) Smart Scan Exadata Storage Cell Exadata Disk Internal Exadata I/O Queue Parallel Execution IORM OLTP OLTP IO O/S Disk I/O Queue 5. Oracle Database 11g Release 2 Enterprise Edition 5 Exadata X3 Database In-Memory Machine • Трехуровневая модель памяти обеспечивает экстремальную производительность – Автоматически перемещает все активные данные с диска в память 2 or 4 TB DRAM Горячие данные • Память DRAM расширена с 2 до 4 TB для размещения «горячих» данных – От 4TB до 40 TB компрессированных “горячих” данных 22 TB PCI FLASH Активные данные 500 TB DISK Неактивные данные • Флэш-память увеличена в 4-е раза до 22 TB (на стойку) – Интеллектуальный флэш кэш (Smart Flash Cache) – интеграция с СУБД Oracle – С 50TB до 200TB сжатых “активных” данных – 1.5 миллиона произвольных I/O операций чтения в секунду для OLTP • Сравнимо с 1,500 дисками (150 фрэймов) – Скорость сканирования данных SQL - 100 GB/sec для систем отчетности и хранилищ данных (Сравнимо с 1,000 дисками ) 6 Exadata Smart Flash Log Ускорение времени выполнения транзакции По умолчанию( слева) - Нестабильное время - Большие выбросы Время выполнения транзакции Smart Flash Log - 3x быстрей ответ - Выбросы минимальны Включен Smart Flash Log • Использует флэш для Database Logs разумно – Флэш быстр, но имеет временные выбросы – Erase cycles, wear leveling, etc • Smart Flash Log прозрачно использует Флэш путем параллельной записи в дисковый контроллер и на флэш Автоматически и прозрачно – Что закончится быстрей (на Диск или Флэш) • Лучше время ответа и больше производительность • Использует минимальный объем флэш (0.1% от всего объема) 7 АБС ЦФТ-Банк (Платформа 2МСА) Тест для крупного российского банка Exadata X2-8 2 x Восьмипроцессорных БД-сервера • 128 CPU ядер Xeon • 2 TB оперативной памяти • 16 x 10GbE портов • 14 x Exadata Storage Servers (100 ТБ) • 5.3 ТБ Smart Flash Cache • Все внутренние подключения 40Гб/с (3 x InfiniBand Switch ) Сервера Серверов Приложений Обычные сервера 4 x X2470M2 (12 ядер Intel Xeon) + 10 x X4800 (64 ядра Intel Xeon) = --------------------------------------------------• 688 ядер Intel Xeon • Host OS: Vmware ESX 4.1 • Guest OS: RHEL 5.5 • WebSphere Application Server 7.0ND • Суммарно ~ 800 ЦПУ-ядер Количество документов 30 тысяч сессий Сервера СУБД • Задача заказчика: Консолидация баз данных • Тип приложения: OLTP+отчеты • Модель реальной пиковой нагрузки • Реальная база данных • Real Application Clusters • Мощность серверов генерирующих нагрузку Проведено/сек. 18 тысяч сессий Февраль 2011 года Проведено/сек. Создано/сек. Создано/сек. 0 Конкурент №1 20 40 60 Конкурент №2 80 100 Oracle 30 тысяч сессий зачтено только у Oracle 8 АБС ЦФТ-Банк (Платформа 2МСА) Тест Exadata X2-8 + Exalogic Elastic Cloud X2-2 Декабрь 2011 года Февраль 2011 года Сервера СУБД Exadata X2-8 Exadata X2-8 2 x Восьмипроцессорных БД-сервера • 128 CPU ядер Xeon • 2 TB оперативной памяти • 16 x 10GbE портов • 14 x Exadata Storage Servers (100 ТБ) • 5.3 ТБ Smart Flash Cache • Все внутренние подключения 40Гб/с (3 x InfiniBand Switch ) 2 x Восьмипроцессорных БД-сервера • 160 ядер Intel Xeon • 4 TB оперативной памяти • 16 x 10GbE портов • 14 x Exadata Storage Servers (100 ТБ) • 5.3 ТБ Smart Flash Cache • Все внутренние подключения 40Гб/с (3 x InfiniBand Switch ) Сервера Серверов Приложений Exalogic Elastic Cloud X2-2 Обычные сервера 4 x X2470M2 (12 ядер Intel Xeon) + 10 x X4800 (64 ядра Intel Xeon) = --------------------------------------------------• 688 ядер Intel Xeon • Host OS: Vmware ESX 4.1 • Guest OS: RHEL 5.5 • WebSphere Application Server 7.0ND 30 x Двухпроцессорных серверов • 360 ядер Intel Xeon • Oracle Weblogic 11g 9 АБС ЦФТ-Банк (Платформа 2МСА) Exadata + Exalogic vs Exadata + Обычные сервера Времена выполнения операций 3 сек < Время операции < 30 сек Время операции < 3 сек ZALOG.NEW#AUTO PROPERTIES.EDIT#AUTO CL_PRIV.NEW#AUTO ZALOG_BODY.NEW#AUTO RKO.NEW#AUTO_JUR RESOLUTION.NEW#AUTO MAIN_DOCUM.NEW#OUTBALANCE OBJECT_CRED.NEW#AUTO MAIN_DOCUM.DISTR_GASH_DEBTS ZBADD_CARRIERS.NEW#AUTO ZALOG.OPEN_ACC_ZAL MAIN_DOCUM.SBP_REESTR_BK STRESS_ACTIONS.DATA_ADD KRED_PERS.INFO_ABOUT MAIN_DOCUM.DEL_DOC ZALOG.EDIT#AUTO DECL_ON_GET_CRED.NEW_D AC_FIN.ACC_MOVE ZALOG.NEW#AUTO PROPERTIES.EDIT#AUTO CL_PRIV.NEW#AUTO ZALOG_BODY.NEW#AUTO RKO.NEW#AUTO_JUR RESOLUTION.NEW#AUTO MAIN_DOCUM.NEW#OUTBALA OBJECT_CRED.NEW#AUTO MAIN_DOCUM.DISTR_GASH_D 0.00 ZBADD_CARRIERS.NEW#AUTO 10.00 15.00 20.00 25.00 30.00 Время операции > 30 сек ZALOG.OPEN_ACC_ZAL MAIN_DOCUM.SBP_REESTR_BK STRESS_ACTIONS.DATA_ADD KRED_PERS.INFO_ABOUT 0.00 Exadata + Exalogic 5.00 0.50 1.00 1.50 2.00 2.50 Exadata + обычные сервера KRED_CORP.CRED_OPER SIM_LOAN_PORT.AUTO_TO_LOW_COST KRED_PERS.SIGN_UP DECL_ON_GET_CRED.NEW_DECL_1_EXT ZALOG.SIGN_UP 0.00 200.00 400.00 600.00 800.00 1 000.00 1 200.00 10 Exadata – это умная СХД Сервера СУБД Вычисления и интенсивная обработка в памяти – Выполняют сложный процессинг СУБД, такой как объединения, агрегации, аналитика и т.д. Сервера Системы Хранения Exadata (Ячейки) – Умная система хранения, не сервер СУБД – Сканирует таблицы и индексы, отсеивая данные, которые не соответствуют запросу – Ячейки обслуживают данные множества БД разного типа, обеспечивая их консолидацию Интенсивная обработка данных – Простота и надежность 11 Exadata Intelligent Storage Grid Самая масштабируемая обработка данных • Интенсивная обработка данных происхождит на Exadata Storage Grid – Фильтрация строк и столбцов в потоке данных прямо с диска (168 ядер Intel) – Масштабирует параллельное выполнение на уровне системы хранения исключает узкие места – Пример: Сколько в прошлом квартале было продано продукта X • Exadata Storage Читает 10ТБ с диска • Exadata Storage Фильтрует строки по Продукту и Дате • Посылает 100ГБ удовлетворяющих данных на сервера БД – Самая высокая полоса пропускания • 25 ГБ/сек с диска, 75 ГБ/сек с флэш (без компрессии!) • Миллиарды строк в секунду 12 Exadata Storage Index Прозрачно исключает ненужные чтения Таблица A B C Индексы • Exadata Storage Index – структуры в памяти, которые хранят информацию о распределении данных между блоками данных. D 1 3 5 Min B = 1 Max B =5 5 8 3 Min B = 3 Max B =8 • Хранит МИН и МАКС значения для каждой колонки • Обычно одна запись в индексе для каждого Мб диска • Исключает ввод-вывод для тех дисков, где МИН и МАКС не соответствуют условию “where” • Полностью автоматически и прозрачно Select * from Table where B<2 - Соответствует только первый набор 13 Крупный российский БАНК Отчетная БД процессинга W4 • Exadata X2-8 модель 2010 года • Объем БД ~25ТБ Длительность отчетов в минутах 0 100 200 300 400 500 X2-8 (2010) 600 700 800 900 1000 IBM 14 Крупный российский БАНК Отчетная БД процессинга W4 • ½ Oracle Super Cluster • Объем БД ~16ТБ • Компрессия • Таблица DOC 1,5TB > 220GB Длительность отчетов в часах (x6.7) 0.00 10.00 20.00 30.00 40.00 50.00 1/2 SSC 60.00 70.00 80.00 90.00 100.00 IBM 780 15 Гибридное колоночное сжатие Выше компрессия – ниже стоимость • Данные группируются по колонкам и затем сжимаются • Традиционные алгоритмы сжатия • Кардинальное улучшение степени сжатия • Query Mode для хранилищ данных • Оптимизированы для ускорения доступа к данным • 10X сжатие - типично • Время сканирования уменьшается соответственно • Archival Mode для редко используемых данных • Оптимизировано для уменьшения занимаемо места • Типично сжатие в 15-50 раз • Помощник по сжатию • PL/SQL пакет DBMS_COMPRESSION 16 Крупный ОПЕРАТОР мобильной связи размер ИМЕЕТ ЗНАЧЕНИЕ! Описание задачи: • Огромный объём данных; • Оценочный рост ~x3 в год; • Данные >1 мес. уже сжаты BASIC компрессией (в среднем x1.5); • Время запросов меньше в 2-3 раза нормативов; Проблемы заказчика: • Беспокойство за будущую производительность в связи с быстрым ростом данных ; • “Где разместить такой огромный объем?” Результаты испытаний: • Размер табличных данных: 11.3TБ/1.3TБ ~ x8.4 • Общий размер БД: 18TБ/2.7TБ ~ x6.6 Прогноз увеличения размера БД: Exadata vs Обычного дискового массива Smart Scans + HCC + Indexes&Smart Flash Cache -----------------------------------------Среднее время запросов в 25 раз меньше норматива 17 Производительность Exadata Flash Архитектура Массивов Хранения ограничивает производительность Flash Производительность запроса 100 Гигабайты в Секунду • Exadata масштабируется за счёт: – True Scale-Out – InfiniBand – Smart Storage 4 to 13 Storage Array Exadata 18 Подтверждение концепции Пример из тестирования аналитики компании PROGNOZ • Простой запрос из одной таблицы без агрегации и аналитики Exadata x3-2 Half Rack • 4 x X3-2 Database Server (16 x CPU cores); • 7 x Exadata Storage Server; • 22.5 ТБ полезного дискового пространства; • 11.2 ТБ Flash Cache SELECT a.* FROM (SELECT a.DAT,a.dec,a.NC,a.FLOW,a.PAR,a.VALUE FROM EUROSTAT a) a WHERE ((a.FLOW = 1)) AND (( a.DEC IN (1,2,3,4,5,6,7,8,9,10,11,17,18,30,32,38,46,53,54,55,60,61,63,64,66,68,91,600))) AND (( a.PAR = '0001’)) AND (( a.NC = '2819S999’)) AND (( a.DAT IN (TO_DATE('2008-01-01','YYYY-MM-DD'), TO_DATE('2008-02-01','YYYY-MM-DD'), TO_DATE('2008-03-01','YYYY-MM-DD'), TO_DATE('2008-04-01','YYYY-MM-DD'), TO_DATE('2008-05-01','YYYY-MM-DD'), TO_DATE('2008-06-01','YYYY-MM-DD'), TO_DATE('2008-07-01','YYYY-MM-DD'), TO_DATE('2008-08-01','YYYY-MM-DD'), TO_DATE('2008-09-01','YYYY-MM-DD'), TO_DATE('2008-10-01','YYYY-MM-DD'), TO_DATE('2008-11-01','YYYY-MM-DD'), TO_DATE('2008-12-01','YYYY-MM-DD')) )) В таблице всего Запрос обрабатывает Данных > 1Терабайта > 350 ГБ Строк ~ 24 миллиарда ~ 8 миллиардов 19 Smart Scans: никакой магии! Обработка данных на уровне СХД ликвидирует узкие места в каналах • Exadata X3-2 (половина) • Средняя скорость сканирования для этого SQL составила >35GB/s*** Массивы с SSD смогут также быстро? 35,8 GB/s Для достижения такой скорости на обычном дисковом массиве с SSD потребуется 45 x 8Gb/s FC адаптеров; А как на счёт конкурентных SQL? При выполнении этого запроса не на Exadata потребуется: Дисковый массив на SSD ***Средняя скорость ~ (длительность SQL)/(Объем данных), размер блока 32K <> Макс. возможной скорости 20 Та же система, но без Smart Scan Ищем узкие места в традиционной системе для СУБД 1 x X3-2 Database Server (16 x CPU cores) + 7 x Exadata Storage Server X3-2 1 x InfiniBand 4X QDR ~ 4 x 8Gb/s FC адаптера Отключаем Smart Scan > alter system set cell_offload_processing = false; Данные в Smart Flash Cache Параллелизм Время (с) GB/s Не хватает выделенных CPU 1 390 0.92 2 200 1.79 4 117 3.06 Достигнута максимальная пропускная способность 8 109 3.28 16 109 3.28 32 109 3.28 Когда сканируются диски при параллелизме x32 – 110 сек. Быстрые flash-носители не имеют смысла! 21 Та же система, но без Smart Scan - 2 Ищем узкие места в традиционной системе для СУБД 4 x X3-2 Database Server (16 x CPU cores) + 7 x Exadata Storage Server X3-2 4 x InfiniBand 4X QDR ~ 16 x 8Gb/s FC адаптера Максимальная скорость достигается при параллелизме x128 • Данные читаются с Flash Cache – 32 секунды • Данные читаются с дисков – 36 секунд • Эффект быстрых носителей минимален! С использованием Smart Scan: 1 x Database Server при параллелизме x8 – 10 секунд Без Smart Scan такую скорость достигнуть практически невозможно! 22 Результат теста для Half Rack x3-2 Скорость сканирования в БД для аналитики “Прогноз” • С использованием Smart Scans (1 узел, параллельность x8): 35.8 GB/sec; • Без использования Smart Scans (4 узла, параллельность x256): 11.2 GB/sec; – Соответствует комплексам c дисковой подсистемой Hi-End класса; ***Средняя скорость ~ (длительность SQL)/(Объем данных), размер блока 32K <> Макс. возможной скорости 23 Построена для оптимизации I/O Баз Данных Разработана для исключения узких мест Несбалансированная конфигурация: возможная эффективность < 20% Database CPUs Memory HBAs Switches Controllers Disks Controllers Disks Конфигурация Exadata: Возможна эффективность ~ 100% Database CPUs Memory HBAs Switches 24 Хорошо, когда есть выбор лучшего! У СУБД Oracle на Exadata есть выбор способа решения задачи • Сканирование данных через Smart Scans – Выбор степени параллельности в зависимости от объемов данных и сложности задачи в SQL (максимально возможный параллелизм не всегда эффективен); – Выбор степени параллельности в зависимости от занятости системы; • Доступ через индексы – Разные типы индексов; – Автоматически сохраняются в Smart Flash Cache; – Автоматически сохраняются в кэше СУБД; • Выбор компрессии данных в зависимости от целей – Быстрая загрузка, быстрый доступ, максимальное сжатие 25 Хорошо, когда есть выбор лучшего! А можно сделать еще быстрей? • Тестовый запрос обрабатывает ~ 6 миллиардов строк; • Возвращает 673 строки; Построение Bitmap индексов позволяет выполнять SQL в диапазоне времени от 0.1 до 3 секунд; Зависит от степени кэшированности данных; 26 Крупный российский БАНК Сравнение скорости выявление перечня скомпрометированных карт 500 450 Скорость выполнения запроса, Way 4 (prod) on-line, мин 400 Время, мин 350 300 Скорость выполнения запроса, Way 4 (RPT) обновление данных ежемесячно, мин 250 200 150 Скорость выполнения запроса, ExaData, мин 100 50 0 Запрос по одному CPP ID за период не более 1дня Запрос по нескольким CPP ID за период от 2 дней до месяца Запрос по одному CPP ID за период от 2нед. до 1 мес. Запрос по слову в названии ТСП за период от 2нед. до 1 мес 27 Начать с малого и расти Варианты наращивания ресурсов Симметричное наращивание: • Мощностей серверов СУБД • Количества ячеек Exadata • Пропускной способности каналов связи Infiniband Full Rack Half Rack Quarter Rack Eighth Rack Уникальная архитектура обеспечивает оптимальный показатель цена/производительность 28 Прозрачное обновление и расширение Пример X3-2 Half to Full Upgrade in 2012 X2-2 Qtr to Half Upgrade in 2011 • Единая Машина баз данных может содержать сервера различных поколений • Конфигурации БД и кластеров могут быть развернуты на оборудовании различных поколений • Новое ПО может работать на оборудовании предыдущих поколений V2 Initial Quarter Rack deployed in 2010 29 Oracle Exadata vs традиционный поход O/S Database Традиционная архитектура VM Database O/S VM CPUs Hypervisor Network Memory HBAs Network & Switches SAN Controllers Disks SSD Exadata – Создана для максимальной производительности PCIe Smart Flash Cache Database O/S Memory 40Gb Infiniband Storage Servers Disks OEM 12c Cloud Control Storage Server Software Oracle Enterprise Manager 12c Cloud Control and Platinum Services 30 Райкин -Кто сшил костюм? - Мы! - Кто это мы? - Специализация у нас узкая: один пришивает карман, другой – проймочку, один – рукав. Я лично пришиваю пуговицы. К пуговицам претензии есть? - К пуговицам претензий нет. Пришиты насмерть, не оторвешь. Кто сшил костюм? Кто вместо штанов мне рукава пришил? Кто вместо рукавов мне штаны пришпандорил? Кто это сделал?! А. Райкин, «Ателье» 31 Если “ухнуло”, с кого спрашивать? Oracle 11g R2 Oracle 11g R2 IBM p795 256 cores @4Ghz 2TB памяти AIX 7.1.0.15 TL00 Veritas Cluster 5.1 Veritas Volume Manager 5.1 Oracle Exadata X3-8 160 cores @3Ghz 4Tbyte memory UEK/Solaris 11 Oracle Real Applications Cluster Oracle ASM HP XP P95000 high-end storage array Fibre Channel Synchronous replication via HP XP Continuous Access Oracle Exadata Storage Servers Oracle Data Guard replication 32 Потенциальные преимущества в администрировании Сокращение объемов работ до 30% ПО Oracle СХД • Наибольшее сокращение относится к ОС, СХД, сетевым компонентам ОС • Управление ПО (СУБД, FMW, приложений) приблизительно тоже Железо & Сеть • Администратор БД ведущий ресурс для Exadata. Традиционные Exadata • Общее сокращение административной работы для Интегрированных Систем по сравнению с традиционными системами для Oracle. • Системные администраторы ведущие ресурсы для Exalogic 0 20 40 60 80 100 Единицы административной работы * * UK Manageability Solutions Survey 2011 33 Platinum Support for Engineered Systems ORACLE PLATINUM SERVICES Complete. Integrated. Proactive. Бесплатно Поддержка 24/7 Доступно только для Engineered Systems Специализированная команда для Инженеры Oracle проводят Engineered Systems 2-часовое прибытие в ЦОД в случае сбоя HW Обновления ПО всех уровней Engineered Systems Доступ к порталу My Oracle Support "Phone home" aавтоматическое создание запросы на поддержку (ASR) ежеквартальные обновления ПО • Для сертифицированных конфигураций с удаленным мониторингом Поддержка быстрей и лучше: 5 мин. Оповещение о сбое 15 мин. Восстановление или эскалация в разработку 30 мин. Совместное решение проблемы с разработчиками 34 Oracle Exadata Database Machine Одна архитектура для • Хранилищ данных • Транзакционной обработки • Консолидации Баз Данных Exadata является для Oracle стратегической платформой для ВСЕХ типов нагрузки баз данных 35 Причины, по которым наши клиенты выбирают Exadata Подготовка к росту Делать быстрей качественные решения Больше дела – меньше затрат Сокращение стоимости ЦОД Выполнять быстрей Проще поддержка Сокращение расходов Быстрей развертывание 36 37