Система управления базами данных - основа функционирования любой сложной вычислительной системы. Поэтому язык программирования, на котором написана хотя бы одна СУБД, можно считать промышленным. На Java такая база данных есть. Называется она InstantDB и разработана английской компанией ICS. Причем, как и некоторые иные Java-продукты, InstantDB является условно-бесплатной. То есть ее можно свободно загрузить из Internet, установить и опробовать. Причем архив InstantDB занимает объем всего 360 Кбайт вместе с документацией и примерами Java-программ. Если же база данных понравится настолько, что ее захочется купить, то такое решение также будет стоить немного: 20 долл. за рабочее место; 200 долл. - за неограниченное число рабочих мест или за один сервер; 400 долл. - за неограниченное число серверов; 1000 долл. за СУБД вместе с исходными текстами.


InstantDB написана на «стопpоцентно чистом» Java, хотя официально подтвержденного статуса еще не получила. Использование только стандартных средств Java позволяет устанавливать InstantDB на любую платформу, а поддержка стандартных технологий баз данных, таких как SQL92 и интерфейс JDBC, - легко интегрировать ее в уже работающую корпоративную систему. InstantDB использует для связи с удаленными клиентами стандартный для Java протокол RMI, что позволяет работать с этой СУБД через сеть TCP/IP. Из последней версии полностью исключены вызовы методов JDK 1.0.2, и поэтому InstantDB работает только под JDK 1.1. Если же необходима старая версия Java, тогда лучше использовать InstantDB 1.7.

Применение стандартных механизмов Java и СУБД обеспечило InstantDB новое качество - переносимость программного обеспечения и данных, хотя при этом пострадала производительность. Это закономерно, поскольку СУБД работает на виртуальной машине Java и все данные хранятся в файловой системе. Однако это же качество гарантирует возможность инсталляции InstantDB на любую платформу, на которой реализована JVM. Например, мне удалось установить ее на ПК с Windows 95, причем для этого не потребовалось сложных манипуляций - достаточно было изменить значение переменной CLASSPATH.

Вероятно, эту СУБД лучше всего использовать для создания небольших и мобильных баз данных, когда заранее не известно, на какой платформе они будут работать. Таким образом, дешевизна самой СУБД и доступность средств разработки Java-приложений позволяют строить на основе InstantDB небольшие дешевые приложения масштаба отдела. Впрочем, на базе InstantDB разрабатываются и приложения для Internet. Один из таких примеров можно найти по адресу http://www.getionsoftware.com. Кроме того, российская компания «Альбервест» использует эту базу банных в своем Internet-магазине, который также полностью написан на Java. Следует отметить, что InstantDB увидела свет только в июле прошлого года, и уже претерпела много изменений - в нее были добавлены новые SQL-выражения, примеры с использованием графического интерфейса, а также исправлены многочисленные неувязки. Несмотря на некоторые ограничения по использованию SQL-выражений, InstantDB может с успехом применяться в различных приложениях.