Centura/Raima - основа нового поколения информационных систем
Большаков Сергей Алексеевич,
к.т.н., доцент
Многие руководители разработок и программисты часто находятся в безальтернативной
ситуации при выборе программных средств для переработки своих информационных
систем с устаревших платформ (DOS, ранние версии Windows и других) на новые
современные платформы. Дело в том, что все широко распространенные инструментальные
средства базируются на SQL технологиях. С другой стороны, практика уже
однозначно выявила негативные стороны SQL-интерфейса - в частности, при
решении задач оперативного доступа и оперативного ввода больших массивов
информации. Временные характеристики запросов в этих случаях не удовлетворительны,
а некоторые операции невыполнимы. Приемлемой альтернативы для перевода
под WINDOWS задач, к примеру, разработанных с использованием CA Clipper
пока не было. Появление продуктов Centura/Raima - RDM (Raima Database Manager)
и Velocis на рынке программных продуктов способно разрешить данную проблему
и многие другие проблемы, возникающие при разработке информационных бизнес
систем.
Почему фирма Raima, ставшая в прошлом году частью фирмы Centura, предлагает
именно эти два продукта? Здесь можно выделить следующие основные причины:
Во-первых, нужно заполнить нишу разработок со встраиваемыми СУБД,
в которой на данный момент нет достойных представителей для современных
платформ (RDM отвечает всем современным требованиям встраиваемых СУБД для
создания программных систем под WINDOWS),
Во-вторых, большинство СУБД - серверов не обеспечивают одновременно
SQL и NON SQL способы доступа к данным (Velocis - СУБД, являясь сервером
БД, для таких режимов и разрабатывался),
В-третьих, дефицит СУБД, поддерживающих сетевые модели данных,
значительно ограничивает области использования современных информационных
систем, и, наконец,
В-четвертых, практика показывает, что помимо супермощных СУБД
необходимо иметь системы промежуточного звена, для поддержки, в частности,
технологий распределенного сбора и обработки информации.
Эти факторы, как и многие другие, несомненно, определяют пользовательский
интерес к продуктам Centura/Raima. Совместно с инструментом CTD (Centura
Team Developer) и СУБД - SQLBase они составят основу для создания многих
систем обработки данных и управления. Рассмотрим краткую характеристику
данных программных продуктов Centura/Raima, выделив основные три:
- RDM (Raima Database Manager)
- СУБД, встраиваемая в приложения и обеспечивающая тем не менее многопользовательский
режим взаимодействия программ и БД - это достигается за счет специального
диспетчера (LockManager). RDM представляет собой набор библиотек и
интерфейсных файлов, которые подключаются к программам статически или динамически.
Кроме того, специальные утилиты в RDM обеспечивают действия, необходимые
для создания, сопровождения и взаимодействия с БД (импорт, экспорт, реорганизация,
инициализация и др.). RDM позволяет строить сетевые структуры БД с помощью
специальных наборов (Sets), за счет чего структура сложных БД выглядит наглядней,
а взаимодействие с данными значительно упрощается. При этом эффективность
доступа не только не теряется, но становится намного выше. Производительность
приложений со встраиваемыми СУБД чрезвычайно высока, что, в частности для
RDM достигается применяемыми алгоритмами и прямым доступом к записям и файлам.
Для повышения уровня оперативности работы с данными пользователю разрешено
самому планировать структуру файлов и делать распределение записей и ключей
по файлам, что позволяет практически без затрат оптимизировать размещение
данных и снизить времена манипулирования записями. Одновременно с навигационным
режимом доступа к данным (first, last, next и др.) в RDM обеспечивается выбор
данных с помощью SQL операторов, которые могут формироваться в программах
или инициироваться из специальных файлов запросов. Возможность работы с любыми
системами программирования СИ++, поддержка широкого круга платформ техники
и операционных систем, предоставление пользователю исходных текстов программ
- все это предопределяет привлекательность программного продукта - RDM,
на основе которого могут создаваться как простые приложения, так и программное
обеспечение сложных многопользовательских информационных систем. Ранее этот
программный продукт, а он ведет свою историю с 1987 года, был известен под
названием dbVista, сейчас последняя версия называется RDM++ v4.5.
- Velocis - полнофункциональная
СУБД серверного типа, предназначенная для работы в одноранговых сетях самых
различных платформ. Velocis обеспечивает работу как SQL ориентированных приложений
и БД, так и NON SQL приложений и БД соответственно. Velocis для работы и отладки
приложений имеет одномашинный вариант (Standalone), при работе с которым достигается
полная совместимость программ, интерфейса и БД с серверным сетевым продуктом.
В состав Velocis СУБД, помимо утилит, составляющих основу RDM, входят средства
администрирования БД, средства SQL - взаимодействия и средства сопровождения
БД. Обеспечивается плавный переход от NON SQL к SQL БД и одновременный доступ
как в SQL, так и в навигационном режиме. С помощью несложных преобразований
БД, работавшую под управлением RDM, можно преобразовать в БД под управлением
СУБД Velocis, что позволяет сделать разрабатываемые программные средства более
мобильными. Все достоинства, перечисленные выше для RDM, сохранены, включая
высокие производительность и надежность. В Velocis СУБД предусмотрены интерфейсы
с языком СИ++ (для разных систем программирования), MS VB, BORLAND DELPHY,
а также другими языками и средствами разработки, которые обеспечивают работу
со стандартными динамическими библиотеками WINDOWS - DLL. Последняя версия
СУБД Velocis, которая вышла в конце 1999 года - VELOCIS v2.1.
- ROM (Raima Object Manager) -
это объектно-ориентированный интерфейс в виде системы взаимосвязанных классов,
предназначенный для эффективного построения приложений для продуктов Centura/Raima:
RDM и Velocis СУБД. Логичная система классов в ROM определяет язык взаимодействия
с данными посредством определения специальных объектов, которые значительно
облегчают построение приложений. Например, определение объекта типа запись
(StoreObj) сводит традиционную навигацию по БД (first, last, next и др.) к
перегруженным операторам ++ и/или другим. При создании приложений с
использованием ROM значительно упрощаются модули, предназначенные для манипулирования
данными. Они становятся более наглядными, что приводит к уменьшению числа
ошибок при программировании. Принято считать, что использование классов снижает
производительность программ. Это в принципе неоспоримый факт, однако в ROM
для снижения влияния данного фактора приняты специальные меры: операторы и
процедуры классов опираются на прямой доступ взаимодействия с файлами, содержащими
записи БД. Использование прямого доступа, при котором используется специальный
тип переменной (dbAddr), введенный в RDM, обеспечивает оперативный доступ
к данным и ключам, что нивелирует расходы, связанные с применением системы
вложенных классов. С помощью специального класса запросов (OmQuery) в ROM
можно организовать SQL доступ к данным. Система классов также обеспечивает
построения различных связей между записями, даже таких, которые не обеспечиваются
сетевой моделью в RDM. Так, RDM предлагает связность между объектами БД максимального
уровня 1:М, а в ROM обеспечивается возможность самых высоких уровней сетевых
моделей БД - N:M. В настоящее время ROM не поставляется в качестве
отдельного программного продукта, а является составной частью продуктов RDM++
и Velocis СУБД. Для тех, кто ранее был знаком с данным продуктом, напомним
его прежнее название - Vista++.
Рассмотренные программные продукты Centura/Raima обладают рядом положительных
свойств, которые привлекательны руководителям групп разработчиков и программистам,
создающим сложные информационные системы. Отметим эти свойства:
- Прекрасно подготовленная документация по всем продуктам: RDM, Velocis и
ROM. Документация представляется в формате файлов PDF и может оперативно использоваться
прямо на компьютере в процессе разработки и отладки программных систем. В
документации рассматриваются примеры, которые входят в дистрибуцию программных
продуктов, поэтому процесс обучения максимально прост.
- Программные продукты Centura/Raima заинтересуют как сторонников процедурного
подхода к программированию (а таких еще много), так и объектно-ориентирован-ного.
И тем и другим обеспечивается полнофункциональный интерфейс для построения
приложений (RDM и ROM соответственно).
- При построении сложных программных систем продуктами обеспечивается возможность
одновременной работы многих пользователей, работы пользователя с разными базами
данных одновременно, определении разных задач доступа (Task).
- В СУБД RDM и Velocis предусмотрены все необходимые элементы работы с базами
данных, в частности, поддержка транзакций, ключи, индексы, защита записей,
шифрование информации, поддержка иностранных языков, оптимизация запросов
и так далее. Эти свойства СУБД делают их конкурентноспособными в своей области.
- Программистам наверняка понравятся легко запоминаемые названия функций,
которых немало в системах. Группы функций рассчитаны на все необходимые случаи:
по манипулированию данными, по администрированию БД, функции доступа с SQL
запросами, для работы с каталогами и многие другие. Кроме того, не закрыта
возможность применения функций универсальных языков программирования, так
как новые названия функций продуктов по мнемонике не могут пересекаться с
существующими (введена префиксация). Поставка вместе с программными продуктами
исходных текстов систем также привлекательна для разработчиков.
- Для описания БД предусмотрен специальный язык (DDL), на котором легко описываются
отдельные записи, ключевые поля, связи записей. В языке DDL пользователю предоставляется
возможность определять расположение записей, индексов и связей в файловой
системе. Это помогает ему выбрать наилучшую конфигурацию хранения данных в
зависимости от характера его задач. Для SQL БД предлагается язык описания
и создания БД соответствующий стандарту SQL. Специальные утилиты генерируют
структуры БД и обеспечивают их заполнение.
- В системах предусматривается автоматическое ведение системных журналов,
в которых фиксируются события и операции с данными. Эти журналы могут быть
отключены только системным администратором.
Высокий профессионализм программных продуктов Centura/Raima обеспечивает в конечном
итоге высокую профессиональность разрабатываемых на их основе приложений. Сочетание
SQL и NON SQL технологий, высокая производительность и универсальность одновременно,
развитые механизмы описания БД и манипулирования данными, а также поддержка практически
всех известных платформ позволяет считать, что продукты Centura/Raima могут стать
основой для создания нового поколения информационных систем в своей области.
Дополнительная информация: