pilgr / Paper

Paper is a fast NoSQL-like storage for Java/Kotlin objects on Android with automatic schema migration support.
Apache License 2.0
2.35k stars 234 forks source link

Adding proper benchmarking #158

Closed dobrowins closed 4 years ago

dobrowins commented 5 years ago

Dear @pilgr, first of all — thank you for Paper, it's a great database. I wonder though if I can contribute by adding proper benchmarking to the project. Presumably, JMH.

If I'll create an PR with proper benchmarking — would you be interested in adding it to the project?

Thank you.

pilgr commented 5 years ago

@dobrowins that would be awesome! When writing benchmarks for other data storages, please make sure that data flushed to the disk before calculations. Some libs may use inner caching with postponed writings, that should be out of the comparison. You can add benchmarking code to the project (app folder is preferable) or if you'd like to make a separate benchmarking project on your own – please just add results to README with the link to your project. Thanks!

dobrowins commented 4 years ago

@pilgr I didn't find a way to add benchmarks to project as the only one benchmarking framework that would work with Android instrumented tests requires androidx, so I created separate repository. I compared Paper, Hawk, Realm and Room. You may please find benchmarks in the tables close to the end of the article. You may use the results as you please. And again — thank you for Paper!

pilgr commented 4 years ago

@dobrowins thanks for making it real!