Paper is an embedded object-oriented storage engine on Android with automatic schema migration support. It is designed for Java and Kotlin to quickly manage object storage without using SQL-like queries.
- Source Code
- https://github.com/pilgr/Paper[01]
- Developer
- Country of Origin
- SE
- Start Year
- 2015 [02]
- Project Type
- Open Source
- Written in
- Java
- Supported Languages
- Java
- Operating System
- Android
- License
- Apache v2
Paper is an embedded object-oriented storage engine on Android with automatic schema migration support. It is designed for Java and Kotlin to quickly manage object storage without using SQL-like queries.
History[01]
Paper was created in Sweden in 2015. The main contributor is Oleksii Masnyi (Aleksey Masny), an android software developer. It was initially developed to be used in AppDialer, a smart phone application for searching other apps. The system was mainly developed between 2015 and 2017. Version 1.0 was released in 2015, and Version 2.0 was released in 2016, with major updates in methods and data format. The current version now is 2.6, which was released in 2017.
Concurrency Control
Paper uses concurrent hash map and semaphore to deal with multi-thread reading and writing, but no specific concurrency control approach is being used.
Data Model
Paper uses custom strings as keys, and objects as values, which is a combination of key/value data model and object-oriented data model.
Storage Organization
Paper maintains backup files when performing writing. When writing is done successfully, backup file is deleted.