Untitled

Questions to ask:

  1. is it read-heavy or write heavy? what is the ratio (assumption)
  2. traffic estimates, in seconds
    • Queries Per Second (QPS)
      • the raw request that hits your server
    • Read/Write ratio, in order to get
      • Reads per second
      • Writes per second
  3. storage estimates, in TOTAL
    • assumption of how long you store the data for before you throw it away
    • Number of Objects
      • the unit of things you use to power your app, could be URL, could be User row in db, could be files for a cloud storage system etc.
    • Total Size required to store those objects IN TOTALITY
      • if assumption is to store data for 5 years, then it's Number of Objects added to the system per month * 5 years
  4. bandwidth estimates
    • write requests per second, based on traffic estimates
    • read requests per second, based on traffic estimates
  5. memory estimates
    • caching for hot objects
      • your app unit that gets used frequently
    • follow the 80/20 rule
      • 20% of your objects generate 80% of traffic

example result

typeunit
New URLs (WRITE)200/s
URL redirections (READ)20K/s
Incoming data100KB/s
Outgoing data10MB/s
Storage for 5 years15TB
Memory for cache170GB