BI EE &Essbase &Exadata &Exalytics &TimesTen Андрей Пивоваров on 04 Oct 2011 05:02 pm
Oracle Exalytics – Business Intelligence Machine
Позавчера, 2 октября на Oracle OpenWorld 2011 был анонсирован (и даже показан) новый аппаратно-программный комплекс Oracle Exalytics – машина для Business Intelligence.
Эта машина продолжает серию новых аппаратно-программных комплексов, которая началась с Exadata. Теперь их уже 6 – Exadata, Exalogic, Oracle Database Appliance, Oracle SPARC SuperCluster, Exalytics и вчера еще объявили об Oracle Big Data Appliance. Про Big Data Appliance я напишу в следующий раз, а пока про Exalytics.
Итак, на этот раз разработчики обратились к теме BI.
Из чего она состоит? В железной основе лежит 4 десятиядерных процессора Intel Xeon E7-4800 и 1 терабайт оперативной памяти. Терабайт это много. В FullRack Exadata X2-8 их 2.
По части софта в этой машине установлены:
- Oracle Business Intelligence
- Oracle TimesTen
- Oracle Essbase
Примечательно, что этим летом мы проводили семинар по связке в том числе BI и TimesTen. И, как оказалось, мы угадали с направлением.
Все в Exalytics сделано так, чтобы оперативная память использовалась по максимуму, отсюда большая производительность комплекса в целом.
Oracle TimesTen – это очень быстрая in-memory СУБД. Интересно, что судя по описанию Exalytics, в TimesTen for Exalytics используется колоночная компрессия. В названии нет слова \”Hybrid\”, так что, наверное, это немного другая компрессия, чем в Exadata. Благодаря колоночной компрессии, в базу данных TimesTen можно поместить гораздо больше, чем терабайт данных, как минимум несколько терабайт.
Тут, конечно, возникает интересный вопрос – будет ли доступна компрессия в TimesTen не на Exalytics?
Кроме того, TimesTen оптимизирован для выполнения аналитических запросов. Та версия TimesTen, которая доступна сейчас, не так хорошо работает с сложными аналитическими запросами по сравнению с простыми типа чтения или записи по одной таблице. Видимо, разработчики поработали над улучшением работы оптимизатора и алгоритмов.
Oracle Essbase также доработан для работы с большими объемами оперативной памяти, то есть кубы в каком-то смысле могут храниться прямо в памяти. Детали процесса пока не ясны.
Самое интересное, конечно, как эти компоненты работают все вместе.
В документе упоминаются четыре режима:
- In-Memory Data Replication
- In-Memory Adaptive Data Mart
- In-Memory Intelligent Result Cache
- In-Memory Cubes
В случае In-Memory Data Replication данные из хранилища закачиваются в TimesTen и дальше BI строит запросы уже по данным в TimesTen. Пока непонятно как это происходит и где настраивается, а также какие есть ограничения.
In-Memory Adaptive Data Mart – самый интересный режим, при котором в TimesTen автоматически создается витрина на основе часто запрашиваемых данных. Опять же, как это работает из документа пока не ясно.
In-Memory Intelligent Result Cache – режим, по описанию очень похожий на то, что в BI есть и сейчас – результаты запросов кешируются в памяти и следующий запрос может быть отработан уже по кешу.
In-Memory Cube – это как раз оптимизированный режим работы Essbase, когда кубы находятся в памяти. При этом подчеркивается, что поддерживается write-back, что должно быть очень полезно для план-факт и what-if анализа.
В качестве BI используется не текущая, а следующая версия Oracle BI EE, в которую внесены некоторые новые возможности, такие как множественные графики в одном отчете. Вчера, во время выступления Томаса Куриана была показана красивая демонстрация работы Exalytics. Запись пока не выложили, но по идее она будет доступна на этой странице. Посмотрите, это правда красиво. Во время демонстрации показывали, как мгновенно отрабатываются запросы по таблице из примерно миллиарда записей. Даже не важно много это или мало, просто интересно посмотреть как это выглядит.
Документ пестрит множеством цифр с ускорением производительности разных операций. Что не удивительно, если многие операции выполняются в оперативной памяти.
Ну и особенно подчеркивается, что Exalytics отлично работает с Exadata, благодаря соединению Infinband и специальных оптимизаций кодогенерации BI для Exadata.
В общем, решение интересное. Хранилища огромного числа заказчиков в России меньше 1 терабайта. А если еще использовать компрессию, то и вообще перспективы получаются очень хорошими.
Конечно, многие вопросы не прояснены. Например, как производится синхронизация изменений в хранилище и в Exalytics. Непонятно что и как делается вручную, а что в автоматическом режиме. Ну, думаю, скоро это станет яснее.
Ссылки по теме:
Страница, посвященная Exalytics
Довольно большой документ по Exalytics.
Пресс-релиз
Трансляции с OOW, в том числе и прямые идут на этой странице и на странице на YouTube
Читайте также:
- Oracle OpenWorld 2012. Дни 2 и 3
- Записи весеннего цикла вебсеминаров
- Об этом блоге
- Заметки об Oracle OpenWorld 2013. Часть 1.
- Про R, Advanced Analytics и другие новости
on 11 Oct 2011 at 3:54 pm 1.AlVolny said …
Больше всего меня интересовал In-Memory Essbase в базовой версии Essbase (не Essbase for Exalytics)- давно ожидаемый функционал кэширования подкубов (срезов) и особенно top-агрегатов (в чем-то аналог KEEP/RECYCLE POOL в Oracle DB).
В кулуарах я задал прямой вопрос Paul Rodwick, Product manager BI. Ответ был уклончивым и размытым – “мы думаем над включением этого функционала”, но в какую версию Essbase и в какие сроки – не сказал.
Вероятно это совсем не ближайшее будущее, т.к. в RoadMaр по Essbase (на ближайший год) этот функционал не включен.
Зато включены 2 очень важных пункта:
– OEM for Essbase (наконец-то появится возможность мониторить и управлять инстансом и сессиями Essbase через OEM).
– Active-Passive high availability clustering (расширение возможностей уже известного механизма программной кластеризации Essbase, Active-Passive существовал и ранее, но теперь будет реализован не через внешнее ПО синхронизации, а собственным модулем).
on 11 Oct 2011 at 4:20 pm 2.AlVolny said …
Вообще Exalytics оставляет двоякое впечатление.
Не имея своего долгосрочного storage (типа “умных” ячеек Exadata), берет практически новыми версиями софта.
Яркий пример – новый функционал:
– In-Memory Essbase (MOLAP)
– In-Memory Oracle BI (ROLAP, HOLAP)
Первый – это просто новый функционал Essbase for Exalytics, который не требует какого-то специального железа для своей работы (просто возможность закреплять в памяти нужные разработчику “подкубы” Essbase, типа закрепленния секции таблицы в KEEP/RECYCLE POOL в СУБД Oracle).
Второй – это симбиоз СУБД Oracle + TimesTen + Oracle BIEE. Причем уже сейчас есть масса методик прозрачного кэширования таблиц, секций или частей таблиц СУБД Oracle в TimesTen, с соответствующим доступом к “кэшированным обьектам в памяти” из Oracle BIEE.
Меня беспокоит перспектива разделения разработок ПО направления BI на две части (“базовое П.О.” и “П.О. for Exalytics”).
Причем с неясными перспективами включения нового функционала в базовые версии Oracle BI EE и Essbase.
on 11 Oct 2011 at 5:22 pm 3.Андрей Пивоваров said …
Алексей, спасибо за ценные комменты. Меня на самом деле тоже интересует, будет ли распадание на две линии – Exa-не Exa. Поживем-увидим.
Тут, кстати, в ветке про BI пиво народ интересуется, когда появится твоя презентация :)
on 15 Oct 2011 at 8:56 pm 4.AlVolny said …
Андрей, в понедельник добавлю комментарии, во вторник – среду пришлю тебе.
Спасибо за интерес к нашему решению :)