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 могут стать основой для создания нового
поколения информационных систем в своей области.
Дополнительная информация: