NoSQL

This one is reviewed but I need to delete its copy from hubpages or somewhere

NoSQL Data models:

  1. key-value 
    1. Aggregate model. 
    2. key or id is used to get the data. 
    3. Lookup is based on the key.  
  2. document
    1. Aggregate model. 
    2. key or id used to get the data. 
    3. Lookup is based on the fields in the aggregate in form of query. Parts of the aggregate are retrieved rather than whole. DB will create indexes on the aggregate. 
      1. People can put ids for lookup.
      2. Mostly the lookup will be on something else and not id. 
      3. Partial lookups are possible. 
  3. column family
    1. Data is organized into columns. 
    2. Useful in case of reads. 
    3. Imposes structure on the aggregate. 
  4. graph

Data distribution Model:
  1. Sharding: Distributes different data across different servers. 
  2. Replication: Copies data across multiple servers. Configurations include: 
    1. Master-Slave: 
      1. Master handles writes and sync with Slave
      2. Slave handles reads
      3. Reduces the chance of update conflicts. 
    2. Peer-to-peer:
      1. Any handle/system will be able to handle the writes. They will sync with each other. 
      2. Avoids single point of failure but will need to take care of conflicts. 
DB scaling Tips & Tricks: 
  1. Don't use shared databases for different applications. Instead use single database for single applications. Then get the data from different applications into Hadoop file system(shared Database). 
  2. Vertical Scaling: It means adding disk space, storage, memory. 
  3. Horizontal Scaling: It means adding more machines/clusters. 
  4. Relational databases can't work on clusters because they communicate to the single disk space. So by desing they will follow vertical scaling. 
    1. For different sets of data, rdbms runs on different servers(effectively sharding the data).
    2. Application layer takes care of which data is stored where. 
    3. RDBMS are usually single server and negotiation of contracts get tedious. 
    4. They are aggregate ignorant. 
  5. Polygot persistence: It means using different data stores in different circumstances.
  6. NoSQL is used as application DB and not integration DB.
  7. Aggregate orientation ensures that minimum number of nodes are queried to get the data. 
    1. It helps to aggregate data together to ensure that similar data lies on single node so querying is easy and optimized. 
    2. Its central to cluster. 
    3. DB will ensure data is stored together on nodes as aggregates.
    4. Manipulation of multiple aggregate need to happen at the application level. 
You might also like:


Important Metrics for Product Managers

There are 3 broad categories:

User engagement 


User Engagement metrics: Use cohort analysis over a period of time. This will help understand how the behavior has changed overtime. 
  1. Number of sessions/user. 
    1. How often the users log in or open the app. 
  2. Session duration for a cohort(group of users performing a specific function) over time:
    1. How much time they spent interacting with your product. 
    2. Compare average session duration between churned and retained users. 
  3. Number of key user actions/session
    1. Select important user actions(like click on something) then trace them over time and for different groups of people. 

Business metrics

  1. Customer Lifetime Value - LTV
    1. Amount of revenue generated by different customers. 
    2. Don't calculate Customer Lifetime Revenue. 
      1. Deduct operating and development costs. 
  2. Customer Acquisition Cost - CAC
    1. Acquisition marketing costs/number of paying customers acquired over period of time. 
    2. Acquisition costs = all operating and dev costs. 
    3. For healthy SaaS startups LTV/CAC >=3
  3. Average Revenue/Account - ARPA
    1. Amount of revenue per account per month. 
    2. If this metric is stable then team is on right track to provide value to customers that keeps them on the platform.
    3. If you have better support and branding then you can consider increasing ARPA without changing pricing or product. 
  4. Monthly Recurring Revenue - MRR
    1. Company's or product revenue/month. 
  5. Logo churn & Revenue churn rates:
    1. Percentage of paying customers/account that are lost/month. 
    2. Calculate as: cohort and aggregated. 
    3. Revenue churn: Revenue the company loses/month due to churns or downgrades. This is important. 
  6. Retention rate: 

Customer Service:

  1. Number of incoming support tickets: Smaller the number better the state of the platform or software. 
  2. Net Promoter Score
Source: https://productcoalition.com/critical-metrics-every-product-manager-must-track-c5f1e46e3423

Some math basics for metric calculation:

  1. Mean = usual average of all the numbers
    1. Ex: Mean of 1,2,3,4,5 = (1+2+3+4+5)/5 = 3 
  2. Median is the middle value of all the sorted numbers from the input sources:
    1. Ex: 1,2,3,4,5: Median =3 
    2. Ex: 1,2,3,4: Median = (2+3)/2 = 2.5
  3. Mode is number that is often repeated:
    1. Ex: 1,3,3,3,4: Mode = 3
    2. Ex: 1,3,4,5: Mode = none since none of the numbers are repeated. 
  4. Range: Difference of smallest and largest number
    1. 1,2,3,4,5 = 5-1 = 4
You might also like:

NoSQL

This one is reviewed but I need to delete its copy from hubpages or somewhere NoSQL Data models: key-value  Aggregate model.  key or i...