2. Организация представления информации. Для размещения разнородной информации, получаемой из разных источников создаются специализированные объекты, задающие способы отображения (дизайн, например) для информации разных типов.
Обратная связь
Системы, обеспечивающие обратное взаимодействие - то есть от пользователя к системе. Примеры - системы почтовых рассылок, системы Web-конференций, анкетирования, голосования, чаты и проч.
Автоматизация процесса администрирования Web-сервера и обновления информации.
Системы, обеспечивающие работу администратора - работа с пользователями, обновления информации, системы обработки статистики, мониторинга функционирования сервера. Администратор получает инструмент, который позволяет ему как полностью контролировать работу системы, так и самостоятельно актуализировать информацию, не прибегая к помощи дизайнеров.
Естественно, что данная классификация решений достаточно условна и не покрывает всего спектра реализуемых компанией «Гарант-Парк-Интернет» решений. Под конкретные задачи создаются уникальные системы, которые сложно структурировать, например, различные Intranet-решения, приложения для интеграции Web-сервера со специфическими внутренними информационными системами заказчика и т.п.
Системы электронной коммерции
В области электронной коммерции (B2C) компания «Гарант-Парк-Интернет» предлагает как создание эксклюзивных Интернет-магазинов на заказ, так и приобретение или аренду готовых магазинов. Для аренды магазинов используется собственный многофункциональный программный продукт Metric Commerce Optimizer (MCO). Данный программный продукт разработан с использованием MS SQL 2000/VB WebClass/XML. Эксклюзивные магазины могут быть созданы как на базе данного программного продукта, так и с использованием Microsoft Site Server 3.0 Commerce Edition. По желанию заказчика Интернет-магазин подключается к платежным системам АССИСТ, Cyberplat.com, Телебанк.
Поисковые системы - Russian Context Optimizer – RCO
Области применения
· Системы документооборота
· Системы поддержки принятия решений
· Справочные системы, архивы, новости, электронные консультации (help desk) и т.д.
В качестве ядра ИС в большинстве случаев используются различные СУБД, позволяющие сэкономить время (и деньги) при разработке и администрировании ИС. Сейчас наблюдается бурный рост ИС практически во всех перечисленных направлениях. Это связано с общемировыми тенденциями – развитие ИС в Интернет, с необходимостью создавать новые и реструктурировать существующие ИС. Рассматривая крупные ИС, актуальные в корпоративном и государственном секторах рынка и предназначенные для работы с большими массивами информации находим, что ИС должны удовлетворять следующим требованиям :
· масштабируемость, простота администрирования, высокая производительность, мощные средства разработки,
· программные продукты, на основе которых построены ИС, должны иметь хорошую техническую поддержку и надежную компанию – разработчика,
· ИС должны обеспечивать возможность поиска по полнотекстовым базам данных с расширенными возможностями обработки запросов (учет специфики предметной области, семантики языка и т.д.).
Всего лишь несколько лет назад организации, сталкивающиеся с необходимостью работать одновременно с текстовыми и структурированными данными, были вынуждены использовать различные программные продукты для работы с ними. Текстовые данные могли храниться в файловой системе, а структурированные в БД. Такая организация приложения вызывала дополнительные затраты на разработку и администрирование ИС. При необходимости обработать комбинированный запрос приходилось параллельно запускать два различных запроса для поиска текста и информации из БД, а затем объединять (или пересекать) результаты, что не самым лучшим образом сказывалось на эффективности работы системы в целом. Различное ПО, используемое в рамках одной системы, существенно понижает ее устойчивость и усложняют администрирование. Целостность данных и транзакции не поддерживаются, так как различные системы “не понимают” друг друга. Безусловно, эти проблемы подтолкнули ведущие компании, выпускающие СУБД к интегрированию средств работы с текстовыми неструктурированными ресурсами с традиционными возможностями СУБД.
В настоящее время создан ряд программных продуктов, в той или иной степени удовлетворяющих вышеперечисленным требованиям. Одним из наиболее удачных решений можно назвать Oracle ConText Cartridge (OCC) компании Oracle.
OCC – плюсы и минусы
Плюсы
Тесная интеграция с СУБД
OCC обеспечивает высокую масштабируемость, устойчивость и легкость управления, что и следует ожидать от промышленной БД. Поддерживается многопроцессорная архитектура и распределенная обработка запросов.
Обработка текстовых запросов через SQL
В то время как отдельные продукты для работы с текстами вынуждают разработчиков использовать специализированные средства разработки, ConText поддерживает стандартный SQL, что позволяет использовать стандартные приемы при проектировании ИС. Разработчики, создавая ИС, могут работать с любыми средствами разработки, “понимающими” SQL, такими как PowerBuilder, SQL*Windows, Visual Basic и т.д.
Мощный язык запросов
Для организации контекстного поиска в OCC используется инвертированный индекс - каждому слову ставятся в соответствие номера документов, в которых это слово содержится. Дополнительно OCC хранит информацию о положении слова в документе. Это позволяет организовать поиск по фразе или выражению, а также поиск по “близости” слов в тексте.
OCC позволяет реализовать
· Точный поиск по слову/фразе
· Поиск по шаблону
· Поиск с учетом “весов”
· Поиск с учетом “близости”
· Поддержка тезаурусов
· Ранжирование документов по релевантности
· Нечеткий поиск
· Булева логика
· Стоп лист
Минусы
OCC поддерживает любой 8 битный character set, и формально позволяет работать с текстами в любых кодировках, поддерживаемых СУБД Oracle, но при этом, не обеспечивает функциональные возможности, доступные для англоязычных текстов. Частично эти возможности реализованы для французского, немецкого, итальянского, испанского и датского языков. В частности, для русскоязычных текстов не поддерживаются следующие возможности OCC:
· Stemming – расширение запроса всеми возможными словоформами
· fuzzy matching – расширение запроса словами похожими по написанию, что позволяет уменьшить вероятность ошибок, возникающих при ошибках сканирования
· Soundex – расширение индекса словами созвучными с встречаемыми в индексируемом тексте.
Это связано с зависимостью реализации этих возможностей от морфологии, лексики, семантики и фонетики языка.
Помимо отсутствия поддержки стандартных возможностей OCC, при работе с русскими текстами возникает ряд проблем связанных с существенными различиями в структуре русского и английского языков.
Суммируя, перечислим основные сложности, с которыми встречается пользователь OCC при работе с русскими текстами:
1. Большой размер индексов, создаваемых OCC – эта проблема становится очень существенной для средних и больших баз данных.
2. Невозможность поиска документов, содержащих все словоформы слова, заданного в запросе. Например, для поиска документов, содержащих слово “президент”, необходимо либо перечислить все возможные словоформы в запросе, либо использовать шаблон для поиска - “президент%”. В последнем случае будут найдены документы, содержащие “президент” + словоформы, “президентский” + словоформы и т.д., то есть существенно больше документов, чем требовалось.
3. Невысокая производительность обработки запросов – вызвано большим размером индекса, и необходимостью расширять запрос шаблоном.
4. Невозможность создавать тезаурус
Что такое RCO
RCO позволяет полностью преодолеть вышеперечисленные сложности работы с OCC. Это решение основано на открытых стандартах и спецификациях Oracle и не ограничивает возможности OCC.
Основные характеристики RCO:
1. Размер индекса сокращается в 5-10 раз и составляет 10 – 20 процентов от объема индексируемого текста.
2. Поиск документов происходит с учетом всех словоформ, при этом в запросе слова для поиска могут встречаться в любой морфологической форме.
3. Предоставляется возможность исключать части речи, не используемые в запросах (наречия, местоимения, предлоги) из индекса.
4. Предоставляется возможность создания тезауруса.
5. Настройки RCO не влияют на настройки OCC, что позволяет работать с базами данных, содержащими одновременно тексты на поддерживаемых OCC языках и русском.
6. Предлагаются специальные настройки для документов в формате HTML при создании индекса.
7. RCO поддерживает обработку словарных конструкций, состоящих из цифр, русских и латинских букв.
8. Поддерживаются все кодовые страницы русского языка.
9. Поддерживаются документы в большинстве двоичных форматов.
10. Скорость поиска увеличивается в 3-5 раз.
Совместимость с программными продуктами Oracle.
RCO основан на открытых стандартах и спецификациях Oracle. Взаимодействие компонентов RCO и продуктов Oracle происходит:
· посредством интерфейса, предоставляемого Oracle PL/SQL pipes – RCO pipes dispatcher, RCO listener
· используя стандарты, предусматриваемые CONTEXT CARTRIDGE для внешних фильтров. – RCO filter
· с помощью интерфейса OCI – RCO listener
Вышеперечисленные интерфейсы стандартные и поддерживаются Oracle. В RCO предусмотрена возможность интеграции с существующими приложениями, использующими OCC, что позволяет существенно улучшить их быстродействие и расширить функциональные возможности.
Дизайн
Хороший дизайн является важным аспектом разработки любой Интернет-системы. Профессиональный дизайн является обязательным условием для создания успешного проекта.