What database should I use

When choosing a database, different people use different criteria:

  • Database procurement staff: 
    • Purchase costs:
      • storage requirements
      • network requirements.
  • Database administrators (DBAs) care about:
    • Operation and maintenance costs:
      • A reliable monitoring and alerting system
      • Support for backup and restore
      • Reasonable upgrade and migration costs
      • An active support community
      • Ease of performance tuning
      • Ease of troubleshooting
    • Service stability:
      • Support for multiple data replicas
      • Highly available services
      • Support for multiple writes and multi-active architecture
    • Performance:
      • Latency
      • Queries per second (QPS)
      • Whether it supports more advanced hierarchical storage features
    • Scalability: Whether it’s easy to scale horizontally and vertically
    • Security: Whether it meets audit requirements and prevents SQL injections and information leakage
  • Application developers care about:
    • Stable services
    • Performance
    • Scalability
    • Ease of developing database interface
    • Ease of modifying the database schema

Simply to decision between SQL and NoSQL

  1. Data Schema Complex
    1. Yes —–> 2
    2. No  —–> 3
  2. Various search method or strong analysis (Select method > Update method)
    1. Yes —–> SQL
    2. No  —–> NoSQL
  3. Put into lower performance devices
    1. Yes —–> NoSQL
    2. No  —–> SQL

Simply choose a kind type of SQL Database

  1. DATA SIZE < 1TB ?
    1. Yes —–> 2
    2. No  —–> 3
  2. Need Open-Sources ?
    1. Yes —–> MariaDB
    2. No  —–> MariaDB / MySQL
  3. Scalability?
    1. No  —–> TokuDB
    2. Yes —–> TiDB

Simply choose a kind type of NoSQL Database

  1. Document database ?
    1. Yes —–> MongoDB
    2. No  —–> 2
  2. Accept latency ?
    1. Yes —–> TiKV
    2. No —–> 3
  3. Data size ?
    1. Size > 100 GB  —–> Couchbase
    2. 20GB > Size > 100GB   —–> 4
    1. Size < 20 GB —–> Redis
  4. Schema Complex?
    1. Yes —–> Redis cluster / Smart Jedis
    2. No —–> Couchbase

Add a Comment

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *