Категории программ

Новые программы

Apache CouchDB

Октябрь 1, 2014 0

Apache CouchDB — документоориентированная система управления базами данных с открытым исходным кодом, не требующая описания схемы данных, распространяется свободно, написана на языке Erlang. Впервые вышла в 2005 году, с 2008 года — проект фонда Apache Software Foundation (ASF).

Apache CouchDB реализована в рамках подхода NoSQL. Для хранения данных используется JSON, для реализации MapReduce-запросов — JavaScript. Одной из особенностей СУБД является поддержка репликации с несколькими ведущими узлами.

Apache CouchDB можно рассматривать как сервер веб-приложений; для реализации этой идеи в Apache CouchDB встроен производительный веб-сервер, а программный код, как и данные, сохраняется в той же базе данных. Для автоматизации работы с приложениями используется утилита CouchApp.

Следуя подходу NoSQL, Apache CouchDB не хранит данные и связи в таблицах. Вместо этого каждая база данных — набор независимых документов. Каждый документ содержит свои собственные данные и независимую схему. Приложение может получить доступ к нескольким базам данных, например, хранящейся на мобильном телефоне пользователя и на сервере. Метаданные документа содержат информацию о версии, позволяя объединять данные и разрешать любые противоречия, которые могли появиться в момент, когда базы данных были разъединены.

Для управления конкурентным доступом используется механизм MVCC, благодаря чему возможно избежать необходимости блокировки файла базы данных во время записи. Разрешение конфликтов относится к сфере ответственности логики приложения, разрешение конфликта обычно включает в себя объединение данных в один документ, а затем старый документ удаляется.

Архитектура Apache CouchDB

Подобно иным документно-ориентированным СУБД (Mnesia, Lotus Notes, MongoDB) и в отличие от реляционных СУБД, CouchDB предназначена для работы с полуструктурированной информацией и имеет следующие особенности:

JavaScript, PHP, Ruby, Python и Erlang;

это позволило использовать различные языки программирования для написания этих компонентов — Java, Python, JavaScript и пр..

Компоненты Apache CouchDB

Использование Apache CouchDB

Apache CouchDB используется во многих программных продуктах и на множестве веб-сайтов, в том числе:

Больше примеров доступно на Wiki проекта Apache.

Apache CouchDB

Ссылки

Сайт Apache CouchDB

Скачать Apache CouchDB

Базы данных , Компоненты и библиотеки , Разработчику

Оставить комментарий

*