forked from Impetus/kundera
-
Notifications
You must be signed in to change notification settings - Fork 0
Kundera Mongo performance 2.0.5
xamry edited this page Oct 29, 2012
·
2 revisions
Recently we did performance test(over mongoDB) over Kundera-2.0.5. So here are details (given below) :
- Enviornment: Amazon AWS ubuntu large instance (ami-09965860).
Number Of Records(Single Thread) | Native API Time (in ms) | SpringData Time (in ms) | Morphia (in ms) | Kundera (in ms) |
1 | 27 | 9 | 31 | 36 |
1000 | 271 | 527 | 628 | 439 |
4000 | 783 | 1511 | 2061 | 1341 |
40000 | 2579 | 3882 | 9623 | 4626 |
100000 | 4051 | 6452 | 18089 | 6455 |
1000000 | 33864 | 38169 | 161793 | 37438 |
Number Of Threads (1 record) | Native API Time (in ms) | SpringData Time (in ms) | Morphia (in ms) | Kundera (in ms) |
10 | 37 | 20 | 50 | 45 |
100 | 109 | 118 | 138 | 118 |
1000 | 501 | 829 | 1082 | 676 |
10000 | 4099 | 4859 | 6583 | 5065 |
40000 | 11572 | 13268 | 16373 | 13559 |
50000 | 13604 | 15844 | 19822 | 16238 |
100000 | 24755 | 28932 | 35576 | 29129 |
Number Of Threads (1000 rec/ thread) | Native API Time (in ms) | SpringData Time (in ms) | Morphia (in ms) | Kundera (in ms) |
10 | 1117 | 2195 | 3677 | 2093 |
100 | 3706 | 6002 | 19177 | 6970 |
1000 | 28401 | 31415 | 156349 | 41367 |
Source Code: Source code for producing these results is available here.
Steps to run:
- Download jar.
- java -jar {Number of records} {client type} {process mode} { number of threads} -Xmx1024m -XX:MaxPermSize=128m (e.g. java -jar /home/impadmin/workspace/kundera-2.0.5-perf.jar 1 pelops b -Xmx1024m -XX:MaxPermSize=128m
{client type} => 1) kunderaMongo 2) springData 3) NativeMongoAPI 4) morphia {process mode} => 1)c(Cnoncurrent) 2) b(Bulk) 3)cb(Concurrent+Bulk)
Above mentioned results are on the specified environment and use case and might have different outcome in other cases
-
Datastores Supported
- Releases
-
Architecture
-
Concepts
-
Getting Started in 5 minutes
-
Features
- Object Mapper
- Polyglot Persistence
- Queries Support
- JPQL (JPA Query Language)
- Native Queries
- Batch insert update
- Schema Generation
- Primary Key Auto generation
- Transaction Management
- REST Based Access
- Geospatial Persistence and Queries
- Graph Database Support
-
Composite Keys
-
No hard annotation for schema
-
Support for Mapped superclass
-
Object to NoSQL Data Mapping
-
Cassandra's User Defined Types and Indexes on Collections
-
Support for aggregation
- Scalar Queries over Cassandra
- Connection pooling using Kundera Cassandra
- Configuration
- [Kundera with Couchdb] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with--Couchdb)
- [Kundera with Elasticsearch] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-Elasticsearch)
- [Kundera with HBase] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-HBase)
- [Kundera with Kudu] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-Kudu)
- [Kundera with MongoDB] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-MongoDB)
- [Kundera with OracleNoSQL] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-OracleNoSQL)
- [Kundera with Redis] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-over-Redis)
- [Kundera with Spark] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-Spark)
-
Extend Kundera
- Sample Codes and Examples
- [Blogs and Articles] (https://github.com/impetus-opensource/Kundera/wiki/Blogs--and-Articles)
-
Tutorials
* Kundera with Openshift
* Kundera with Play Framework
* Kundera with GWT
* Kundera with JBoss
* Kundera with Spring
-
Performance
-
Troubleshooting
-
FAQ
- Production deployments
- Feedback