- DBMS -
Home page NIKA_ROOT ЛИТЕРАТУРА 77 => СУБД НИКА =>
НИКА
    НИКА
    ОписаниеР-Т 
    Система НИКА [5] разработана в ИСА РАН, предназ-
    начена для работы на IBM-совместимых ПЭВМ. Она включает не
    только собственно СУБД, но и интерфейс прикладного програм-
    мирования, а также развитые средства окружения, позволяющие
    существенным образом сократить затраты на создание конкрет-
    ных приложений.
         
    Основные функциональные компоненты системы НИКА, реали-
    зованной на языке "C", — интегрированная среда, функциониру-
    ющая в интерактивном режиме, и библиотека функций, обеспечи-
    вающая интерфейс прикладного программирования на языке "C".
         Система НИКА предназначена для работы с базами данных
    иерархической древовидной структуры. Между вершинами таких
    деревьев с помощью указателей могут поддерживаться бинарные
    связи, образуя тем самым сетевые структуры данных.
         Объекты данных, соответствующих вершинам дерева струк-
    туры данных, могут быть простого либо составного типа. Весь-
    ма заманчивой представляется возможность использования также
    и любой суперпозиции простых и составных типов данных.
         К числу поддерживаемых системой простых типов данных
    относятся целые числа длиной 1, 2 или 4 байта; числа с пла-
    вающей точкой одинарной и двойной точности; литерные строки
    (в системе — "тексты") длиной до 256 байт; значения даты и
    времени; последовательности байтов длиной до 16 млрд, кото-
    рые могут использоваться для представления данных произволь-
    ной природы, например графических образов.
         Данные составных типов включают структуры, объединения
    и массивы. Структура представляет собой совокупность фикси-
    рованного числа объектов данных произвольных типов. Объеди-
    нение — это такой объект, значение которого в каждый момент
    времени представляется одним из заданного множества альтер-
    нативных объектов данных. Массив — это совокупность неопре-
    деленного числа скалярных величин или структур данных одного
    типа. Структуры, входящие в состав массива, должны обладать
    уникальным в пределах данного массива идентификатором (клю-
    чом). Роль ключа должен при этом играть один из элементов
    данных структуры, имеющий простой тип.
         Наряду с иерархическими связями между объектами данных,
    материализуемыми в форме составных типов данных, в системе
    НИКА, как уже отмечалось, могут поддерживаться бинарные свя-
    зи между объектами, представляющими вершины сети. Такие свя-
    зи материализуются в форме специального типа данных, называ-
    емого указателем на данные.
         В системе используется также другой тип указателей, на-
    зываемый указателем на шаблон. Такие указатели не являются
    особым типом данных. Они служат средством "стенографии" —
    экономичной записи описания структуры объекта данных, позво-
    ляющим избежать повторения уже существующих конструкций в
    описаниях других ранее определенных объектов. Указатели на
    шаблон позволяют, кроме того, описывать рекурсивные структу-
    ры данных.
         Для хранения базы данных в системе используются два
    файла: в одном из них хранится описание базы данных, в дру-
    гом — собственно данные. Оба файла организованы в соответс-
    твии с разработанным авторами методом доступа TREE.
         Структура файла описания данных (дерево описания дан-
    ных) однозначно определяется заданной структурой базы данных

    — иерархией типов объектов в схеме базы данных. Именно опи-
    сатели типов объектов, входящих в базу данных, являются
    здесь структурообразующими "строительными блоками". Дерево
    описания данных может иметь произвольную глубину.
         Структура файла хранимых данных (дерево данных) также в
    точности определяется заданной структурой базы данных. Каж-
    дой вершине дерева данных ставится в соответствие совокуп-
    ность, состоящая из идентифицирующего эту вершину ключа и
    некоторого объекта данных, относящегося к одному из допусти-
    мых в системе типов. Таким образом, структурообразующими
    конструкциями здесь служат "экземпляры" объектов данных, ти-
    пы которых связаны с соответствующими вершинами в дереве
    описания данных.
         Поскольку каждой вершине в дереве описания данных соот-
    ветствует, вообще говоря, несколько экземпляров объектов ас-
    социированного с ней типа в дереве данных, "плоская" струк-
    тура дерева описания данных превращается в "пространствен-
    ную" структуру дерева данных. Объем хранимых данных ограни-
    чивается при этом только размером доступного пространства
    памяти.
         Пространство памяти базы данных также организуется в
    виде дерева, вершинами которого являются страницы (блоки)
    пространства. Отображение хранимых данных в пространство па-
    мяти осуществляется при этом таким образом, что каждое под-
    дерево структуры данных хранится в соответствующем поддереве
    страниц пространства.
         Благодаря такому принципу размещения данных минимизиру-
    ется число обменов с диском при последовательном просмотре
    поддерева данных. Механизм индексирования позволяет осущест-
    влять быстрый поиск требуемой вершины во всем множестве вер-
    шин, подчиненных данной.
         Интерактивная среда системы управляется разветвленным
    многоуровневым ирархическим системным меню. Она обеспечивает
    создание базы данных, форм входных и выходных документов,
    спецификацию ограничений целостности данных, ввод и редакти-
    рование данных, спецификацию и обработку пользовательских
    запросов, вывод результатов пользователю с автоматической
    генерацией форм отчетов и, наконец, выполнение ряда функций
    администрирования данными, например реструктуризации базы
    данных.
         Структура создаваемой базы данных специфицируется в
    графическом виде средствами интерактивного графического ин-
    терфейса. На этой основе генерируется концептуальная схема
    базы данных, запоминаемая в словаре-справочнике данных сис-
    темы, а также схема хранения. С помощью этого же интерфейса
    можно просматривать структуру существующей базы данных и
    осуществлять при необходимости ее реструктуризацию.
         В системе НИКА предусматривается автоматическое измене-
    ние структуры хранимых данных при изменениях структуры базы
    данных. Таким образом, при выполнении функции реструктуриза-
    ции базы данных перезагрузка базы данных не требуется.
         Ввод и редактирование данных могут осуществляться с по-
    мощью форм документов, специфицируемых пользователем
    или автоматически генерируемых системой по умолчанию, либо в
    табличном виде. Формы документов конструируются в режиме
    WYSIWYG. Экранный редактор позволяет изобразить нужную форму
    документа на экране и задать описание содержания и способы
    представления ее элементов.
         Система располагает интегрированным словарем-справочни-
    ком данных. Спецификация схемы базы данных осуществляется
    средствами диалогового графического интерфейса. При этом для
    доступа к данным в базе данных и для доступа к метаданным в
    словаре-справочнике используются единые системные механизмы.
         Библиотека интерфейса прикладного программирования пре-
    дусматривает совокупность функций для выполнения операций
    как над данными базы данных, так и над метаданными. Операции
    манипулирования данными могут быть выполнены в "C"-программе
    путем обращения к соответствующим библиотечным функциям.
         К числу функций манипулирования данными относятся отк-
    рытие и закрытие базы данных, навигации в базе данных и вы-
    полнения заданного действия в текущей вершине.
         Операции открытия и закрытия базы данных имеют традици-
    онный смысл. Навигация в базе данных осуществляется путем
    спецификации требуемых "элементарных движений": переход на
    данном уровне к первой, последней, предыдущей, следующей
    вершине или к вершине с заданным ключом; переход к первой
    либо последней подчиненной вершине или к подчиненной вершине
    с заданным ключом; переход к корневой вершине, вверх на один
    уровень или к вершине заданного уровня.
         По отношению к текущей вершине могут выполняться следу-
    ющие действия: прочитать ключ (имя вершины) и/или значение
    данных, создать вершину с заданным ключом (именем) и/или за-
    помнить (обновить) значение данных, удалить вершину или зна-
    чение данных. При выполнении операций чтения данных из базы
    данных в заданные переменные и запоминания в базе данных
    значений заданных переменных автоматически осуществляются
    необходимые преобразования типов данных.
         Предусмотрена возможность копирования и переноса фраг-
    ментов структуры базы данных из одного места в другое. Копи-
    роваться могут объекты данных как простых, так и составных
    типов. Перенос данных, в отличие от копирования, ликвидирует
    объект — источник данных.
         Библиотека интерфейса прикладного программирования сис-
    темы НИКА включает также ряд вспомогательных функций, облег-
    чающих отладку разрабатываемых программ. К ним относятся
    функции включения и выключения трассировки, установки уровня
    выводимых пользователю сообщений об ошибках и ряд других
    функций.
         Включение режима трассировки приводит к выдаче при каж-
    дом "элементарном движении" сообщения, содержащего сведения
    о структуре объекта данных, над которым производятся опера-
    ции, характере движения, об идентификации текущей вершины и
    ее уровне в базе данных.
         В системе НИКА предусмотрены механизмы поддержки огра-
    ничений целостности данных, а также средства журнализации
    производимых в базе данных изменений, обеспечивающие возмож-
    ность ее восстановления при разрушении.
         Помимо основных функциональных компонентов, система
    располагает комплексом средств окружения. В его состав вхо-
    дят средства экспорта-импорта данных с использованием файлов
    в формате dBase-совместимых систем и в специальном переда-
    точном формате для обмена данными между системами НИКА и
    ИНЕС, а также между различными базами данных системы НИКА.
         Окружение системы включает, кроме того, генератор отче-
    тов и редактор макетов форм, позволяющий создавать и коррек-
    тировать формы документов для ввода и вывода данных. Предус-
    мотрены также средства генерации структуры базы данных по
    совокупности заданных форм входных документов и генерации
    формы выходного документа для выдачи значения заданного объ-
    екта базы данных в соответствии с определением его структуры
    в схеме базы данных (система МАГИС [77]).
    сетевая с выделенной иерархией
    ПУБЛИКАЦИИ ЛИТЕРАТУРА 
    ОС 
    ПолявЗап=не огр. 
    ОперативПамять=400KB 
    SQL=н 
    Стоимость=$595 
    ПРОДАЖИ 
    Особенности-Т 
    Типовополная модель данных, нет ограничений на глубину
    вложенности массивов и структур, число полей в структурах.
    Возможность хранения как информации любых принятых типов,
    так и неструктурированной (графика, звук и т.п.).
    Широкие возможности изменения схемы без перезагрузки БД.
    Произвольные сложноструктурированные входные и выходные формы.
    Многоуровневые индексные справочные и поиск документов на
    любом уровне иерархии.КОМПАНИИ 
    ОБЛАСТИ_ПРИМЕНЕНИЯ 
    Примечания-Т 
    Лицензионно чистый продукт, разработан в СССР.
    Имеются русский и английский варианты пакета.