|
С этой страницы можно начать знакомство с интернет-версией Абриаля. Серверная версия была создана в 2001-м году в качестве CGI-скрипта. Целью эксперимента была проверка следующего:
Результат превзошел все ожидания. Тезаурус Роже (весящий на диске 38М, а в памяти и того более) , удалось довольно быстро просматривать на весьма слабеньком сервере с памятью в 256М, и на очень узком канале. Очевидно сказывается то, что между кликами пользователя файл остается в кеше ОС. Конечно же, недостатком такого режима является отсутствие возможности изменения, и при активной работе нескольких пользователей в памяти образуется несколько клонов базы, что при переполнении, ведет к выпихиванию исходного файла из кеша и застопориванию работы сервера. Устранить указанные недостатки должна очередная версия программы (см.ниже). Предупреждение. Скрипт был разработан в 2001-м году, и с тех пор не менялся. Работа с интерфейсом требует понимания структуры базы данных, т.к. это всего лишь экспериментальный макет. Технология общения с пользователем была перенесена в локальную (основную) версию Абриаля, и здесь развита. Язык Абрис, представляющий сейчас (ноябрь 2004) основу системы программирования Абриаля 2 в серверном варианте 2001-го года содержался лишь в эмбриональном виде. Хотя перенос накопленного опыта в серверный вариант не сложен в техническом отношении и представляется автору весьма перспективным направлением, средств для продолжения этой работы до сих пор не находилось. 3 ноября 2004. Далее идет старая версия страницы. Демонстрационные базы данных.Несколько баз данных, работа с которыми представлена на сайте, предназначены только для знакомства с технологией, и не претендуют на роль самостоятельных ресурсов. Выбраны такие проблемные области, которые а) более или менее знакомые всем, и в которых б) смотреть материал не совсем уж скучно. На этой странице рассказывается о серверной версии Абриаля. Эта программа позволяет обращаться к базам данных Абриаля из глобальной сети. Серверный вариант Абриаля работает на WEB-сервере в качестве CGI-скрипта, динамически генерируя броузеру пользователя HTML-текст. Серверный вариант пользуется тем же ядром, что и основная (локальная) версия Абриаля. Поэтому и файлы баз данных у них абсолютно идентичны. Демонстрацию работы этой программы можно увидеть здесь. Серверный вариант Абриаля - прорыв в области веб-интерфейсов СУБД.Данный документ (отчасти на правах рекламы:) знакомит читателя с новым подходом к организации связи между пользователем интернета и базой данных. Этот подход реализован в экспериментальной разработке РосНИИ ИИ - программе Серверный вариант Абриаля. Определения.Абриаль есть инструментальная среда для конструирования приложений в области искусственного интеллекта. Более конкретно: Абриаль является конструктором баз знаний в виде объектных сетей. Этот проект Российского НИИ Искусственного Интеллекта (http://www.artint.ru) ведёт автор программы Абриаль Александр Иосифович Пацкин (mailto:aleksandr@tochka.ru, http://packin.ru). Сайт проекта находится по адресу http://packin.ru/abrial/.Технологическая ситуация.В настоящее время в индустрии корпоративных СУБД и в электронной торговле для доступа к базам данных из сети сложился определенный технологический стандарт - а именно трехуровневая архитектура. Приблизительно эта архитектура выглядит так:
Здесь только обозначены самые типичные технологии, более подробный список только разных трех-четырехбуквенных названий технологий в этой области займет вероятно не одну страницу. Но даже если между экраном пользователя и базой данных будет находиться минимум уровней, т.е. три (или четыре), то с учетом качественной разнородности сред на разных уровней это расстояние пользователь-БД стремится к бесконечности. По существу "модульный" подход привел к ситуации не устраивающей ни пользователя (он не "чувствует" природу данных), ни разработчика (очень неудобно), ни заказчика (очень долго и дорого). Ситуацию могла бы резко исправиться, бы если бы существовала единая логическая среда и для пользователя и для разработчика, т.е. вся разработка происходила бы внутри нынешнего третьего уровня, т.е. внутри Базы Данных. Реляционные СУБД, являясь средством слишком низкого уровня, генетически ориентированным на один компьютер, для этого не пригодны. Базы данных на XML также не годятся на роль единой среды. XML построен на вложенных структурах, но где вложенность, там узкая специализация, и невозможность универсального использования структур данных. Итак, настоящая (порочная в своей сути) архитектурная схема подобно черной дыре засасывает огромные средства и труд разработчиков, выдавая на выходе продукт с очень низким качеством: длительные сроки разработки, невозможность быстро изменить структуру данных, ненадежность и, наконец - самая обычная неэффективность, т.е. большое время ответа. Серверный вариант призван кардинально улучшить эту плачевную ситуацию и сократив приблизительно на два порядка временные и финансовые затраты на разработку, выдать на выходе простой, динамичный, легкий в использовании и надежный продукт. Суть новизны.
Практические результаты.Достаточно сильное утверждение о том, что новая технология радикально упрощает и ускоряет создание веб-интерфейсов для СУБД, следует доказать. Для доказательства рассмотрим пример со знаменитым тезаурусом английского языка Роже. Тезаурус - это словарь, в котором слова и словосочетания (такие как put down) сгруппированы по смысловой близости. При этом слово или сочетание в результате омонимии или многозначности попадает, вообще говоря, во много разделов. Достаточно интересно не только в теоретическом, но и в практическом плане было бы создание базы данных, содержащей все объекты тезауруса и все логические связи между ними, с тем, чтобы от любого объекта (слова, сочетания, раздела, параграфа, главы, темы, источника и т.д.) можно было бы, щелкнув мышью по гиперссылке, попасть в любой из связанных с ним объектов, например от сочетания - в любое из составляющих его слов, от слова - к любому включающему его сочетанию, от темы ко всем словам/сочетаниям темы и наоборот: от слова/сочетания ко всем его включающим темам, чтобы легко было увидеть все слова американского или латинского происхождения, все цитаты из Гамлета и т.д. и т.п. Короче, переходы должны быть возможны во всех логических направлениях. Возникают два вопроса:
Ответ на 1-й вопрос - полтора месяца. Это время в основном ушло на исправление огромного числа ошибок в исходном файле и на написание конвертирующей программы. Проектирование и создание структуры БД заняло не более дня. Ответ на 2-й вопрос - на помещение БД в интернет ушло столько времени, сколько нужно, чтобы положить один файл в нужную директорию на сервере и написать вот такую ссылку на вызывающей странице: http://www.artint.ru/packin/a.exe/o?b=tes.am (показано внутреннее содержание ссылки, а текст, естественно, может быть другим, например Тезаурус Роже). Выводы.В среде Абриаля можно тратить пару минут на публикацию в интернете сложных баз данных с автоматически создаваемым навигационным интерфейсом. На достижение такого же (а практически - гораздо более слабого) результата сегодня в мире тратятся миллионы человеко-лет весьма квалифицированного и высокооплачиваемого труда. Т.е. внедрение этой технологии способно сэкономить многие миллиарды долларов в самом крупном секторе информационной индустрии. Подтверждение того, что это на самом деле технологический прорыв, находится отсюда на расстоянии одного клика. Вот эта ссылка - : http://www.artint.ru/packin/a.exe/o?b=tes.am. ОграниченияДанная версия эффективно работает с небольшими базами данных (до нескольких мегабайтов) и пока - только на чтение. Однако свойство активности сети сохраняется, т.е. ассоциации работают в полном объёме без ограничений. ПерспективыСледующая версия программы, благодаря небольшим изменениям в архитектуре, даст возможность работать не только на чтение, но и на запись (изменение), и максимальный размер БД увеличится до нескольких сотен Мб. Дальнейшее более серьёзное изменение архитектуры системы, оставив все внешние параметры неизменными, в том числе пользовательский интерфейс и технологию работы с данными, расширит объём БД на весь интернет, т.е. практически будут сняты ограничения по размеру БД. |
|