U1DB

U1DB
DeveloperUbuntu One team
Initial release2011
Stable release
13.10 / October 8, 2013 (2013-10-08)
Written inPython, C, SQLite
Available inEnglish
TypeDocument-oriented database
LicenseGNU LGPL v3
Repositorylaunchpad.net/u1db/

U1DB is a cross-platform, cross-device, syncable[1] database application programming interface (API).[2] It allows applications to store JSON documents and synchronize them between machines and devices. U1DB is a schemaless document-oriented database API that does not need to contain any pre-defined list of fields. It can be implemented in any language, on any platform, using any data store backend.[2]

U1DB was created when Canonical had scaling issues with CouchDB previously used in their Ubuntu One service.[3] They were having problems with implementing their service for millions of users and at the same time providing good performance on large server farms as well as tablets and smart phones. Defining an interface (API) allowed them to implement their data synchronization service using different languages and data stores on each platform.

Implementations of U1DB[4]
Platform(s) Language Back end database Link
Ubuntu, Windows, OS X Python SQLite The reference implementation
Ubuntu Vala SQLite lp:shardbridge
Ubuntu, Windows, OS X C SQLite part of lp:u1db
Ubuntu, Windows, OS X Go LevelDB and/or MongoDB lp:gouda (in progress)
Web JavaScript localStorage planned
Android Java SQLite planned
iOS Objective-C SQLite planned

References

  1. ^ "Conflicts, Synchronisation, and Revisions — u1db 0.1.4 documentation". Pythonhosted.org. Retrieved 2014-03-03.
  2. ^ a b "U1DB — u1db 0.1.4 documentation". Pythonhosted.org. Retrieved 2014-03-03.
  3. ^ "EOL for couchdb and desktopcouch". Lists.ubuntu.com. 21 November 2011. Retrieved 2014-03-03.
  4. ^ "U1DB — u1db 0.1.4 documentation". Pythonhosted.org. Retrieved 2014-03-03.


Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.