openebs-archive / openebs-docs

OpenEBS Documentation
https://docs.openebs.io
Apache License 2.0
37 stars 137 forks source link

What is the difference between OpenEBS Jiva and cStor storage engines? #502

Closed ranjithwingrider closed 5 years ago

ranjithwingrider commented 5 years ago

This question is asked by @ksondere in the community channel

I don't think it's overly clear to me why I wouldn't just use jiva Vs cStor. Where can we use Jiva and cStor,means what kind of scenarios?

ranjithwingrider commented 5 years ago

Below table identifies few differences between the two engines.

FEATURE JIVA CSTOR
Light weight and completely in user space Yes Yes
Synchronous replication Yes Yes
Suitable for low capacity workloads Yes Yes
Snapshots and cloning support Basic Advanced
Suitable for high capacity workloads   Yes
Thin Provisioning   Yes
Data consistency   Yes
Disk pool or aggregate support   Yes
On demand capacity expansion   Yes
Data resiliency (RAID support )   Yes

cStor is recommended most of the times as it commands more features and focussed development effort. cStor does offer robust features including snapshots/clones, storage pool features such as thin provisioning, on demand capacity additions etc.

Jiva is recommended for a low capacity workloads which can be accommodated within the container image storage, for example 5 to 50G. Jiva is very easy to use, and provides enterprise grade container native storage without the need of dedicated hard disks. Consider using cStor instead of Jiva especially when snapshots and clones capabilties are needed.

ranjithwingrider commented 5 years ago

Merging to master from staging. Tracked through https://github.com/openebs/openebs-docs/pull/507