|
|
|||||||||||||||||||||||||||||
|
Заметки об инсталляции Oracle EssbaseИсточник: oraclebi Андрей Пивоваров
Essbase появился в Oracle c покупкой компании Hyperion в 2007 году. Для тех, кто не знает - это многомерный OLAP сервер. Начиная с Oracle 9.2, ядро OLAP сервера Oracle Express Server встроено в СУБД Oracle и в результате мы имеем т.н. OLAP option. Сам Express Server был прямым конкурентом Essbase. Но, поскольку, встроенная OLAP option и отдельностоящий Essbase все-таки занимают разные технологические ниши, то сейчас рассматривать их как конкурентов, наверное, уже не стоит. Интересная особенность Essbase для меня - это то, что все, кто с ним работают, отзываются почти исключительно в превосходной степени. Я не помню других таких продуктов, которые все хвалят. При этом, те, кто хотят попробовать Essbase на своих данных, даже имеющие опыт работы с Express, OLAP или продуктами конкурентов Oracle, часто спрашивают "Как установить Essbase?", так как выясняется, что это не совсем просто по нескольким причинам. В этой статье я опишу свои впечатления об установке Essbase. Про свои впечатления об OLAP Option 11g я писал тут. Теперь я добрался до инсталляции Oracle Essbase. Тем более, что недавно вышла версия 11.1.1.2. В отличие от OLAP, с Essbase у меня мало практического опыта. Я играл с ним на предустановленных VMware машинах. С одной стороны, какое-то представление о продукте получаешь, но с другой, когда написано что нажимать и в какой последовательности, то ловишь себя на мысли, что не понимаешь как это все устроено и почему нужно нажимать именно сюда. Сам я добрался до установки только сейчас. В связи с этим, я смотрел на установку Essbase почти как новичок, так что, надеюсь эти заметки будут полезны тем, кто пытается разобраться, как это работает. У меня была всего пара дней на то, чтобы разобраться с установкой, поэтому, наверное, я что-то упустил. Более опытные товарищи, надеюсь, поправят. Итак, предположим - я знаю, что такое OLAP. И я знаю, что Essbase - это хороший OLAP сервер. Я хочу установить Essbase и загрузить в него свою базу данных. С чего начать? Основная страница на OTN, посвященная Essbase - тут. Ссылка на документацию тут. Обратите внимание, название не, скажем, Essbase Documentation, а Enterprise Performance Management System Documentation. Дело в том, что Essbase является частью пакета EPM. Меня во время установки интересовал сам сервер Essbase, а не, скажем, приложения для бюджетирования, поэтому я разбираю в этой статье только как устанавливать Essbase. Где скачать? Скачть можно тут или на http://edelivery.oracle.com в разделе Oracle Performance Management System и дальше Oracle Enterprise Performance Management (11.1.1.2.0) Media Pack for Microsoft Windows (32-bit) Бросается в глаза (и это первое препятствие, возникающее перед тем, кто хочет проинсталлировать Essbase) - это обилие файлов архивов. Причем, они достаточно большие по размеру. Все качать и долго и не нужно. Для целей Essbase, я выкачал:
Вообще, описание какой компонент для чего нужен можно прочитать в документации тут. Всего у меня получилось что-то около 8 гигабайт в архивах, которые распаковались в 10. Ставил я все на VMware с Windows XP. Установка В принципе, в интернете есть описания как установить Essbase. Я взял за основу руководство Tim Tow, вернее его вариант в PDF. Руководство у него написано по Essbase 11.1.1.1., но отличия минимальны. Кстати, рекомендую его блог. В общем, руководство хорошее, и я прямо по нему все и устанавливал. Поэтому наверное нет смысла повторять тоже самое, что написано у него. То есть, после того, как вы скачали все файлы, вы берете его руководство и делаете все, что там написано. Отличия будут только в названиях архивов, которые для каждой версии свои. Там много картинок, так что даже если у вас не очень хорошо с английским, думаю все будет понятно. Правда, рекомендую, сначала дочитать эту статью до конца. В руководстве, на мой взгляд, два недостатка:
Комментарии Я пытался запустить инсталлятор по сети - это не удалось. Лечится это мапированием сетевого адреса как локального диска. Для инсталляции нужна база данных, например Oracle. Hyperion-у нужна схема для хранения своего репозитория. Если база есть - хорошо. Если нет, то нужно тоже поставить. В принципе, в руководстве это написано, но лучше знать заранее. Tim Tow пишет, что для того, чтобы запустился Essbase, нужно стартовать его вручную (в его руководстве написано как это сделать) и создать логин и пароль администратора. Мне это не понадобилось, видимо в 11.1.1.2 это исправили.
Почему - то это сложно найти в мануалах. Мне кажется, я один раз нашел, но потом снова потерял где. После установки в меню Start появляется раздел Oracle EPM System, а в нем различные подфолдеры. Бросается в глаза обилие иконок типа Start Administration Services, Stop Administration Services, Start Administration Services Console и проч. В тоже время, если заглянуть в Windows Services, то видно, что там появилось около десятка сервисов. Это все несколько озадачивает. Отгдака тут такая. Действительно, многие компоненты у Hyperion оформлены в виде J2EE сервисов, и плюс к этим сервисам нужны различные консоли, которые с ними взаимодействуют. Например, администрирование Essbase осуществляется при помощи административного сервиса и плюс к нему запускается административная консоль. с консолью работает разработчик. Сервис, видимо, поддерживает одновременную работу нескольких разработчиков. В сервисах Windows стоят те же самые процессы (кроме консолей), только запускающиеся автоматически. В принципе, вы можете их не запускать как сервисы Windows, а запускать вручную. У запуска вручную есть как минимум преимущество - в терминале видно, что происходит и какие возникают ошибки. А ошибки у меня возникли. Началось с того, что как раз эта самая административная консоль не могла подсоединиться к серверу. Вылечилось это так: Я погасил в Windows Services Hyperion Administration Services и запустил его вручную из Start-> Programs-> Oracle EPM System-> Essbase-> Administration Services-> Start Administration Services (Embedded Java Container). И на взлете в терминале сервис сказал, что не может приконнектиться к репозиторию в Oracle. Путем экспериментов выяснилось, что почему-то ему не нравится, что Oracle SID у меня записан как "orcl", а не "ORCL". Я исправил это в файле D:\Hyperion\products\Essbase\eas\server\dao.properties. После этого консоль замечательно взлетела и дала мне приконнектиться. Затем я обнаружил, что есть такая замечательная вещь, как Oracle EPM System-> Foundation Services-> EPM System Diagnostics. Она проверяет работоспособность всех многочисленных сервисов и выдает страницу с диагностикой. В идеале не должно быть ни одной красной строчки на этой странице. Если есть красная строчка, значит что-то недоконфигурено или недозапущено. Например, не стартовал какой-то сервис. Или они стартовали не в том порядке. Например, я выяснил, что у меня сервис Essbase Studio не прописан в Windows Services. Его пришлось запускать вручную. Плюс, экспериментально удалось выяснить, что последовательность запуска сервисов важна. Например сначала надо чтобы запускался Hyperion Foundation Shared Services, а затем сервис консоли администратора. Что я не выяснил пока, можно ли автоматизировать старт всех сервисов так, чтобы они автоматически взлетали в нужном порядке? Пока мне удалось кое-что перезапускать вручную, после чего проверять диагностом, что все работает. В итоге мне удалось добиться, чтобы все работало и красных строчек не было. О компонентах Как я уже упомянул, компонентов много. Меня интересовало, что нужно сделать, чтобы построить свой кубик. Сейчас я знаю как минимум 3 способа это сделать.
Самый низкоуровневый вариант - первый. Собственно, это работа непосредственно со структурой базы в Essbase. Это аналог Analytic Workspace Manager для Oracle OLAP, хотя и мощнее. Если вы запустите ASC, то обнаружите, что там есть несколько примеров баз, которые можно посмотреть как устроены. В отличие от OLAP, в Essbase есть так назыаваемые Applications, которые хранят базы данных. Структура базы данных описывается в так называемом Outline. Примеры, которые вы видите в ASC содержат структуру, но данных там нет. Для того, чтобы заполнить примеры можно почитать этот документ. Если коротко, то суть в том, что нужно встать мышкой на базу данных и по правой кнопке вызвать Load Data. Дальше выбрать Find Data File и Find Rules File. Rules File может отсутствовать. После этого данные будут загружены из текстовых файлов и вы сможете просмотреть их во встроенном просмотровщике (Правая кнопка на базе и Preview Data) В ASC довольно сложно прописать как грузить данные из базы данных, а не текстового файла (ну или мне так показалось, вполне возможно я ошибаюсь, времени было мало). Для того, чтобы грузить данные из баз можно использовать Integration Services или Essbase Studio. Идеология у них похожа, но ES появился в 11 версии Essbase и, возможно, он идет на смену IS. Хотя я попробовал - грузить можно и там и там. Мне показалось, что ES удобнее. Если не углубляться глубоко в работу в ES (для этого, наверное, лучше ее посмотреть самому или почитать мануал), в двух словах как в ней строится работа:
В общем, если не брать некоторые особенности моделирования многомерной структуры в Essbase, инструмент довольно понятный. В качестве примера, я взял схему GLOBAL, которая обычно используется для демонстрации работы Oracle OLAP option и построил на ее данных кубик в Essbase. Что мне не удалось сделать почему-то из ES, это чтобы в кубе, созданным в BSO, сразу были обсчитаны агрегаты. Приходилось после загрузки запускть в ASC обсчет Calculation. Не знаю, баг это или фича. При выборе типа хранения ASO все было нормально. И еще почему-то отказался строиться куб XOLAP. Вернее во время создания выпадает ошибка. (BSO и ASO это различные типы хранения данных в Essbase, а XOLAP - схема, при которой сами данные лежат в реляционке, но пользователь видит их, как будто они в OLAP) Essbase - очень сложный и мощный сервер, поэтому за один день его, конечно, не изучишь. Да и тот кубик, что я построил очень примитивной структуры, на измерениях нет атрибутов и т.д. Но, будем считать, что данные загрузили. Просмотр данных Для просмотра данных тоже существует как минимум несколько вариантов:
Про первый вариант я уже сказал. Smart View - это Addin к Excel, который является основным инструментом для доступа пользователей к данным. Visual Explorer - это лицензированный по OEM очень мощный визуализатор от Tableau Software, который тоже запускается из Excel. Web Analysis - это смотрелка кубов через веб интерфейс, я ее запустил, но посмотрел всего минут 10. Поэтому ничего сказать не могу. Почему-то она требует для запуска Java старой версии и может поэтому запустилась у меня не сразу. Ну и относительно с недавних пор, Oracle BI EE понимает Essbase как источник данных и вы их можете использовать в Answers, аналитических панелях и т.д. Я знаю, что есть еще и другие способы общения с Essbase, например через MDX. Но это я пока посмотреть не успел. Некоторые итоги
По мере того, как буду продвигаться в изучении Essbase, буду писать еще, если будет о чем. Ссылки по теме
|
|