Feed on Posts or Comments

Monthly ArchiveJanuary 2007



BI Beans &Express &OLAP &Oracle Database &Ликбез &Общее Андрей Пивоваров on 29 Jan 2007

Что такое OLAP? Часть 2. Oracle Express и Oracle OLAP

Теперь перейдем собственно к Oracle OLAP.

Как я уже упомянул, в 1995 году Oracle приобрел компанию IRI – пионера в области MOLAP, производителя Express. Я сам впервые столкнулся Oracle Express в 1999 году. Если бы я не прочитал, что первая его версия появилась в 1970, никогда бы не подумал.

На самом деле, с 1970 продукт несколько раз переписывался, в том числе и на другие языки программирования. И в 1995, когда его купил Oracle, Express был лидером в своем классе.

Семейство Oracle Express состоит из нескольких продуктов:

  • Oracle Express Server – собственно многомерный сервер.
  • Oracle Express Objects – RAD среда, напоминающая Visual Basic, с помощью которой можно написать любой интерфейс пользователя.
  • Oracle Express Analyzer – смотрелка кубов (в том случае если вы не хотите писать собственный интерфейс). Этот же Analyzer является runtime-средой для приложений, написанных на Objects.
  • Express Web Publisher – компонент, который позволяет публиковать данные из Express на вебсайтах.

У Express Server есть помимо стандартных возможностей просмотра содержимого кубов, есть ряд интересных и иногда даже уникальных возможностей. Continue Reading »

Discoverer &Express &OLAP &Ликбез &Общее Андрей Пивоваров on 27 Jan 2007

Что такое OLAP?

Вопросы об OLAP занимают особое место. В отличие от большинства других технологий, где часто можно услышать вопрос \”Что такое Discoverer?\” или \”Что такое Spatial?\”, когда дело касается OLAP чаще всего слышен вопрос: \”Мы хотим поставить себе OLAP. Что нам нужно для этого сделать?\”

То есть OLAP – это такой термин, который у многих на слуху, но когда начинаешь задавать дополнительные вопросы, очень часто выясняется, что под OLAP-ом может пониматься что угодно. Однажды даже, после 5-минутного объяснения, я услышал \”Я не понял, а что, OLAP это разве не система управления документооборотом?\”

Хотя, справедливости ради скажу, что большинство спрашивающих все-таки знают, что OLAP – это из области аналитики.

Так что, прежде чем разбираться что такое Oracle OLAP, давайте попробуем разобраться что вообще такое OLAP?
Continue Reading »

Spatial &Ликбез &Общее Андрей Пивоваров on 22 Jan 2007

Еще про Resource Description Framework

Как оказалось, RDF и все о чем говорилось в прошлом посте имеет уже практические применения.

Во первых, RSS, оказывается, первоначально расшифровывалось не как \”Really Simple Syndication\”, а \”RDF Site Summary\”

Во-вторых, в исходных текстах многих страниц интернета, например в тех же блогах можно встретить RDF вставки. Даже в коде этой страницы.

Нашелся перевод на русский оригинальной статьи Тима Бернерса-Ли сотоварищи про семантические сети. Тут.

Теперь что касается Oracle Spatial.

Поддержка RDF появилась в Spatial только в версии базы 10g Release 2. Раньше не было.

Поэтому поводу, в документации по 10.2 появилась новая книжка \”Oracle® Spatial Resource Description Framework (RDF)\”

Там есть два примера, которые можно прогнать на своей базе и посмотреть как это все работает.

Один пример про каталог публикаций. (Статья, Автор, На какую статью ссылается) И затем можно делать запросы о ссылках.
Например. Запрос, ссылается ли статься Article2 на статью Article3:

SELECT SDO_RDF.IS_TRIPLE(
\'articles\',
\'http://www.nature.com/nature/Article2\',
\'http://purl.org/dc/terms/references\',
\'http://www.nature.com/nature/Article3\') AS is_triple FROM DUAL;

Ответ – TRUE (EXACT)

Второй пример более интересен. Он о том, как построить иерархию семьи (John – отец Matt, Sammy – отец Cathy, Cathy – сестра Jack и т.д.)

\"http://download-west.oracle.com/docs/cd/B19306_01/appdev.102/b19307/family.gif\"

А вот как вставляется запись, о том, что John – отец Matt:

INSERT INTO family_rdf_data VALUES (2,
SDO_RDF_TRIPLE_S(\'family\',
\'http://www.example.org/family/John\',
\'http://www.example.org/family/fatherOf\',
\'http://www.example.org/family/Matt\'));

А вот как описывается отношение \”Если x – родитель y, а y – родитель z, то x – дедушка y\” В оригинале, конечно не \”дедушка\”, а GrandParent, а GrandParent это может быть и \”бабушка\”, но я не знаю какое слово в русском этому соответствует :-)

INSERT INTO mdsys.rdfr_family_rb VALUES(
\'grandparent_rule\',
\'(?x :parentOf ?y) (?y :parentOf ?z)\',
NULL,
\'(?x :grandParentOf ?z)\',
SDO_RDF_Aliases(SDO_RDF_Alias(\'\',\'http://www.example.org/family/\')));

То есть, можно создавать новые отношения между существующими отношениями, а потом делать запросы используя уже новое отношение.

Вот например запрос: \”Выбрать всех дедов и их внуков\”. При этом, изначально, в базе были определено только кто является чьим родителем.

SELECT x grandfather, y grandchild
FROM TABLE(SDO_RDF_MATCH(
\'(?x :grandParentOf ?y) (?x rdf:type :Male)\',
SDO_RDF_Models(\'family\'),
SDO_RDF_Rulebases(\'RDFS\',\'family_rb\'),
SDO_RDF_Aliases(SDO_RDF_Alias(\'\',\'http://www.example.org/family/\')),
null));

Интересно, что \”дедушка\” от \”бабушки\” тут отличается по \”типу\” Male.

Результат запроса:

GRANDFATHER                        GRANDCHILD
-----------------------------------------------------------------------
http://www.example.org/family/John http://www.example.org/family/Cindy
http://www.example.org/family/John http://www.example.org/family/Jack

Может быть, синтаксис немного непривычный, но зато это SQL, а значит эти запросы можно поместить во View или вставить в любое приложение, которое понятия не имеет про всю эту кухню с RDF.

Spatial &Ликбез &Общее Андрей Пивоваров on 18 Jan 2007

Oracle Spatial и семантические сети

Коллега Марк Ривкин рассказал, что прочитал о том, что Oracle Spatial может служить платформой для приложений, основанных на Resource Description Framework, который(ая) является, в свою очередь основой для построения семантических сетей и семантического веба.

Проверил – и действительно, оказывается существует даже целый сайт http://www.oracle.com/technology/tech/semantic_technologies/index.html, посвященный этой теме. Там есть документы и презентации на эту тему.

Тим Бернерс-Ли, изобретатель всемирной паутины считает, что эта технология должна изменить интернет будущего.

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

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

Если пойти дальше, то на уровне метаданных можно описывать не только принадлежность факта к какому-то понятию, но можно описывать сложные отношения. Например, если у нас есть факт, \”Иван является отцом Петра\”, то можно описать это соотношение как триаду (Иван,\’является отцом\’,Петр). Имея базу данных таких соотношений можно затем вывести соотношения типа \”Петр является сыном Ивана\” или если мы знаем, что \”Вася является сыном Петра\”, то, следовательно, \”Вася является внуком Ивана\”. И т.д. Запросы могут быть сложными, выводы тоже. Но так как объем данных огромен, возникает вопрос, как с этим работать?

RDF – это модель метаданных, основанная на XML, которая как раз и позволяет описывать эти смысловые соотношения, предикаты, между объектами. А имея описания отношений и базу данных объектов, связанных отношениями можно делать (в случае Spatial) SQL запросы, которые будут возвращать результаты гораздо более осмысленных запросов.

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

Семантический веб даже упоминается в контексте \”Слабого Искусственного Интеллекта\” и позволяет представить интернет как одну огромную экспертную систему.

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

Здесь лежит техническая презентация о поддержке RDF в Spatial
А здесь интересная презентация о применении RDF и Spatial в биотехнологиях.

BI EE &Общее Андрей Пивоваров on 17 Jan 2007

Библиотека брошюр про Oracle на русском.

В блоге Вадима Бондарева нашел ссылку на большую подборку брошюр о разных продуктах Oracle. Она мне когда-то попадалась, но потом я ее потерял.

Вот она: http://www.oracle.com/global/ru/pdfs/index.html

Там, кстати, есть и перевод большой статьи об Oracle BI EE, которую я упоминал раньше.

ODI Андрей Пивоваров on 15 Jan 2007

Материалы по Oracle Data Integrator

На сайте Oracle появилась страница об Oracle Data Integrator и материалы по нему. (Статьи и проч.)
http://www.oracle.com/technology/products/oracle-data-integrator/index.html

ODI &OWB Андрей Пивоваров on 12 Jan 2007

Oracle Data Integrator появился на OTN

На OTN появился продукт Oracle Data Integrator.
http://www.oracle.com/technology/software/products/ias/htdocs/101310.html

Это продукт, который производила компания Sunopsis до того, как ее купил Oracle в Октябре 2006.
Продукт на тот момент был конкурентом продукта Oracle Warehouse Builder.

BI EE Андрей Пивоваров on 11 Jan 2007

Где скачать Oracle BI EE (бывший Siebel Business Analytics)

Как уже неоднократно писалось, у Oracle теперь есть три линейки Business Intelligence (Standard Edition, Standard Edition One и Enterprise Edition) SE – это та линейка, которая была у Oracle давно (Discoverer, Reports и т.д.), а SE ONE и EE – это то, что было куплено вместе с компанией Siebel и сейчас активно развивается.

Ранее, этот пакет продуктов назывался Siebel Business Analytics, а сейчас переименован в Oracle Business Intelligence Enterprise Edition.

На OTN его выкачать нельзя почему-то пока. Но можно выкачать на http://edelivery.oracle.com

Заходим туда, вводим то, что он просит, а дальше, в разделе выбора софта выбираем Oracle Business Intelligence
А дальше Oracle Business Intelligence Media Pack

Тут достаточно много всего, но для того, чтобы развернуть платформу нужно выкачать только первые два диска (если под Windows),
Oracle Business Intelligence EE and Siebel Business Analytics Platform, Version 7.8.5.1 Windows Programs (DVD) (Part 1 of 2)
Oracle Business Intelligence EE and Siebel Business Analytics Platform, Version 7.8.5.1 Windows Programs (DVD) (Part 2 of 2)

Дальше, во время инсталляции он попросит путь к JRE, но обычно, если у вас установлено что то из Oracle и не только – он у вас есть.

Дальше есть еще одна тонкость. Будет запрошен лицензионный файл.
Лежит он тут. http://licensecodes.oracle.com/oracle_bi.html

Вам нужен самый нижний ключ. http://licensecodes.oracle.com/downloads/AnalyticsInstallLicenseAN7851.zip

Еще один момент.
Если будете устанавливать его под Windows, то, желательно, перед установкой поставить Internet Information Server, тогда при инсталляции он пропишется туда автоматом.

Но можно прописать и потом вручную как на IIS, так и на J2EE сервер, например OC4J или OAS.

Update. Поскольку появился релиз Oracle Business Intelligence Enterprise Edition 10.1.3.2, который является следующей версией, то то что написано в этом сообщении уже частично не имеет смысла (по крайней мере в части места и лицензионных ключей). Новая информация о ссылках тут.

BI EE &BI Server EE &Ликбез Андрей Пивоваров on 06 Jan 2007

Что такое Oracle BI Enterprise Edition? Часть 1.

Всех с наступившим Новым Годом!

Как я уже писал раньше, у Oracle в BI существует несколько линеек. Основная и самая большая называется Oracle Business Intelligence Enterprise Edition. Так как, это новый набор продуктов у Oracle, о нем часто спрашивают и я попытаюсь коротко объяснить что же это такое и из чего состоит.
Continue Reading »