Введение

Linux-основанный, с открытым исходным кодом, набор переносимого программного обеспечения.

Многомерный иерархический инструментарий, или Многомерный и Иерархический (MDH) инструментарий баз данных – это набор переносимого программного обеспечения на основе Linux, с открытым исходным кодом, обеспечивающий высокоскоростное, гибкое, многомерное и иерархическое хранение, извлечение и обработку информации в базах данных объемом до 256 терабайт. Пакет написан на языках C и C++ и доступен в виде исходного кода под лицензиями GNU GPL/LGPL/Free Documentation. В комплект поставки входят демонстрационные реализации сетевых интерактивных инструментов для извлечения текста и последовательностей, работающих с очень большими геномными базами данных и демонстрирующих возможности инструментария для обработки огромных массивов геномных данных.

Распространение

Инструментарий распространяется вместе с компилятором Mumps. Доступны версии для Linux, Cygwin и Windows XP.

Происхождение

Инструментарий представляет собой решение проблемы обработки очень больших, многомерных, разреженных матриц, индексированных строками символов. Он основан на MUMPS (также известном как M), языке программирования общего назначения, разработанном в середине 60-х годов в Массачусетской общей больнице.

Основные особенности

Основной функцией базы данных в этом проекте является глобальный массив, обеспечивающий прямой и эффективный доступ к многомерным массивам практически неограниченного размера. Глобальный массив – это постоянная, разреженная, неявная, многомерная структура данных, индексируемая строками и хранящаяся на диске. Глобальный массив может использоваться везде, где допустима обычная ссылка на массив, а данные могут храниться как в конечных, так и в промежуточных узлах структуры базы данных. Количество индексов в ссылке на массив ограничено только общей длиной этой ссылки, при этом все индексы преобразуются в строковые значения. Пакет инструментов включает несколько функций для обхода базы данных и манипулирования массивами. Пакет инструментов предоставляет базу данных и набор функций в виде классов C++ и также позволяет интерпретировать устаревшие скрипты Mumps. Для использования пакета инструментов необходимо установить дистрибутив MDH и Mumps, а также сопутствующий код.

Реализованные функции

Инструментарий реализует устаревшие функции Mumps: $ascii, $extract, $find, $length, $name, $justify, $order, $piece и $test, а также векторные и матричные операции, функции алгоритма поиска строк Бойера — Мура — Госпера, функцию алгоритма Смита — Ватермана, операции реляционной алгебры и доступ к библиотеке Perl Compatible Regular Expressions (PCRE).