Сервер баз данных Borland Inter. Base Каждый пользователь Delphi получает в свое распоряжение его версию для платформы Windows. Практически половина из них корпоративные разработчики, ориентирующиеся на версию Delphi ClientServer, включающую однопользовательский вариант Local Inter. Base и полнофункциональный многопользовательский сервер сейчас это Borland Inter. Base 4. 2 for Windows 9. NT. Сервером Inter. Base комплектуются и другие инструментальные пакеты Intra. Builder и Borland CBuilder, по праву называемый. Devrace-FIBPlus-for-Borland-InterBase-and-Firebird_105673g.jpg' alt='Borland Interbase' title='Borland Interbase' />InterBase SQL Server это система управления базами данных изначально разработана компанией Borland. В настоящее время. По разным оценкам, 2. Inter. Base. Что же представляет собой Inter. Base и почему пользователи так неравнодушны к. Развитие этого продукта шло следующими этапами 1. Inter. Base на свет уже есть поддержка больших двоичных данных BLOB, многомерных массивов Arrays, определяемых пользователем функций UDF, генераторов, множественных поколений данных и метаданных MGA 1. Sparse Bit Mapped Indexes, сигнализаторы событий 1. Shadowing 1. 98. Domain 1. Phase Commit, исключительные ситуации, обновляемые виды, двунаправленные курсоры 1. БД. Сегодня сервер баз данных Borland Inter. Borland InterBase 7. InterBase 7. 5 представляет. Установка лицензий 7. Server и Unlimited Users регистрируется в базе данных Borland, привязывается к конкретному компьютеру и допускает не. Base функционирует более чем на 1. SMP для таких платформ, как Solaris 2. HP UX 1. 0. 0. 1, AIX 4. Power. PC, AIX 3. RS6. 00. 0, SGI IRIX 5. DGUX, 3. 1. 03. K, NCR 2. SCO Open Server 5. При этом Inter. Base корректно работает на всех этих платформах, базируется на стандарте ANSI SQL 9. UNICODE Cyrillic DOS8. Win. 12. 51, UNIX. Файлы баз данных Inter. Base строятся по принципу черных ящиков black box, т. Borland Interbase' title='Borland Interbase' />Архитектура множественных поколений записей MGA Multi Generational Architecture предлагает решение одной из наиболее насущных проблем RDBMS проблемы блокирования доступа к данным. Встроенный в Inter. Base механизм многоверсионности данных предотвращает блокировки по чтению. При старте транзакций чтения и записи создаются. Соответственно освободившееся после их использования пространство может быть использовано для хранения новых данных или их версий. Для обеспечения оптимального заполнения освободившегося пространства в Inter. Base есть дополнительный механизм. Borland Interbase' title='Borland Interbase' />Он также берет на себя функции очистки пространства, занятого под версии записей, оставшихся после отката транзакций. Поскольку операции удаления записей могут быть отменены, вместо физического удаления записей сервер Inter. Base лишь помечает их как удаленные. Важно отметить, что следующая транзакция, стартовавшая после освобождения ненужных версий, выполняет не только возложенные на нее функции, но и запускает механизмы сборки мусора, оставшегося после предыдущих транзакций. Обсуждение многоверсионности может превратиться в целую монографию. Подход, предлагаемый Inter. Base, до сих пор остается уникальным, несмотря на свой солидный возраст. Поскольку эта тема слишком велика, отмечу лишь, что технология. Это возможно благодаря тому, что исчезает необходимость в хранении и поддержании журнальных файлов. Кстати, при активном блокировочном доступе их размер может составлять до 1. Говоря о MGA, вспомним, что для реализации систем поддержки принятия решений DSS Decision Support Systems и анализа данных в режиме реального времени OLAP, необходимо обеспечивать непротиворечивость данных для достаточно длительных по сравнению с операциями добавления данных транзакций на фоне обновления БД. Именно в таких сложных задачах Inter. Borland Interbase' title='Borland Interbase' />Base и проявил себя особенно хорошо на Бостонской бирже, в проекте Magnavox в вооруженных силах США и т. Во многом из за таких возможностей ограничение на ввоз Inter. Base в бывший СССР было снято одним из последних. Использование MGA обеспечивает и такие положительные. Не это ли действительно работа Особенно на фоне быстрого восстановления БД без вмешательства администратора баз данных. Технология MGA не остановилась в развитии. Одним из важных расширений, введенных в последней версии Inter. Base 4. 2, является возможность изменения метаданных без останова сервера, т. Inter. Base 1. 98. SQL в качестве полнофункционального стандарта. Для придания динамичности в Inter. Base использовался специально разработанный язык GDML, так как возможностей SQL не хватало, а процедурные расширения были лишь экспериментами. Однако с развитием SQL, и особенно SQL 9. Триггеры и хранимые процедуры. Inter. Base не ограничивает разработчиков при использовании таких процедурных расширений, как триггеры, и позволяет применять в их теле функции, определяемые пользователем, UDF Users Defined Functions. Возможность создания UDF является чрезвычайно мощным средством обеспечения высокопроизводительных расширений функциональности. Представляя собой динамические библиотеки DDL в случае Windows, линкуемые к ядру сервера Inter. Base, UDF обеспечивают максимально высокую производительность. Обычно UDF создаются на так называемых host языках. Как правило, для обеспечения лучшей переносимости кода между платформами используется язык Cи. Очевидно, что в качестве родного средства для написания UDF может выступать всякий компилируемый язык. В качестве доказательства этого читатель может найти в Internet большое количество библиотек, созданных на Delphi. Среди российских разработок отметим пакет UDFDemo Tech yourself UDF programming in 2. Текстура Белого Пластика далее. Олегом Кукарцевым. Для полной переносимости требуется, чтобы и расширения были переносимы. При всей популярности Cи с этой задачей он не очень то справляется. Напрашивается вопрос не Java ли будет следующим шагом Говорить об этом пока рано. Лучше подождем следующей версии Inter. Base, благо версия 4. Механизм 2. PCМеханизм 2. PC Two Phase Commit двухфазная фиксация транзакций предназначен для автоматического контроля транзакций, задействующих несколько баз данных. Например, если при попытке закрепления commit завершенной транзакции хотя бы одна база данных генерирует исключительную ситуацию Exceptions исключительные ситуации также поддерживаются Inter. Base или не может произвести действия в рамках этой транзакции, то все операции, произошедшие во время транзакции, отменяются или откатываются rollback для всех задействованных в ней базах данных. Сигнализаторы событий. Существует и запатентованный секрет сигнализаторы событий event alerters, часто называемые уведомителями. Представим себе следующую задачу необходимо контролировать критический производственный процесс, обеспечивая сбор и анализ телеметрических данных, постоянно отслеживая величину факторов риска. Что предлагают для решения таких задач традиционные РСУБД Постоянно опрашивать необходимые столбцы таблиц, чтобы знать о выполнении определенных условий, или ограничиться выполнением конструкций в рамках языка манипулирования данными Data Manipulation Language. Но как поставить в известность пользователя о наступлении неблагоприятных факторов В данном случае поставщики серверов баз данных предпочитают переложить груз проблем на разработчиков. А применение сигнализаторов событий обеспечивает выполнение клиентских косвенно вызываемых функций callback по наступлении описанных метаданными событий, на которые тот или иной пользователь События могут организовывать очередь. Для обработки очередей событий Inter. Base также предоставляет специальный API. Строгие правила. Динамичность и активное ядро прекрасные средства. Но они померкли бы, если бы в Inter. Base не было строгих правил декларативной поддержки ссылочной целостности. Такие правила в Inter. Base присутствуют на уровне SQL 9. Entry Level входной уровень. Так называемые Integrity constraints поддерживают SQL конструкции PRIMARY KEY, UNIQUE, FOREIGN KEY. Разрешаются атрибуты NOT NULL, значения по умолчанию и определения, среди которых могут быть даже определения CHARACTER SET и CHECK. Некоторые перечисленные правила используются при определении таблицы в следующем примере CREATE TABLE JOB. JOB. Домены чем то напоминают шаблоны, по которым описываются столбцы конкретных таблиц. Причем эти шаблоны могут включать проверки not NULL и другие ограничения. Поддержка доменов в Inter. Base соответствует стандарту ANSI SQL 9.