--- title: Database - Pros && Cons description: List of databases with there pros and cons tags: database, design, product robots: noindex, nofollow --- # Databases - Pros && Cons ## Couch DB - Pros - Stores data in JSON documents - Schema free - Offline mode - enables applications to store collected data locally on mobile devices and browsers, then synchronizes that data once it is back online - Good for local first app - Support binary data - IBM Cloudant (managed service based on Apache Couch DB) - Cons - No good managed service (IBM Cloudant is compatible but not purily couchDb) - Best suited for client side data storage - Lacks good documentation - Pricing - IBM Cloudant - Starting at USD 22.00 per month - Fixed ratio of: 50 reads/sec && 50 writes/sec - 25 GB Storage - Starting at USD 75.00 per month - Fixed ratio of: 100 reads/sec && 50 writes/sec && 5 global queries/sec - Serverless scalling ## Timescale DB - Pros - Based on Postgres - Optimized for timeseries - Good compression ratio (approx 95%) - Fully managed service on AWS, Azure & GCP - Cons - Will need to design schema at initial stage of development - Best suited for timeseries data (like IOT) - Scalling out is difficult - Pricing - Starting at USD 49.00 per month - 25 GB Storage - us-east-1 region - 2 GB RAM && 0.5 CPU - Starting at USD 131.00 per month - 20 GB Storage - Indian region - 4 GB RAM && 2 CPU ## Clickhouse DB - Pros - Column-oriented - SQL Support - Hot and Cold storage separation - Focused on OLAP (Online Analytical Processing) - Managed service provided by Yandex && Tencent && Altinity - Cons - Not suited for OLTP (Online Transaction Processing) - Will need Zookeper to manage cluster - No good managed service - Yandex && Tencent does not provide datacenter in India - Altinity.cloud lacks good documentation - Pricing - N/A ## Quest DB - Pros - Column-based storage - Option to partition tables by intervals of time - Best suited for IOT data - Full SQL support - Cons - Only a timestamp column can be designated timestamp - Only one column can be elected for designated timestamp for a given table - Inserts in designated timestamp need to be incrementing and out-of-order timestamps inserts will be rejected - No updation allowed - Pricing ## Foundation DB - Pros - ACID compliant distributed db - one single global key space - reading latency < writing latency , reading takes less hops than writing - implicit failure handling using just metadata - Can be used on commodity server - Cons - No DBaaS offering - Serializability - Follows simple b-tree and have sorted key-value pair - Have to generate id