Feed on Posts or Comments

BI EE &BI SE ONE &Ликбез &Общее Андрей Пивоваров on 31 Jan 2008 10:35 pm

Зачем нужны платформы Business Intelligence?

Меня кто-то в комментариях спросил о том, что я думаю о других платформах BI и, в том числе, об Open Source. Хотя, обычно я, как представитель Oracle, и в силу других причин, стараюсь не влезать в дискуссии типа что на рынке лучше или хуже, тем не менее, подумалось, что вопрос-то, можно поставить гораздо шире. А зачем вообще нужны эти все платформы бизнес-анализа, если можно написать аналитику самим или взять опенсорс?

Так что, я решил поделиться своими личными наблюдениями. Благо в области OLAP, DWH. BI, репортринга и проч., я работаю, страшно подумать, с 1996 года.

Итак. Достаточно часто встречается вопрос \”А почему Oracle хочет такие большие деньги за BI?\” Думаю, вопрос встречается не только в контексте Oracle.

Действительно. Если мне лично нужно посчитать какую то аналитику по базе, да взять, хотя бы, ту же статистику посещения сайта, я не буду брать никакую BI платформу. Я возьму SQL и напишу пяток-десяток запросов, чтобы узнать то, что меня интересует. Но это если нужно лично мне.

Если мне нужно предоставлять результаты каких-то запросов нескольким \”бизнес пользователям\”, то часто тоже все можно решить, написав за полдня приложеньице на Delphi или даже настроить Excel на вытягивание данных из базы. Что называется: дешево и сердито.

Если же количество пользователей и разнообразие требований растет, то и тут можно обойтись самописным производством.

Приведу пример из собственного опыта. Довольно давно, еще до Oracle, был у меня проект. Хранилище и BI. Там было много условий со стороны заказчика и одно из них было – обязательно гибкий веб-интерфейс.

Это сейчас уже сложнее найти платформу без веб-интерфейса, чем с ним. А тогда эта заявка была довольно экзотичной. Мы показали несколько возможных пакетов разных вендоров, но все они были или без веб-интерфейса или с очень негибким веб-интерфейсом. Заказчик стоял твердо на веб-интерфейсе, так как у кого-то из конкурентов он был (самописный), – вот хотим такой же.

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

Получилось, что и тут обошлись без больших вендоров.

Забавно, что потом у заказчика сменился руководитель проекта, а новому веб-интерфейс оказался совершенно не принципиален.

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

Я думаю, менеджеры проектов часто сталкиваются с такими ситуациями, когда архитектура изначально прописывается кусочно, потому что перспективы неясны и т.д. А потом приходится затевать новый проект с новой архитектурой.

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

Какие тут можно извлечь выводы?

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

Все это бывает при любой разработке, BI тут не исключение.

Является ли панацеей взять BI платформу от крупного вендора?

Посмотрим.

У готовых платформ есть свои недостатки – функциональные ограничения и относительно высокая цена.

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

Еще надо помнить, что BI – это то, с чем работает конечный, дикий пользователь. Почему это важно? Если в СУБД нет какого-то функционала, то его можно эмулировать, запрограммировать средствами СУБД или в приложении так, что конечный пользователь и не будет знать об этом.

В BI все не так. Если BI инструмент не может сделать, чтобы линия чертилась шириной два миллиметра и пунктиром, или вам нужно получить отчет определенной формы, а такой формы нет, но пользователю это позарез надо, то вы никак этого не сможете добиться. Если повезет, то вы можете переубедить пользователя, внушить, что ему это не нужно, и он забудет об этом.
А вот если вы сталкиваетесь с багом, который не устранен, но для которого есть обходной путь, то в случае СУБД вы можете его обойти опять же так, что пользователь об этом не узнает. А в BI глупо говорить пользователю, что, мол, на этой форме ни в коем случае не нажимайте эту кнопку, если в этом поле значение меньше нуля. В лучшем случае вас не поймут, а в худшем постоянно будут нарываться на этот баг и трепать вам нервы.

Теперь про цены.

Чем отличаются две BI платформы между собой? Правильно, разным функционалом или его отстутствием.

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

Большие BI платформы обычно содержат море возможностей, многие из которых вы никогда использовать не будете. Но в случае, если изменились требования, и понадобилась какая-нибудь интеграция с другими приложениями или вам нужно
чтобы отныне с системой работало не 10 пользователей, а 1000, или, чтобы система начала работать не только с хранилищем, но и \”на лету\” с OLTP системой и т.д. – с большой платформой вы с большей вероятностью реализуете это быстро. В самописной придется программировать.

То есть, когда вы платите за BI платформу вы платите:

1. За то, чтобы не разрабатывать это самим. Вы можете разрабатывать это долго или вообще никогда не закончить разработку, если у вас нет специалистов нужной квалификации.

2. Вы платите за страховку от риска увольнения программистов.

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

И вот в эту дихотомию \”собственная разработка – готовая платформа\” вклинивается Open Source.

По идее он берет все лучшее из двух миров:

  • Бесплатен.
  • Код открыт – можно в случае необходимости дописать то, что нужно.
  • Богатый функционал, который пишется \”всем миром\”

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

Теперь про программирование. BI платформа в силу могучего функционала – это очень большое количество кода. Готовы ли вы выделить программистов и потратить несколько месяцев на изучение чужого кода для того, чтобы дописать какую-то мелочь, которая может не так уж и важна? Учтите, эти несколько месяцев программисты будут получать зарплату.

Вот и получается, что на текущий момент, использовать open source bi имеет смысл, если вы готовы плотно влезть в разработку. А зачем разрабатывать на основе чужого кода, когда проще тогда уж иметь свое?

Надо помнить еще вот о чем. И большие платформы и опенсорс приходят с Запада. А там раскладка по ЗП и другим затратам несколько другая, чем, скажем, в России. То, на чем можно сэкономить в Америке, может не иметь никакого смысла тут.

Окей. Наведем порядок:

1. Я не говорю о том, что собственная разработка это плохо. Все большие BI платформы когда-то начинались как собственные разработки. Проблема в том, что очень мало кому удается создать что-то большое и работоспособное.

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

3. Я не говорю о том, что большие BI платформы это всегда хорошо. Но я думаю, что у вас гораздо больше шансов на успех проекта, если вы используете что-то, что отлаживается миллионами пользователями по всему миру годами, а не то, с чем столкнулись только ваши собственные пользователи.

Да и цена – дело такое. Например, Oracle BI SE ONE – начинается от 5000 долларов по прайслисту. Не думаю, что какая-либо своя разработка или разработка на основе опенсорса обойдется вам дешевле…

Еще раз повторюсь, что все, что написано выше – только мое мнение.
Готов выслушать замечания, если они есть.

Продолжение тут.

__________________________________
Читайте также:
А еще можно почитать мой твиттер @apivovarov

13 Responses to “Зачем нужны платформы Business Intelligence?”

  1. on 01 Feb 2008 at 11:15 am 1.DimaR said …

    Все правильно, но еще стоит добавить, если начинаеш разбираться с BI одного крупного вендора, делаеш макет, ковыряеш (несколько лет), покупаеш решение, а потом этот вендор прикупает конкурента в этой области, и забивает на свой продукт, перестает развивать его, исправлять, начинает продвигать новое, а это новое, например, не совсем то что тебе нужно …

    ps. о чем это я? :)

  2. on 01 Feb 2008 at 12:41 pm 2.daemon-s said …

    Отличная статья, спасибо. У меня была мысль написать что-то в этом духе, но, очевидно, у вас и опыт больше и разнообразнее, и вышло интересно. Так что, вместо того, чтобы писать, я на своем блоге просто сошлюсь на вас :)

    Интересно было бы составить *реальную* таблицу сравнения возможностей продуктов BI (тут составы продуктов отличаются, но можно привести к общему знаменателю). Такой таблицей смогут пользоваться люди, которые стоят перед выбором вендора. Ведь, все же, часто бывает, когда решения принимаются не по связям и откатам. Те сравнения, которые я видел до этого, практически все страдают от размытости и, зачастую, содержат ошибки. Выбор продукта по ним сродни тыканья пальцем в небо. Помню, когда компания, в которой я работал, отбирала продукты для внедрения в этой сфере, я составлял вопросник. Потом с ним ходил по презентациям вендоров и заполнял ответы. Прошло много лет, я получил существенный опыт работы в 2-х из них, разобрался в их архитектуре. Еще один продукт посмотрел краем глаза. И теперь понимаю, что спрашивать надо было, большей частью, не о том…

  3. on 01 Feb 2008 at 1:19 pm 3.Андрей Пивоваров said …

    DimaR,

    К сожалению или к счастью, мы живем в динамично меняющемся IT мире :) Посмотри, почти никто из крупных вендоров не избежал сильных потрясений.

    Наверное тут можно сказать только то, что BI системы обычно (ну хорошо, по моему опыту) переживают радикальные перестройки каждые 3-5 лет. Меняется платформа, постановка, бизнес заказчика и т.п.

    А, поскольку, процессы слияния-поглощения-адаптации тоже довольно медленно идут, то получается, что через три года ты переделываешь систему, но плюс на другой платформе :)

    А риски всегда есть. За деньги можно купить не 100% защиту от рисков, а только уменьшить вероятность наступления рискового события.

    Но, в целом, я с тобой согласен, мало приятного :)

  4. on 01 Feb 2008 at 1:25 pm 4.Андрей Пивоваров said …

    daemon-s,

    Спасибо! Ссылайтесь :)

    Мне кажется, что “реальную” таблицу составить достаточно сложно. Это сложно сделать и в случае СУБД, хотя там все-таки попроще. Есть фича или нет. Да и то, все неоднозначно, бывают архитектурные особенности, которые в одной плоскости сравнивать сложно.

    А с BI платформами все еще сложнее. Так как платформа – это набор разнных продуктов, иногда связанных (по метадынным), иногда не связанных.
    И получается сравнение кучи продуктов одного вендора с кучей другого вендора. Что сложно сделать. Можно сравнить только подпродукты, находящиеся в одной нише.

    Вообще задача “реального” сравнения BI платформ мне напоминает задачу “реального” сравнения женских платьев. :)

  5. on 01 Feb 2008 at 3:08 pm 5.nvoynov said …

    Open Source опен Сорцу рознь. Но на рынке enterprise систем opensource есть серьезные игроки с большим числом пользователей. Например Pentaho BI (если про BI), Alfresco, Nuxeo ECM …

    Сам по BI не большой специалист, но вот смотрю конкретно Pentaho BI Reporting и Modrian … Отчетник есть встроенный, но и все остальные открытые форматы можно использовать – есть машина BIRT и JasperReports. Язык построения запросов к кубам совместим с MDX (могу бредить) … ETL евойный не дотрагивался, но можно успешно работать с тем же http://apatar.com/

    DataMining тоже не копал, но weka кажется самая известная система, и найти специалистов думаю тоже можно.

    Документация вся есть, поддержка правда не знаю сколько стоит – пока не требовалась. Но на примере Nuexeo ЕСМ премиум примерно 20 тыс евро в год … если возникают трудности то их можно решить за меньшие деньги …

    Разница для предприятия 150 штук или 20 штук, скажем прямо значительная. За 20 штук эти возможности уже доступны более мелким компаниям.

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

  6. on 01 Feb 2008 at 6:51 pm 6.Андрей Пивоваров said …

    Николай,

    Спасибо комментарий и за список.
    Мне казалось, что я написал, что мне не нравится в оперсорс BI, но, видимо недостаточно раскрыл свое видение.
    Я отвечу вам отдельным постом.

  7. on 02 Feb 2008 at 11:14 am 7.daemon-s said …

    Андрей,

    Тут я, видимо, недостаточно раскрыл свою мысль. Действительно, сравнение по принципу “есть возможность – нет возможности”, как минимум, бессмысленно. Вычленение одинаковых по классу продуктов и сравнение их по общим свойствам уже более интересно, хотя, я считаю, в итоге, это только создаст иллюзию того, что “все стало ясно”. Причина этого в том, что отказываясь от сравнения платформ целиком, мы упускаем из виду многие их интересные возможности, которые возникают при взаимодействии всех компонентов платформы. Как же проводить такое сравнение?

    Нужно отказаться от формального сравнения по критериям в пользу качественного подхода. То есть, перейти к описанию того, что наиболее удачно реализовано в конкретной линейке продуктов. Рассказать о том, какие модели данных и требования заказчиков наиболее удачно “лягут” на ту или иную платформу. Или наоборот, о недостаточно продуманном функционале, о местах в системе, требующих серьезных доработок при внедрении.

    Могу пояснить на примере. Я, профессионал в области SAP BI, вижу, что в “моей” платформе поразительно гибко отражена концепция зависящих от времени мета-данных (здесь я использую обще-теоретическую терминологию, в SAP свои термины). Временная зависимость может проявляться как у всех атрибутов признака, так и у их части; возникать как у всей иерархии, так и у отдельного узла. Из чего я могу рекомендовать свою платформу крупным предприятиям, у которых, скажем, часто меняется оргструктура. А вот, например, система контроля регламента бюджетного процесса, – наоборот, достаточно слаба и потребует программирования “от и до”, случись, что на предприятии регламент хоть немного сложнее той примитивной модельки, что идет в стандартном функционале.

    Выделение таких “особых” точек для каждой платформы, естественно, должен проводить профессионал, который не только хорошо знает “свой” продукт, но и имеет достаточный кругозор в области продуктов этого класса в целом. Таких людей не много, но от того и ценней результат. Закажи такое исследование коммерческая компания, это встало бы ей в немалую копеечку :) Хочу заметить, что итоги этой работы будут содержать какую-то долю субъективизма, но это и неизбежно при качественном, а не формальном подходе.

    Хм… по-моему, вышел уже не совсем комментарий :)

  8. on 03 Feb 2008 at 3:56 pm 8.Андрей Пивоваров said …

    daemon-s,

    Согласен с вами. Для того, чтобы провести адекватное сравнение, человек должен иметь большой реальный опыт работы с несколькими платформами одновременно, а это не так уж часто встречается. А если человек специалист, пусть и хороший, по одной платформе и начинает сравнивать ее с другими – это приводит к однобокости выводов.
    Я когда-то тоже работал с несколькими платформами одновременно, но это было давнольно давно и с тех пор многое измненилось, поэтому не готов объективно сравнивать. Так как, специфика моей нынешней работы, понятно, не дает мне возможности получить глубокий опыт работы с платформами других вендоров.

    А рассказывать о преимуществах того, о чем я знаю – так это я и так стараюсь тут делать.

  9. on 04 Feb 2008 at 2:55 pm 9.dx said …

    Очень прагматический вопрос: Oracle BI конечно хорош. Ничего не скажешь. И дорого. Так вот, при приобретении BI платформы Oracle (например SE) нужно ли пробретать ещё и лицензии на сервер приложений Oracle AS? Или же в состав пакетов Reports и Discoverer уже входит AS и платить за него не нужно?

  10. on 04 Feb 2008 at 5:23 pm 10.Андрей Пивоваров said …

    dx,

    4000 (минимальная цена BI SE, а вы именно про него говорите) дорого? Дешевле будет написать самим?

    В состав Oracle Business Intelligence Standard Edition уже входит апсервер, нужный для работы отчетов. Поэтому не нужно.
    Базу данных отдельно покупать нужно, естественно.

  11. on 17 Nov 2008 at 4:38 pm 11.Кто есть кто на рынке Open Source BI | Техноблог Войцеховского Максима said …

    […] Зачем нужны платформы Business Intelligence? […]

  12. on 20 Jan 2009 at 3:29 pm 12.Женя said …

    Спасибо за статью! Надеюсь, автор не против, если я использую это для своей курсовой.

  13. on 20 Jan 2009 at 7:26 pm 13.Андрей Пивоваров said …

    Женя,
    Если со ссылкой, то не против

Trackback This Post | Subscribe to the comments through RSS Feed

Leave a Reply