Открыть сервис

Pervasive.SQL

Pervasive.SQL — это реляционная система управления базами данных (СУБД), разработанная компанией Pervasive Software (ныне часть корпорации Actian). Система ориентирована на встраиваемые решения, малый и средний бизнес, а также на приложения, требующие высокой производительности при работе с данными на локальных компьютерах или в небольших сетях. Основная особенность Pervasive.SQL — сочетание реляционной модели с навигационным доступом к данным, что позволяет использовать её как в традиционных SQL-запросов, так и в приложениях, работающих с файлами формата Btrieve (Bitrieve).

История

Создание и развитие

Pervasive.SQL ведёт свою историю от технологии Btrieve, разработанной в 1980-х годах компанией SoftCraft. Btrieve представляла собой систему управления данными на основе индексов (ISAM — Indexed Sequential Access Method), которая обеспечивала быстрый доступ к записям без использования SQL. В 1994 году компания Pervasive Software приобрела права на Btrieve и начала интеграцию с реляционным языком запросов SQL. Первая версия Pervasive.SQL была выпущена в 1995 году.

В 2000-х годах продукт получил поддержку транзакций, триггеров, хранимых процедур и репликации. В 2011 году Pervasive Software была приобретена компанией Actian, специализирующейся на облачных и аналитических решениях. После этого Pervasive.SQL стал частью линейки Actian Zen, сохранив совместимость с предыдущими версиями.

Современное состояние

На 2025 год Pervasive.SQL продолжает поддерживаться в рамках продукта Actian Zen (версии 15 и выше). Система используется в legacy-приложениях, а также в новых разработках, где требуется лёгкая, быстрая и надёжная СУБД для встраивания в прикладное ПО.

Архитектура и принципы работы

Двухрежимная архитектура

Pervasive.SQL работает в двух основных режимах:

  • Двигатель Btrieve (навигационный доступ) — прямой доступ к записям через индексы, без SQL. Этот режим обеспечивает максимальную скорость для операций вставки, обновления и чтения по ключу.
  • Реляционный движок (SQL-доступ)поддержка стандартного языка SQL (DDL, DML, DCL), включая JOIN, подзапросы, агрегатные функции. Реляционный движок использует Btrieve в качестве низкоуровневого хранилища, преобразуя SQL-запросы в навигационные операции.

Хранение данных

Данные хранятся в файлах формата .DAT (Btrieve) и .DDF (словарь данных). Файлы .DDF содержат метаданные: описание таблиц, индексов, представлений, хранимых процедур. Каждая таблица может быть представлена одним или несколькими файлами данных. Индексы хранятся в виде B-деревьев, что обеспечивает логарифмическую сложность поиска.

Сетевые протоколы

Для доступа к данным по сети Pervasive.SQL использует собственный протокол Pervasive.SQL Server (PSS). Клиентские приложения могут подключаться к серверу через TCP/IP, NetBIOS или IPX/SPX. В современных версиях поддерживается только TCP/IP.

Классификация и версии

Редакции

Pervasive.SQL делится на несколько редакций, ориентированных на разные сценарии использования:

  • Workgroup Engine — для однопользовательских или малых рабочих групп (до 5 пользователей). Включает только навигационный доступ.
  • Client/Server Engine — для многопользовательских приложений с выделенным сервером. Поддерживает SQL и транзакции.
  • Enterprise Server — для крупных организаций с высокой нагрузкой. Включает репликацию, кластеризацию и расширенные средства администрирования.

Версии

Основные версии:

  • Pervasive.SQL 2000 (V8) — первая версия с полноценной поддержкой SQL.
  • Pervasive.SQL 2000i (V9) — улучшенная производительность и поддержка Unicode.
  • Pervasive.SQL 2003 (V10) — добавлены триггеры и хранимые процедуры.
  • Pervasive.SQL 2008 (V11) — поддержка 64-битных систем.
  • Pervasive.SQL 2012 (V12) — интеграция с облачными сервисами.
  • Actian Zen (V15+) — современное название, поддержка Docker и Kubernetes.

Применение

Встраиваемые системы

Pervasive.SQL широко используется в приложениях, где СУБД должна быть встроена непосредственно в исполняемый файл или поставляться как компонент. Примеры: бухгалтерские программы, системы управления складом, торговые терминалы, медицинские информационные системы.

Малый и средний бизнес

Благодаря низким требованиям к ресурсам и простоте администрирования, Pervasive.SQL популярен в компаниях, где нет выделенного администратора баз данных. Система может работать на обычных офисных компьютерах без серверного оборудования.

Legacy-приложения

Многие старые программы, написанные на языке C/C++ или Delphi, используют Btrieve/Pervasive.SQL в качестве основного хранилища. Миграция на другие СУБД часто затруднена из-за специфических функций навигационного доступа.

Преимущества и недостатки

Преимущества

  • Высокая производительность при операциях с записями по ключу (навигационный доступ).
  • Малый размер дистрибутива (от 50 до 200 МБ в зависимости от редакции).
  • Простота развёртывания — не требует установки сложных серверных компонентов.
  • Совместимость с Btrieve-приложениями без переписывания кода.
  • Низкие требования к оперативной памяти и процессору.

Недостатки

  • Ограниченные возможности по сравнению с полноценными СУБД (Oracle, Microsoft SQL Server, PostgreSQL): отсутствие полнотекстового поиска, ограниченная поддержка сложных запросов, слабая масштабируемость.
  • Закрытый исходный код — полная зависимость от вендора.
  • Устаревший интерфейс администрирования (Pervasive Control Center) в версиях до 2012 года.
  • Сложность миграции на другие СУБД из-за привязки к навигационному доступу.

Интересные факты

  • Pervasive.SQL является одной из немногих СУБД, которая поддерживает два различных способа доступа к данным (навигационный и реляционный) одновременно, что позволяет использовать её в гибридных приложениях.
  • Технология Btrieve, лежащая в основе Pervasive.SQL, была одной из первых систем управления данными для персональных компьютеров, появившейся ещё до эпохи Windows.
  • В России Pervasive.SQL использовался в ряде крупных корпоративных систем, включая автоматизированные системы учёта в торговле и логистике, однако с 2010-х годов его популярность снизилась из-за распространения открытых СУБД (PostgreSQL, MySQL) и облачных решений.

Источники

  • Actian Corporation. «Actian Zen Product Documentation». 2024.
  • Pervasive Software. «Pervasive.SQL 2000 User’s Guide». 2000.
  • «Pervasive.SQL: A Relational Database for Embedded Applications». Database Journal, 2005.
  • «Btrieve: The History of a Database Technology». Computer History Museum, 2010.
  • «Сравнительный анализ СУБД для малого бизнеса». Журнал «Открытые системы», 2012.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →