serge_gorshkov


Сергей Горшков - о бизнесе в сфере ИТ

о семантической интеграции, программировании, управлении...


Previous Entry Share Next Entry
Семантика: новый двигатель для старой кареты, или смена парадигмы?
serge_gorshkov
Недавно участвовал в заседании рабочей группы по стандартизации промышленных данных в нефтегазовом комплексе. Если совсем коротко, речь идет о создании российского каталога справочных данных для нефтегаза. Каталог должен строиться по принципам и на основе стандарта ISO 15926. Стандарт подразумевает представление информации в семантической форме (т.е. не реляционной и не объектно-ориентированной; в конечном счете, вся информация выражается в виде триплетов, а сверху имеется очень большая надстройка, определяющая правила моделирования информации, предоставляющая для этого стандартные типы, шаблоны и т.п.). Так вот, в ходе обсуждений из уст нескольких уважаемых людей не раз прозвучало мнение, что всю семантику необходимо скрывать от конечного пользователя. То есть, в простейшем варианте - есть несколько приложений, обмен информацией между которыми идет через представление данных, соответствующее ISO 15926 (метод называется ISO 15926 outside); пользователи продолжают работать каждый в своем приложении, не подозревая о том, как именно происходит обмен. Поскольку каждое приложение построено на реляционной БД, они так и продолжают работать с реляционными данными.

Более того, было выражено мнение, что если информационная система построена по принципу ISO 15926 inside, то есть и внутри нее данные имеют представление, соответствующее ISO 15926 (насколько я понимаю, на практике таких систем или нет совсем, или они малоизвестны; целесообразность их реализации - тоже предмет отдельного обсуждения), то и в этом случае для пользователя ничего не должно измениться.

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


Понятно, что как первый шаг это вполне рационально: наша "Бизнес Семантика" работает по такому же принципу, используя семантическое кодирование информации в транспортном протоколе, на входе и выходе осуществляя преобразование в реляционную форму. Однако мы с самого начала говорим о том, что нет никакого смысла отказываться от тех преимуществ, которые дает эта самая семантическая форма, и от инструментария работы с ней. Если отвлечься от интеграционных процессов и ISO 15926, на сегодняшний день есть относительно приемлемые инструменты работы с семантически выраженной информацией - например, сервис www.freebase.com. Приведу пример: ни один современный поисковик не даст нам ответа на вопрос "В каких фильмах Люка Бессона снималась Мила Йовович?", а freebase покажет точный ответ (это очень важно! точный, исчерпывающий и логически вычисленный, тогда как современные алгоритмы поисковой выдачи заведомо неточны и выдают множество мусора). Особенно удобно было работать с freebase до того, как они убрали визуальный инструмент построения запросов - ума не приложу, зачем они это сделали, инструмент вполне себе работал.

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

Так вот, коль скоро мы строим систему обмена информацией, выраженной в семантической форме, логично сразу иметь в виду (по меньшей мере), что пользователю будет полезно и интересно работать с самим семантическим представлением, а не использовать его только в качестве контейнера для транспортировки. Мы в своей системе предусматриваем такую возможность сразу: по крайней мере, вся перекачиваемая "Бизнес Семантикой" информация может аккумулироваться в SPARQL-хранилище, к которому можно приделать внешний инструмент построения запросов, который и даст желаемые аналитические возможности. Есть и другие пути не прятать семантику от людей, а подружить их с ней - например, редакторы контролируемого языка, об одном из которых я недавно писал.

Один из участников упомянутого заседания, с которым я после пообщался на эту тему, выразил отрицание существования проблемы таким образом: "The balance between "hide" and "useful" is in the eye of the beholder". С одной стороны, сказано изящно, с другой - по сути неверно. Под hide здесь имеется в виду скрытие "семантической кухни" от пользователя, а под "useful" - возможность использования уникальных особенностей семантики. Это похоже на образ мыслей производителей автомобилей конца XIX века: автомобиль маскируется под карету, хотя в движение приводится уже не лошадями. Пора менять мышление :)

  • 1
Согласен!
Я еще 15 лет назад говорил о том, что экономист не знающий SQL - не экономист :)

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

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

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

  • 1
?

Log in

No account? Create an account