desktopcouch - replikacja i wymiana danych między aplikacjami i komputerami

Opis standardu/projektu desktopcouch do wymiany preferencji, ustawień, zakładek aplikacji desktopowych między sobą i między komputerami za pomocą bazy CouchDB.

CouchDB to bezschematowa i nierelacyjna baza danych "dokumentów" napisana w Erlangu (więcej o technicznych aspektach tej bazy można znaleźć w artykule Obsługa bazy dokumentów CouchDB w Pythonie). Programiści Ubuntu postanowili wykorzystać tą bazę danych w projekcie desktopcouch, będącym standaryzowanym pośrednikiem i przechowalnią danych dla aplikacji (ustawienia, preferencje, zakładki, kontakty itp.). Specyfikacja dostępna jest już nawet na freedesktop.org, a jej implementację znajdziemy w nadchodzącym wydaniu Ubuntu (karmic koala).

Główne założenia desktopcouch to:
  • CouchDB/desktopcouch na każdym desktopie
  • Replikacja danych między komputerami i między komputerami a chmurą (np. Ubuntu One)
  • Wymiana danych pomiędzy aplikacjami wykorzystującymi podobne lub identyczne dane (np. Rhytmbox i Banshee ze wspólną listą utworów, czy wymiana danych między różnymi klientami pocztowymi)

Bardzo wiele można dowiedzieć się też z prelekcji Stuarta Langridge na temat tego projektu (jest on jednym z twórców). Z jednej strony ułatwi to przenośność i dostęp do ustawień desktopu użytkownikowi - korzystanie z więcej niż jednego komputera, migracja z jednej aplikacji na drugą, czy z jednej wersji rozwojowej na drugą. Z drugiej strony można dopatrzeć się podobieństw do rejestru znanego z MS Windows, oraz problemów jakie wynikną gdy jedna centralna baza danych wszystkich ustawień się posypie (chociać CouchDB jest dość odporna na błędy i bardzo dobrze obsługuje konflikty). Także pojawi się nowa zależność - Erlang, w którym napisana jest ta baza (możne to spopularyzuje naukę tego "fenomenalnego" języka?), jak i serwer CouchDB będzie musiał działać, żeby aplikacje desktopowe nie miały problemu z dostępem i zapisem danych.

Projekt desktopcouch jest w początkowej fazie rozwoju, lecz bardzo szybko się rozwija, m.in. dzięki wdrażaniu go w Ubuntu we współpracy z programistami GNOME (i KDE). Jeżeli standard szybko się ustabilizuje i pokaże swoją przydatność to istnieją spore szanse na powszechne jego wykorzystanie w wielu aplikacjach desktopwych ze świata OpenSource.

blog comments powered by Disqus

Kategorie

Strony