По словам участника проекта Криса Андерсона, система CouchDB, для которой буквально несколько дней назад была предложена версия 0.10, реализована как Web-сервер, в котором сохраняются фрагменты Web-приложения.
«Web-приложение будет сохраняться в базе данных, и для работы с ним вам потребуется только браузер, — подчеркнул Андерсон. — С самого начала в основу CouchDB была положена идея обеспечить синхронизацию в стиле Lotus Notes таким образом, чтобы, вне зависимости от своего местонахождения, пользователь мог получить все свои данные».
Андерсон работает в компании Relaxed Technologies, которая создает программные продукты, работающие в среде Web-браузера. Технология CouchDB используется для синхронизации между экземплярами программ, работавшими в автономном режиме. В Relaxed могут не прерывать работы со своими приложениями, даже если Internet-соединение прервано.
В CouchDB объединено сразу несколько технологий поддержки работы приложений в автономном режиме, такие как Google Gears and Adobe AIR (Adobe Integrated Runtime). Основное отличие между CouchDB и технологиями, подобными Gears, состоит в том, что CouchDB позволяет выполнять один и тот же код приложений как на сервере, так и локально. Обычно разработчикам приходится предпринимать немало дополнительных усилий, чтобы иметь возможность запускать приложение в автономном режиме.
«Если вы создали приложение на базе CouchDB, то оно заведомо готово к работе в автономном режиме», — подчеркнул Андерсон. Синхронизация в случае необходимости выполняется с ноутбука. Кроме того, если CouchDB используется в качестве своего сервера баз данных, а сервер выходит из строя или пропадает Internet-соединение, то пользователи могут продолжать работать на своих клиентских компьютерах, не испытывая неудобства. Когда функционирование системы восстановится, автоматически будет выполнена синхронизация.
«CouchDB — едва ли не единственный проект категории Open Source, который позволяет выполнять синхронизацию при работе в автономном режиме», — заметил Андерсон. Эта СУБД использует интерфейс RESTful JSON API, доступный из любой среды и поддерживающий HTTP-запросы.
CouchDB работает на ПК и серверах. В дальнейшем планируется реализовать поддержку мобильных устройств. Например, компания Canonical поддерживает CouchDB в клиентской версии дистрибутива Ubuntu Linux.
Версия 0.10 способна выполнять непрерывное тиражирование. Пользователи могут подключиться к серверам CouchDB и получать актуальные данные в режиме реального времени. Эта версия поддерживает сookie и аутентификацию OAuth, а также имеет встроенную поддержку Windows. Предполагается, что версия 1.0 появится уже в этом году.
«Для разработчиков, создающих Web-приложения, CouchDB покажется проще и потребует меньших усилий, чем реляционные базы данных или серверы Java-приложений», — считает Андерсон.
Рекламный лозунг CouchDB — Relax («расслабься»), символизирует, что пользователи могут не волноваться о сохранности своих данных. «Мы гордимся тем, что располагаем очень надежным механизмом хранения», — заявил Андерсон.
Разработчики могут написать программу для CouchDB и запустить ее на локальной машине или перенести на сервер или группу серверов, если ею будут пользоваться достаточно широко.
Создатели CouchDB рассчитывают, что кто-нибудь создаст модуль расширения для браузера, который упростит возможность использования CouchDB локально.