Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/objectbox/objectbox-performance
Performance Benchmarking App for ObjectBox, SQLite(via Room and greenDAO), Realm
https://github.com/objectbox/objectbox-performance
android benchmarking database greendao mobile performance realm room sqlite
Last synced: 8 days ago
JSON representation
Performance Benchmarking App for ObjectBox, SQLite(via Room and greenDAO), Realm
- Host: GitHub
- URL: https://github.com/objectbox/objectbox-performance
- Owner: objectbox
- License: apache-2.0
- Created: 2017-09-04T06:20:23.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-05-22T09:25:55.000Z (7 months ago)
- Last Synced: 2024-12-06T00:10:10.283Z (21 days ago)
- Topics: android, benchmarking, database, greendao, mobile, performance, realm, room, sqlite
- Language: Java
- Homepage: http://greenrobot.org/android/benchmarking-on-android/
- Size: 378 KB
- Stars: 132
- Watchers: 6
- Forks: 31
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ObjectBox Java Database Performance Benchmarks
This is an Android app to measure object persistence performance of
- [ObjectBox](/app/src/main/java/io/objectbox/performanceapp/objectbox)
- [Realm](/app/src/main/java/io/objectbox/performanceapp/realm)
- [SQLite using Room](/app/src/main/java/io/objectbox/performanceapp/room)
- [SQLite using greenDAO](/app/src/main/java/io/objectbox/performanceapp/greendao) (deprecated)Results are printed on the UI and saved as tab-separated files (`.tvs`) that can be easily imported
into a spreadsheet. The files are located on external storage.## How to get good results
* Tests perform differently when multiple databases are selected:
For comparable results, run only a single database at a time.
* Put the test device into air plane mode to avoid background apps doing sync over the network.
* Screen must be on at all times (e.g. plug the device in).
* Beware of lazy loaded data (e.g. properties on live objects of Realm):
loading objects may seem very fast because no data is actually loaded.
For better comparison it may be necessary to access data (at least once) and combine load and access time to get actual read time.
* We also have written some general notes on [benchmarking on Android](https://greenrobot.org/android/benchmarking-on-android/).