DBDB.io The Encyclopedia of Database Systems · Est. 2017
Database of Databases

Database Entry

Paper


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 [05]
Project Type
Open Source
Written in
Java
Supported Languages
Java
Operating System
Android
License
Apache v2

Database Entry

Paper


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. The first version was released with main object-oriented structure, and newer versions were later released with major updates in methods, data format and custom APIs.

Checkpoints


Concurrency Control[02]


Paper uses concurrent hash map and semaphore to deal with multi-thread reading and writing for single operation, but no concurrency control protocol is being used to protect transactions.

Data Model[03]


Paper uses custom strings as keys, and objects as values, which is a combination of key/value data model and object-oriented data model.

Foreign Keys


Indexes


Paper uses Java concurrent hash maps to store objects.

Joins


Logging


Query Compilation


Query Interface


Storage Model


Storage Organization[04]


Paper maintains backup files when performing writing. When writing is done successfully, backup file is deleted.

Stored Procedures


System Architecture


Paper is a database system designed for Android.

Views


Revision #10