Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - Btrieve - Версии24 апреля 2011Оглавление: 1. Btrieve 2. Архитектура 3. История 4. Версии Btrieve для DOSСуществовала одна клиентская конфигурация Btrieve для DOS, созданная в SoftCraft. Их фирменное определение понятия «клиентский» звучало так: «Ядро Btrieve, исполняющееся на отдельной рабочей станции». То есть ядро менеджера записей взаимодействовало с файлами данных напрямую, через вызовы операционной системы, и изменяло записи единообразно, вне зависимости от того, находились ли файлы локально или на сетевом ресурсе. Такое «клиентское» ядро позволяло одновременно работать с БД пяти конкурирующим пользователям. Все манипуляции с записями проводились локально, на той рабочей станции, на которой работало ядро СУБД. Btrieve для DOS могла использовать обе стратегии совместного доступа к файлам. Btrieve для NetwareBtrieve для Netware, по существу, была той же Btrieve для DOS с некоторыми дополнительными возможностями, доступными в то время только на Netware. На файловом сервере запускался процесс Для передачи запросов ввода/вывода данных из/в БД, на клиентских рабочих станциях использовались т. н. реквесторы, доступные для DOS, OS/2, Microsoft Windows и UnixWare. Программа Процесс Btrieve для Netware использовала те же стратеги SEFS и MEFS для совместного доступа к файлам, что и под DOS, но поскольку могла функционировать в сети, то могла поддерживать как эксклюзивные, так и конкурирующие транзакции. Btrieve для WindowsBtrieve для Windows появилась до того, как компания переписала основной код СУБД с использованием MKDE. В ней использовались SEFS и MEFS механизмы совместного использования файлов, механизм shadow-paging, эксклюзивные и конкурирующие блокировки. Файлы версий 6.x и 6.1 обрабатывались различным образом: в файлах версии 6.x возможно было оперировать фрагментами записей, вместо блокировки всей записи целиком; допускались записи более 64KB; были реализованы variable-tail allocation table, Alternate Collating Sequence и новые типы данных; разрешались долевые операции; разрешались дублирующиеся поисковые ключи. В версии 6.x появилась возможность добавлять и удалять любые индексы «на лету». Файлы версии 6.1 поддерживали конкурентные и системные транзакции; возможность перенумерации ключей; нечувствительные к регистру ACS-таблицы и усовершенствованные операции блокировок. Btrieve для Windows могла работать как клиент БД использующей SEFS или MEFS режимы, или могла напрямую работать с сервером Btrieve. Клиентский BtrieveДля клиентской Btrieve все файлы БД находились либо на локальном компьютере, либо на сетевом диске, подключённом в этому компьютеру. Приложение выполняло вызовы функций библиотеки Доступ из клиентского Btrieve к серверномуКлиентская версия Btrieve для Windows могла обращаться к серверной через специальный реквестор для DOS. Этот реквестор требовал использования DPMI, который обеспечивал программы доступом к расширенной памяти, доступной только через защищённый режим процессоров x86. Также как и в случае клиентского интерфейса, Btrieve приложение выполняло вызов к библиотеке Btrieve для Windows NT/Windows 95Btrieve для Windows NT и Windows 95 была выпущена в 1995 году, вместе с Btrieve для Netware и для Windows NT Server. Номер версии достиг 6.15 и началось использование микроядерной акрхитектуры. Механизмы совместного использования файлов остались те же; использовалось shadow-paging, поддерживались эксклюзивные и конкурирующие блокировки. Эта версия Btrieve разрешала использование null для ключей, что позволяло вносить записи в БД даже если ключевая информация отсутствует. Такие ключи не участвовали в индексировании, что сокращало бесполезный поиск по индексу в БД. В этой же версии была введена концепция системных транзакций и пользовательских транзакций. . MKDE разрешало разрывы между автоинкрементными ключами. Variable-tail allocation tables появились в версии 6.15, таким образом они были включены в сборку Btrieve для Windows NT/95. Существовало две конфигурации Btrieve для Windows NT/95: standalone workstation и client/server. Standalone WorkstationПри использовании standalone workstation конфигурации Btrieve, вся обработка записей производилась на локальной рабочей станции, полагаясь на локальные механизмы Windows, пользуясь которыми MKDE получало доступа к файлам БД и накладывало файловые блокировки, для синхронизации параллельных операций. В такой конфигурации приложение выполняло вызовы к Btrieve API или интерфейсу микроядра, а этот интерфейс передавал запросы самому MKDE, которое уже напрямую работало с файлами БД средствами файловой системы. Однако такой подход имеет неприятные побочные следствия. Если Btrieve использует сетевой механизм Windows, а ядро СУБД открывает файлы напрямую с сетевого ресурса, и возникает сбой локальной сети, в процессе обновления полей связывающих файлы Btrieve, может наступить рассинхронизация, нарушатся связи между данными, и файлы БД будут испорчены. Client/ServerПри использовании конфигурации клиент/сервер, обработка записей в основном выполняется на файловом сервере Windows, через отображение сетевых ресурсов в диски. При этом используются полномочия пользователя полученные при аутентификации, либо при входе в систему, либо при исполнении команды Под Windows 95, интерфейс MKDE в действительности определяет способ доступа к БД через конфигурационный файл. Если он обнаруживает, что на компьютере установлены оба варианта ядра СУБД, то производится проверка, какой из них предписано использовать. При работе под Windows NT, если одновременно запущены серверный процесс Переимущества такого подхода в том, что при сбое локальной сети, MKDE на сервере способно обнаружить это и более аккуратно выполнить восстановление, чем в конфигурации standalone workstation. КонфигурированиеBtrieve включает утилиту для настройки параметров MKDE. Следующие параметры могут быть настроены:
Pervasive.SQL 7Pervasive SQL 7 был выпущен в марте 1998 и включал в себя Scalable SQL 4 и Btrieve 7.0. Btrieve 7.0 запускалась на тех же платформах, что и Btrieve 6.x: Windows 95, Windows NT 3.51 & 4, Netware и DOS. Тем не менее компания изменила компонентную архитектуру именуемую SmartComponents для решения вопросов совместимости при переходе на новую версию. Она использовала схему идентификации компонентов с одновременным указанием идентификатора внутри файла и кодированием в его имени, совместно с динамическим связыванием «склеивающих модулей». Динамическое связывание компонентов выполнялось с применением нового подхода, «Abstract OS Services DLL», в соответствии с которым выбиралась самая последняя версия необходимого компонента, посредством информации закодированной в его имени файла. Далее, этот «склеивающий модуль» загружался в память и начинал использоваться. Старый формат файла журнала событий, существовавший в Btrieve 6.x, был заменён новым централизованным журналом MKDE сохранилось в Pervasive.SQL 7. Тем не менее, его внутренняя архитектура изменилась, вследствие появления новой архитектуры динамического связывания компонентов. Приложение использующее Btrieve вызывало специального сервис-менеджера, который искал в различных, указанных в конфигурации, директориях файлы с именами определённого формата. Вот определение шаблона для имён этих файлов в формате BNF: <filename> ::= <platform-code> "BIF" <major-functional-level> <minor-functional-level> <platform-code> ::= "W1" | "W2" | "W3" | "W9" | "WT" | "NW" | "O3" <major-functional-level> ::= <number> <minor-functional-level> ::= <number> <number> <number> ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"
«Склеивающий» модуль загружается в память и становится интерфейсом к MKDE. Далее MKDE определяет, каким образом оно настроено, для работы на отдельной рабочей станции или для взаимодействия с сервером, и начинает транслировать запросы на сервер БД или напрямую работать с файлами БД, если оно настроено на режим «рабочая станция». Pervasive.SQL 2000/2000iPervasive.SQL 2000 и 2000i используют по существу ту же архитектуру, что и Pervasive.SQL 7, но 2000i и включает дополнительный сервер i*Net. Используется та же компонентная модель, позволяющая использовать оба механизм доступа к данным, и Btrieve и Scalable SQL; продолжается использоваться архитектура MKDE. Эта версия включает поддержу Red Hat Linux, Caldera OpenLinux, SUSE и Solaris. Также была улучшена интеграция с Terminal Services, хотя возможно запускать только один экземпляр ядра СУБД на любой платформе. То есть невозможно запустить отдельные копии СУБД в двух или более терминальных сеансах. Pervasive.SQL V8Представленный в декабре 2002 г. Pervasive.SQL V8 имеет улучшенные характеристики производительности для приложений использующих любой из механизмов доступа, что достигнуто использованием нескольких новых технологий:
Пакет обновлений V8 Security Feature Pack внёс важные изменения в модель безопасности, направленные на ограничение доступа к файлам данных. До версии 8.5 доступ к данным Btrieve контролировался механизмами безопасности ОС, что означало буквально: «Пользователь осуществляющий чтение/запись данных, должен иметь доступ на чтение/запись к соответствующим файлам с данными». В новой версии реализована новая модель безопасности, позволяющая администратору контролировать доступ к данным Btrieve используя собственный механизм разграничения доступа СУБД. После активации нового механизма, пользователь более не нуждается в доступе к файлам данных. В дополнение, конфигурации с архитектурой клиент/сервер более не нуждались в использовании общих сетевых ресурсов или их отображении в виде виртуальных дисков. Теперь приложения могли ссылаться за защищённые данные Btrieve посредством URI-строк соединения. Pervasive PSQL v9Pervasive PSQL v9 включает новый Java GUI, на основе Eclipse, доступный как для Microsoft Windows, так и для Linux. Также, v9 содержит множество обновлений SQL, как по части производительности, так и по части синтаксиса, способствующих повышению скорости и улучшению функциональности всех средств доступа, использующих SQL ADO.Net, JDBC, ODBC и OLE DB. И в заключение, PSQL v9 увеличивает максимальный размер файла БД с 64GB, в 8.x и более ранних версиях. до 128GB в 9.0 и 256GB в 9.5. Совместно с выпуском PSQL v9, была вновь релизована утилита DDF Builder, а кроме того добавлена поддержка полнотекстового поиска, обеспечиваемая дополнением Full Text Search. DDF Builder предоставляет возможность пользователям Btrieve задать метаданные для существующих файлов формата Btrieve, чтобы сделать их доступными для SQL утилит. Все версии MKDE сохраняют обратную совместимость с предыдущими версиями Btrieve на уровне чтения данных. В том числе поддерживаются версии выпущенные до появления MKDE, и формат файла не изменяется до тех пор, пока это специально не запрошено. Однако, файлы от версий 5.x и более ранних должны быть перестроены заново, в формат версии 6.x или более поздней, для обеспечения возможности их изменения ядром СУБД версии 9.0 или более поздней. Перестройка выполняется из графического интерфейса или консольной командой Pervasive PSQL и сопутствующие продуктыВ настоящее время Pervasive поставляет набор дополнительных продуктов, расширяющих базовые возможности СУБД PSQL.
Просмотров: 4721
|