научная статья по теме ЭФФЕКТИВНАЯ ПОДДЕРЖКА БАЗ ДАННЫХ С ОНТОЛОГИЧЕСКИМИ ЗАВИСИМОСТЯМИ: РЕЛЯЦИОННЫЕ ЯЗЫКИ ВМЕСТО ДЕСКРИПТИВНЫХ ЛОГИК Математика

Текст научной статьи на тему «ЭФФЕКТИВНАЯ ПОДДЕРЖКА БАЗ ДАННЫХ С ОНТОЛОГИЧЕСКИМИ ЗАВИСИМОСТЯМИ: РЕЛЯЦИОННЫЕ ЯЗЫКИ ВМЕСТО ДЕСКРИПТИВНЫХ ЛОГИК»

ПРОГРАММИРОВАНИЕ, 2012, No 6, с. 45-62

- БАЗЫ ДАННЫХ -

УДК 681.3.06

ЭФФЕКТИВНАЯ ПОДДЕРЖКА БАЗ ДАННЫХ С ОНТОЛОГИЧЕСКИМИ ЗАВИСИМОСТЯМИ: РЕЛЯЦИОННЫЕ ЯЗЫКИ ВМЕСТО ДЕСКРИПТИВНЫХ ЛОГИК *

© 2012 г. Л.А. Калиниченко 117333 Москва, ул. Вавилова, 44/2 E-mail: leonidk@synth.ipi.ac.ru Поступила в редакцию 12.12.2011 г.

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

1. ВВЕДЕНИЕ

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

* Работа выполнена при частичной финансовой поддержке РФФИ (гранты 10-07-00342-а, 11-07-00402-а), и Программы фундаментальных исследований Президиума РАН № 15, проект 4.2.

Так, большинство онтологий определяют индивиды (экземпляры), классы (понятия), атрибуты и отношения. Примеры онтологий, разработанных для различных предметных областей (таких, как, например, культурное наследие, лингвистика, науки о Земле, геномика, систематика белков, фармацевтика, структура растений, образование, биология, архитектура предприятий, биомедицина, и др.) можно найти в http://en.wikipedia.org/wiki/0^о^у_(т&г-та^оп_8«епее). Эти примеры, а также развитие разнообразных языков онтологического моделирования свидетельствуют о практической востребованности онтологий для структуризации и представления знаний в различных предметных областях.

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

средства онтологических машин вывода при интерпретации запросов к базам данных. Этот подход практически используется при создании относительно небольших приложений, обычно в научных предметных областях. Подобная деятельность сопровождается введением ряда новых терминов - таких, как Онтологически Базированные Информационные Системы (Ontology Based Information Systems - OBIS), Онтологически Базированный Доступ к Данным (Ontology Based Data Access - OB-DA), Онтологически Базированная Интеграция Данных (Ontology Based Data Integration -OBDI) [1, 2, 3, 4]. Целью настоящей статьи является краткий анализ состояния работ в области "онтологически базированных" систем и сопоставление применяемых в них средств, основанных на дескриптивных логиках, с функционально аналогичными средствами, реализуемыми на основе традиционных средств баз данных. Таковыми являются расширения реляционной модели данных специальными зависимостями, представленными в семействе языков Datalog± [5, 6, 7, 8, 9, 10, 11, 12], и их реализация. Рассмотрение возможностей этих языков составляет основное содержание статьи.

Статья организована следующим образом. В разделе 2 обсуждаются вопросы соотношения онтологического и концептуального моделирования и соответствующих языковых средств. В разделе 3 дан анализ развития языков на дескриптивных логиках, применяемых или специально разработанных для использования в качестве средств концептуального моделирования в контексте баз данных и информационных систем. В четвертом разделе приводится краткий обзор известных экспериментальных результатов создания "онтологически базированных" систем доступа к данным. Разделы 2-4 являются изложением рассмотренных в [13] вопросов, включающих анализ эволюции определений онтологии, места онтологических языков и, собственно, онтологических моделей в информатике. В пятом разделе определена задача эффективной поддержки онтологических зависимостей в базах данных на основе технологии баз данных. После краткого перечисления видов зависимостей, поддерживаемых базами данных

(раздел 6), дан краткий обзор состояния и развития языков семейства Datalog±, обеспечивающих эффективную поддержку онтологических зависимостей в схемах баз данных при ответе на запрос. В разделе 8 дана характеристика соотношения семейств языков Datalog± и дескриптивных логик DL-Lite. В разделе 9 приведены оценки эффективности реализации языков Datalog±. В заключении подводится итог выполненному в статье анализу.

2. ОНТОЛОГИИ КАК КОНЦЕПТУАЛЬНЫЕ СХЕМЫ

Прежде всего, интересно проследить, как происходила эволюция определения понятия "онтология" в информатике. В начале 90-х годов прошлого века под воздействием усилий, направленных на создание стандартов интероперабельности компонентов информационных систем, онтологии были идентифицированы в качестве необходимого компонента систем, основанных на знаниях. Согласно определению Т. Грубера, данному в это время и широко используемому до сих пор, онтология есть спецификация концептуализации [14], или, иными словами, онтология представляет собой формальное определение понятий и их отношений в некоторой предметной области.

Еще в 1998 г. Н. Гуарино дал анализ возможных подходов создания информационных систем (ИС), движимых онтологиями, в котором предначертал варианты использования онтологий в процессе проектирования ИС и в процессе их функционирования [15]. Лейтмотивом этой работы является подчеркивание независимости спецификаций, заданных онтологиями, от каких-либо аспектов реализации. К сожалению, при этом не была прослежена параллель с ранее развитыми методами концептуального моделирования, семантически интероперабельных систем, систем интеграции информационных ресурсов, и др., неотъемлемым атрибутом которых является применение уровня спецификации, не зависящего от реализации.

Показательно также, насколько в последнее время развилось понятие "онтология" в

сравнении с ранним определением Т. Грубера. Представительной является разделяемая многими более поздняя точка зрения все того же Т. Грубера [16], которую можно характеризовать следующими высказываниями. В контексте информатики, онтология определяет множество примитивов представления, при помощи которых осуществляется моделирование домена знаний или дискурса. Примитивами представления обычно являются классы (или множества), атрибуты (или свойства), и связи (или отношения) между экземплярами классов. В частности, в контексте систем баз данных онтологии можно рассматривать как уровень абстракции моделей данных1, выраженных в иерархических и реляционных структурах, однако ориентированных на моделирование знаний об индивидах, их атрибутах и их связях с другими индивидами2. Говорят, что онтологии находятся на "семантическом" уровне, в то время как схемы баз данных являются моделями данных "логического" или "физического" уровня3. Ввиду их независимости от моделей данных нижележащих уровней, онтологии пытаются применять для интеграции неоднородных баз данных, обеспечения интероперабельности различных систем, а также для спецификации интерфейсов независимых

4

сервисов, основанных на знаниях .

Можно встретить также определения, подобные тому, что недавно было дано Д. Кальванезе [17]. Онтология является схемой представления, определяющей формальную концептуализацию предметной области. При этом спецификация онтологии обычно охватывает два различных уровня. Интенсиональный уровень специфицирует множество концептуальных элементов и правил для определения концептуальных

1В данном случае имеются в виду схемы баз данных.

2 В контексте разговора об уровне абстракции данные часто превращаются в знания.

3Т. Грубер намеренно забывает о концептуальных схемах баз данных.

4 Эта фраза удивительна: как будто не существуют

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

структур предметной области (в терминах дескриптивных логик говорят, что такие определения сосредоточены в ТВох'е). Экстенсиональный уровень задает множество

5

экземпляров интенсиональных элементов (сосредоточенных в АВох'е).

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

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

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком