-
Notifications
You must be signed in to change notification settings - Fork 233
Performance
This page provides information on Kundera's performance while performing read/ write operations on different databases supported by it.
Kundera's performance was benchmarked against different native libraries it is based upon. Yahoo!'s YCSB Framework was used for measuring throughput and latency.
Hardware used:
- Processor: MD Athlon(tm) 64 X2 Dual Core Processor 4000+
- OS: CentOS 6.3
- RAM: 4GB
Source code is available at: https://github.com/impetus-opensource/kundera-benchmarks
Below sections summarize performance run results for different databases:
Workload: 1 million
No of threads: 30
Note: Kundera uses connection pool which gives slight benefit over raw thrift APIs with multiple threads (see Image 1).
_(Image 1: Cassandra Performance Comparison)_Workload: 1 million
No of threads: 30
_(Image 2: HBase Performance Comparison)_Workload: 1 million
No of threads: 5
_(Image 3: MongoDB Performance Comparison)_Workload: 1 million
No of threads: 20
_(Image 4: Neo4j Performance Comparison)_Workload: 1 million
No of threads: 5
_(Image 5: Redis Performance Comparison)_Kundera puts a slight overhead against native libraries it uses. A quick glance at charts shown above would reveal that Kundera adds more latency to operations, and results in lower throughput as compared to its native library counterpart. These overheads are small and a good tradeoff if we look at kind of key services it provides, namely: Ease of use, persistence cache management, transaction handling, secondary indexes, polyglot persistence among others.
-
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
-
Kundera with Elasticsearch
-
Kundera with HBase
-
Kundera with Kudu
-
Kundera with RethinkDB
-
Kundera with MongoDB
-
Kundera with OracleNoSQL
-
Kundera with Redis
-
Kundera with Spark
-
Extend Kundera
- Sample Codes and Examples
-
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