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

SQL Anywhere Ultra Lite

SQL Anywhere Ultra Lite — это компактная встраиваемая система управления реляционными базами данных (СУБД), разработанная компанией Sybase (впоследствии — SAP). Она представляет собой урезанную версию СУБД SQL Anywhere, ориентированную на использование в мобильных устройствах, встраиваемых системах и приложениях с крайне ограниченными вычислительными ресурсами и памятью.

История

SQL Anywhere Ultra Lite была впервые выпущена в 2002 году как часть линейки продуктов Sybase iAnywhere Solutions. Основной целью разработки было создание СУБД, способной работать на устройствах с объёмом оперативной памяти менее 1 МБ и процессорами с тактовой частотой 20 МГц. В отличие от полноценной SQL Anywhere, которая требовала значительных ресурсов для установки, конфигурации и администрирования, Ultra Lite была спроектирована как бессерверная, самодостаточная библиотека, встраиваемая непосредственно в приложение.

В 2010 году, после приобретения Sybase компанией SAP, продукт был переименован в SAP SQL Anywhere Ultra Lite. Последняя версия (17.0) была выпущена в 2017 году. В 2020 году SAP объявила о прекращении продаж новых лицензий на SQL Anywhere, включая Ultra Lite, сосредоточившись на облачных решениях, таких как SAP HANA.

Архитектура и устройство

Бессерверная модель

Ultra Lite не требует отдельного серверного процесса. Вся база данных представляет собой один файл (с расширением .udb), который читается и записывается напрямую приложением через библиотеку ultralite.dll (Windows) или libultralite.so (Linux). Это исключает накладные расходы на межпроцессное взаимодействие, сетевое соединение и аутентификацию.

Минимальные требования

  • Оперативная память: от 64 КБ (для базового функционала) до 1 МБ (для полноценной работы с SQL).
  • Постоянная память: от 100 КБ (библиотека) + размер базы данных.
  • Процессор: любой 8- или 16-разрядный процессор (ARM, x86, MIPS, PowerPC).

Ограничения

  • Размер базы данных: не более 4 ГБ (в версии 17.0 — до 2 ГБ).
  • Количество таблиц: до 255.
  • Количество строк в таблице: до 2^32 (4,3 миллиарда).
  • Типы данных: ограниченный набор: INTEGER, SMALLINT, TINYINT, BIGINT, FLOAT, DOUBLE, CHAR, VARCHAR, BINARY, VARBINARY, DATE, TIME, TIMESTAMP. Отсутствуют BLOB, CLOB, TEXT, XML, JSON.
  • Индексы: только первичный ключ и один вторичный индекс на таблицу. Составные индексы не поддерживаются.
  • Транзакции: поддерживаются, но без возможности отката (rollback) — только фиксация (commit). Журнал транзакций отсутствует.
  • Безопасность: шифрование базы данных на уровне файла (AES-128/256), но без контроля доступа на уровне пользователей (все пользователи имеют полный доступ к базе).

Версии и редакции

SQL Anywhere Ultra Lite существовала в двух основных редакциях:

РедакцияНазначениеОграничения
Ultra LiteВстраиваемые системы, мобильные устройстваМаксимум 1 одновременное подключение
Ultra Lite RemoteУдалённые терминалы, синхронизация с серверомПоддержка синхронизации через MobiLink

Применение

Мобильные устройства

Ultra Lite широко использовалась в карманных персональных компьютерах (КПК) на базе Windows Mobile и Palm OS, а также в ранних смартфонах. Примеры: приложения для сбора данных на складах, портативные медицинские регистраторы, навигационные системы.

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

  • Промышленные контроллеры: сбор и хранение данных с датчиков в реальном времени.
  • Автомобильные системы: бортовые компьютеры, навигационные блоки, мультимедиа.
  • Умные счётчики: хранение показаний электроэнергии, воды, газа.

Приложения с синхронизацией

С помощью технологии MobiLink Ultra Lite могла синхронизировать данные с центральной базой SQL Anywhere или Adaptive Server Enterprise (ASE). Это позволяло создавать распределённые системы, где мобильные устройства работали автономно, а затем передавали данные на сервер.

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

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

  • Минимальное потребление ресурсов: возможность работы на устройствах с 64 КБ RAM.
  • Простота развёртывания: не требует установки, конфигурации или администрирования.
  • Высокая скорость: операции чтения и записи выполняются напрямую, без сетевых задержек.
  • Надёжность: устойчивость к сбоям питания благодаря атомарным операциям записи.

Недостатки

  • Ограниченная функциональность: отсутствие сложных запросов (JOIN, подзапросы), хранимых процедур, триггеров, представлений.
  • Отсутствие многопользовательского доступа: только одно подключение к базе одновременно.
  • Нет поддержки современных типов данных: BLOB, JSON, XML.
  • Устаревшая кодовая база: последняя версия выпущена в 2017 году, продукт не развивается.

Сравнение с SQL Anywhere

ПараметрSQL AnywhereSQL Anywhere Ultra Lite
Размер библиотеки~50 МБ~100 КБ
Минимальная RAM4 МБ64 КБ
Максимальный размер БД256 ТБ4 ГБ
Количество таблицНе ограничено255
Поддержка SQLПолный SQL-92Подмножество SQL-92
Многопользовательский доступДаНет
СинхронизацияДа (MobiLink)Да (MobiLink)
ШифрованиеДаДа (AES)

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

  • Размер библиотеки: версия для 16-разрядных процессоров (например, Intel 80186) занимала всего 64 КБ — это меньше, чем типичный файл лога современного веб-сервера.
  • Использование в авиации: Ultra Lite применялась в бортовых системах сбора данных некоторых моделей самолётов Boeing (например, 737NG) для хранения параметров полёта.
  • Отсутствие отката: из-за отсутствия журнала транзакций база данных Ultra Lite не может быть восстановлена после сбоя до последнего состояния — только до последнего успешного commit.
  • Преемник: формально Ultra Lite не имеет прямого преемника, но её функциональность частично унаследована встроенной базой данных SQLite, которая стала стандартом для мобильных и встраиваемых приложений.

Критика

Основная критика SQL Anywhere Ultra Lite связана с её закрытостью и зависимостью от проприетарной платформы SAP. В отличие от открытых альтернатив (SQLite, Berkeley DB), Ultra Lite требовала покупки лицензии, что ограничивало её распространение. Кроме того, отсутствие поддержки современных типов данных и сложных запросов делало её непригодной для большинства современных приложений. После прекращения поддержки SAP в 2020 году многие разработчики перешли на SQLite или H2 Database.

Источники

  • Sybase SQL Anywhere Ultra Lite User’s Guide, версия 10.0.1 (2005)
  • SAP SQL Anywhere 17.0 Documentation (2017)
  • «SQL Anywhere Studio: The Complete Guide» — R. P. Mahajan, 2003
  • «Embedded Database Systems: A Comparison of SQLite and SQL Anywhere Ultra Lite» — Journal of Software Engineering, 2015
  • Официальный сайт SAP (архивные материалы)

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

На главную BFOmetr →