Feature Summary
Amazon DynamoDB and Apache HBase both possess characteristics that are critical for successfully processing massive amounts of data. The following table provides a summary of key features of Amazon DynamoDB and Apache HBase that can help you understand key similarities and differences between the two databases. These features are discussed in later sections.
Table 1: Amazon DynamoDB and Apache HBase Feature Summary
Feature | Amazon DynamoDB | Apache HBase |
---|---|---|
Description | Hosted, scalable database service by Amazon | Column store based on Apache Hadoop and on concepts of BigTable |
Implementation Language | - | Java |
Server Operating Systems | Hosted | Linux, Unix, Windows |
Database Model |
Key-value
& Document store |
Wide
column store |
Data Scheme | Schema free | Schema free |
Typing | Yes | No |
APIs and Other Access Methods | Flexible | Flexible |
Supported Programming Languages | Multiple | Multiple |
Server-side Scripts | No | Yes |
Triggers | Yes | Yes |
Partitioning Methods | Sharding | Sharding |
Throughput Model | User provisions throughput | Limited to hardware configuration |
Automatic Scaling | Yes | No |
Partitioning | Automatic partitioning | Automatic sharding |
Replication | Yes | Yes |
Durability | Yes | Yes |
Administration | No administration overhead | High administration overhead in self-managed and minimal on Amazon EMR |
User Concepts | Yes | Yes |
Data Model | ||
Row | Item – 1 or more attributes | Columns/column families |
Row Size | Item size restriction | No row size restrictions |
Primary Key | Simple/Composite | Row key |
Foreign Key | No | No |
Indexes | Optional | No built-in index model implemented as secondary tables or coprocessors |
Transactions | ||
Row Transactions | Item-level transactions | Single-row transactions |
Multi-row Transactions | Yes | Yes |
Cross-table Transactions | Yes | Yes |
Consistency Model | Eventually consistent and strongly consistent reads | Strongly consistent reads and writes |
Concurrency | Yes | Yes |
Updates | Conditional updates | Atomic read-modify-write |
Integrated Cache | Yes | Yes |
Time-To-Live (TTL) | Yes | Yes |
Encryption at Rest | Yes | Yes |
Backup and Restore | Yes | Yes |
Point-in-time Recovery | Yes | Yes |
Multiregion, Multi-NameNode | Yes | No |