RDM Server

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 18:00, 30 января 2019.
RDM Server
Raima.png
Создатели: Raima
Разработчики: Birdstep Technology, Inc
Выпущена: 1993
Постоянный выпуск: 8.4
Предыдущий выпуск: 8.1
Состояние разработки: Active
Написана на: C++ (язык программирования)
Операционная система: Windows,Linux
Платформа: X86-64
Локализация: Английский язык
Тип ПО: DBMS (Database Management System)
Лицензия: Commercial license
Веб-сайт www.raima.com/products/rdms

RDM Server — это мощный, гибкий и при этом компактный межплатформенный сервер баз данных, спроектированный для приложений, к которым предъявляются высокие требования по производительности. RDM Server предназначен для приложений уровня предприятия, требующих высокой производительности сервера и используемых для электронного бизнеса, Web и Интернет-инфраструктур. СУБД поддерживает SQL, симметричную мультипроцессорную обработку и низкоуровневые интерфейсы прикладного программирования (API). [Источник 1]

История

Корпорация Raima, основанная в 1982 году в Рентоне, штат Вашингтон, начала работать над продуктом db_Vista, предусматривающим создание высокопроизводительной встроенной базы данных с нулевым администрированием. Продукт db_Vista был впервые выпущен в 1984 году, а к 1988 году вышел его третий основной релиз. Позже он был переименован в Raima Database Manager или RDM. Популярность продукта возросла, и, чтобы идти в ногу с растущей архитектурой клиент-сервер, Raima выпустила Velocis, клиент-серверную версию RDM, в 1993 году. Позднее Velocis был переименован в RDM Server. Raima была приобретена Centura Software Corporation в 1999 году. В 2000 году Centura Software решила выпустить версию RDM Embedded с открытым исходным кодом, названную db.*. Для операционной системы Linux продукт назывался db.linux. В 2001 году норвежская компания Birdstep Technology ASA приобрела активы Raima и с тех пор выпустила 3 основных выпуска RDM Server. Последней версией RDM Server является версия 8.4. [Источник 2]

Особенности продукта

Основные преимущества

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

  • Быстрый поиск локальных данных наряду с привычным доступом к базам данных архитектуры клиент-сервер, SQL и ODBC (Open Database Connectivity) .
  • Высокая производительность, достигаемая за счет применения связанных процессов, которые не исключают возможности удаленного обращения к процедурам со стороны SQL, ODBC (Open Database Connectivity) и прочих традиционных клиентов.
  • Возможность применения архитектурных моделей на основе браузера или “тонкого клиента” [1] – при этом требуемые приложением вычисления могут выполняться непосредственно на сервере базы данных.
  • Поддержка передового аппаратного обеспечения и операционных систем (например, симметричных мультипроцессорных серверов и многопоточных операционных систем, таких как Linux и Windows NT).
  • Богатые технические возможности и поддержка стандартов.
  • Минимальные требования к объему ОЗУ и дискового пространства, а также возможность для установки в любое приложение.

Соответствия требованиям современного бизнеса

RDM Server отвечает требованиям, предъявляемым сегодня бизнесом к встроенным платформам для БД. Они должны быть масштабируемыми, надежными и всегда готовыми к работе. RDM Server в полной мере обладает всеми названными качествами. За данным продуктом стоит 10 лет упорного труда экспертов, этим и объясняется его высокая производительность и надежность. Используя RDM Server, стоит отметить, что приложения, входящие в его состав, справятся с пиковой нагрузкой при обработке большого объема пользовательских данных и значений транзакций. Автоматическая система восстановления позволяет добиться целостности данных. [Источник 3]

Производительность, масштабируемость и целостность данных

RDM Server заслужил хорошую репутацию благодаря своим расширенным возможностям. В их числе поддержка симметричных мультипроцессорных серверов и возможность создания собственных многопоточных серверов БД, адаптированных под конкретное приложение. В RDM Server поддерживается Клиент-серверная архитектура, которая подразумевает связь между сервером и приложениями с помощью удаленных вызовов процедур и специализированных серверных расширений. В версии 3.5 уже реализована более эффективная альтернатива, позволяющая обойтись без “связующего звена” и подключаться к веб-серверу напрямую. Таким образом, в ходе разработки многопоточных приложений можно добиться более эффективного и быстрого доступа к информации, хранящейся в базе данных. На рисунке 1 представлена схема RDM Server, в которой реализованы взаимосвязи между основными компонентами.

Рисунок 1 – Структура RDM-сервера

Системные требования

Спецификации базы данных

Использование ресурсов даже такой масштабной системы, как RDM Server, накладывает некоторые ограничения, необходимые для нормальной работы системы. Ниже приведены требования для данных:

  • Максимальный размер базы данных: 70 квадриллионов байт
  • Максимальное количество ключей: 18 квинтиллионов на столбец
  • Максимальное количество рядов: 18 квинтиллионов на таблицу
  • Максимальное количество открытых файлов: без жесткого ограничения
  • Максимальный размер стола: 32K x 18 квинтиллионов = 576 EB

Поддерживаемые интерфейсы

Поскольку RDM Server поддерживает кроссплатформенность, RDM Server имеет совместимость со следующими интерфейсами:

  • ADO.Net.
  • PHP.
  • ODBC 3.51.
  • Type 4, JDBC 3.0 и 4.0.
  • Ядро (Cи/Cи++).

Наиболее распространённым интерфейсом является Ядро (Си/С++).

Поддерживаемые стандарты

За прошедшие 26 лет после создания RDM Server в 1993 году, разработчики совместили свой продукты с многими стандартами. Ниже приведены наиболее известные и актуальные из них.

  • ANSI SQL-89 Уровень 2
  • Частичный ANSI SQL-92
  • Unicode
  • ADO.NET
  • ODBC v3.51
  • Тип 4, JDBC 3.0 и 4.0
  • Тип 4, JDBC 3.0 и 4.0
  • XML (eXtensible Markup Language)

Совместимость поставщиков данных и драйверов

Разработчикам драйвером для RDM Server следует учитывать, какое программное обеспечение стоит использовать:

  • Поставщик данных ADO.Net 1.0
  • JDBC 4 Тип 4 Драйвер
  • ODBC 3.5 Драйвер

Поддерживаемые типы данных

RDM Server является сложным компактным межплатформенным сервером баз данных, поэтому данная система позволяет программисту работать со следующими типами данных:

  • Массивы, до трех измерений.
  • Auto-Increment.
  • BLOB.
  • Character
  • Date.
  • ROWID.
  • Decimal.
  • Double Byte Character.
  • Float.
  • 64, 32, 16, 8-битное целое число Integer (tinyint, interger, bigint).
  • Numeric.
  • Time.
  • Timestamp.
  • Определяемые пользователем типы данных.
  • Определяемые пользователем скалярные и агрегатные функции.

Расширяемость

За прошедшие годы эксплуатации, разработчики выявили некоторые уязвимости и недостатки системы. Также были введены в использование некоторые особенности:

  • Модули расширения.
  • Определяемые пользователем скалярные и агрегатные функции.
  • Определяемые пользователем процедуры.
  • Определяемые пользователем сравнения.
  • Фильтры импорта и экспорта.
  • Подключаемые модули журналирования транзакций.

Поддержка операционных систем

Реализуя выше приведенное свойсто кроссплатформенности, пользователь могут использовать RDM Server на множестве операционных систем. Ниже приведён список операционных систем, которые может использовать пользователь, дабы RDM Server функционировал.

  • AIX 5.2 - PowerPC 6xx/7xx/9xx (32-разрядный режим).
  • AIX 5.3 - PowerPC 6xx/7xx/9xx (32-разрядный режим).
  • FreeBSD 6.1- x86.
  • HPUX 11.0 - PA-RISC (32-разрядный и 64-разрядный режим).
  • HPUX 11i v1 - PA-RISC (32-разрядный и 64-разрядный режим).
  • HPUX 11i v2 - PA-RISC (32-разрядный и 64-разрядный режим).
  • HPUX 11i v2 - Itanium 2 (32-разрядный и 64-разрядный режим).
  • HPUX 11i v3 - PA-RISC (32-разрядный и 64-разрядный режим).
  • HPUX 11i v3 - Itanium 2 (32-разрядный и 64-разрядный режим).
  • Solaris 9 - SPARC / UltraSPARC (32-разрядный и 64-разрядный режим).
  • Solaris 10 - SPARC / UltraSPARC (32-разрядный и 64-разрядный режим).
  • Red Hat Enterprise Linux v4.0 - x86 / x86-EMT64.
  • Red Hat Enterprise Linux v5.0 - x86 / x86-EMT64.
  • Windows XP - x86 / x86-EMT64.
  • Windows Server 2003 - x86 / x86-EMT64.
  • Windows Vista Ultimate - x86.
  • QNX Neutrino 6.3 - x86.

Поддерживаемые сети

Реализация RDM Server позволяет использовать для взаимодействия между компонентами сервера несколько видов поддерживаемых сетей. Данное решение было принято с целью повышения надёжности и отказоустойчивости системы. Ниже приведены используемые сети.

  • Совместно используемая память.
  • TCP/IP (Transmission Control Protocol/Internet Protocol)
  • Windows-сокеты.
  • Доменные сокеты UNIX.
  • Именованные каналы Win 32.
  • Одновременная поддержка нескольких протоколов (клиент и сервер).

API и языки разработки

C API - это обширная библиотека функций для всех операций с базой данных. Поддерживаются временные метки, контроль транзакций, конфигурация базы данных, навигация по данным и изменения данных. С API представляет собой обширную библиотечную функцию для всех операций администрирования базы данных, таких как вход в систему, резервное копирование, дефрагментация, проверки согласованности и т.д. SQL API реализован как интерфейс SAG CLI, предоставляющий доступ к поддерживаемому стандарту SQL92. Все эти API доступны как часть клиентских библиотек или как часть серверных библиотек в режиме связанных приложений. Более того, RDM Server имеет полную поддержку ODBC v3.51, JDBC v3 и v4 , ADO.Net и PHP. Поэтому RDM Server поддерживает приложения C, C++. [Источник 4]

Дополнительные возможности

Гибридная система хранения данных

Серверы баз данных могут быть резидентными или гибридными. Язык определения данных (DDL) поддерживает смешивание различных типов хранилищ для оптимизации производительности и управления сохранностью данных.

Репликация

Активная или пассивная репликация поддерживает идентичную копию базы данных для восстановления после сбоя приложения. Подсистема реализует асинхронный единый мастер, много-подчиненный механизм репликации на основе своих клиент-серверных архитектурных моделей (включая TCP/IP (Transmission Control Protocol/Internet Protocol)).

Серверные расширения: пользовательский код

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

Целостность данных

Модель транзакций ACID используется для обеспечения целостности и надежности данных, гарантируя, что образ базы данных всегда находится в читаемом и не поврежденном состоянии. Тем не менее, приложение может ослабить некоторые свойства для повышения производительности. Блокировки на уровне таблиц и строк реализованы и могут управляться приложением для управления одновременным доступом к любой базе данных. [Источник 5]

Примечания

Источники

  1. Описание RDM Server // interface [2002-2014]. Дата обновления 16.10.2011. URL: http://www.interface.ru/birdstep/RDM_server.htm (дата обращения: 02.01.2019)
  2. RDM Server // academic [2000-2019]. Дата обновления 22.02.2010. URL: http://en.academic.ru/dic.nsf/enwiki/8433664 (дата обращения: 05.01.2019)
  3. Описание RDM Server // interface [2002-2014]. Дата обновления 16.10.2011. URL: http://www.interface.ru/birdstep/RDM_server.htm (дата обращения: 05.01.2019)
  4. RDM Server // academic [2000-2019]. Дата обновления 22.02.2010. URL: http://en.academic.ru/dic.nsf/enwiki/8433664 (дата обращения: 05.01.2019)
  5. RDM Server // raima [2000-2019]. Дата обновления 12.04.2010. URL: https://raima.com/rdm-server/ (дата обращения: 05.01.2019)

Ссылки