EP96: A cheat sheet for system design

EP96: A cheat sheet for system design

This week’s system design refresher: A cheat sheet for system designs Visualizing a SQL query Cloud Disaster Recovery Strategies Part-Time Opportunity: Tech Researcher & Writer at ByteByteGo Free Digital Download: The State of Streaming Data (Sponsored)  ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌
Forwarded this email? Subscribe here for more

This week’s system design refresher:

  • A cheat sheet for system designs

  • Visualizing a SQL query

  • Cloud Disaster Recovery Strategies

  • Part-Time Opportunity: Tech Researcher & Writer at ByteByteGo


Free Digital Download: The State of Streaming Data (Sponsored)

Based on an independent survey of 300 streaming data-savvy tech professionals, this report shows how streaming data is used today, the size and shape of workloads, challenges, popular tools and plans for future adoption.

You’ll see what your peers are doing with streaming data, including:

  • Top concerns preventing companies from adopting streaming data

  • Daily volume of streaming data based on workload types

  • Data retention policies in use

  • Core components of streaming data pipelines

  • Top client libraries, data processing tools and formats

Download the report for the full findings.

Get Your Free Digital Copy


A cheat sheet for system designs

The diagram below lists 15 core concepts when we design systems. The cheat sheet is straightforward to go through one by one. Save it for future reference!

  • Requirement gathering

  • System architecture

  • Data design

  • Domain design

  • Scalability

  • Reliability

  • Availability

  • Performance

  • Security

  • Maintainability

  • Testing

  • User experience design

  • Cost estimation

  • Documentation

  • Migration plan


Visualizing a SQL query

SQL statements are executed by the database system in several steps, including:

  • Parsing the SQL statement and checking its validity

  • Transforming the SQL into an internal representation, such as relational algebra

  • Optimizing the internal representation and creating an execution plan that utilizes index information

  • Executing the plan and returning the results


Cloud Disaster Recovery Strategies

An effective Disaster Recovery (DR) plan is not just a precaution; it's a necessity.

The key to any robust DR strategy lies in understanding and setting two pivotal benchmarks: Recovery Time Objective (RTO) and Recovery Point Objective (RPO).

  • Recovery Time Objective (RTO) refers to the maximum acceptable length of time that your application or network can be offline after a disaster.

  • Recovery Point Objective (RPO), on the other hand, indicates the maximum acceptable amount of data loss measured in time.

Let's explore four widely adopted DR strategies:

  1. Backup and Restore Strategy:
    This method involves regular backups of data and systems to facilitate post-disaster recovery.

    • Typical RTO: From several hours to a few days.

    • Typical RPO: From a few hours up to the time of the last successful backup.

  2. Pilot Light Approach:
    Maintains crucial components in a ready-to-activate mode, enabling rapid scaling in response to a disaster.

    • Typical RTO: From a few minutes to several hours.

    • Typical RPO: Depends on how often data is synchronized.

  3. Warm Standby Solution:
    Establishes a semi-active environment with current data to reduce recovery time.

    • Typical RTO: Generally within a few minutes to hours.

    • Typical RPO: Up to the last few minutes or hours.

  4. Hot Site / Multi-Site Configuration:
    Ensures a fully operational, duplicate environment that runs parallel to the primary system, enabling uninterrupted functionality.

    • Typical RTO: Almost immediate, often just a few minutes.

    • Typical RPO: Extremely minimal, usually only a few seconds old.

Over to you: What factors would influence your decision to choose a DR strategy?


Part-Time Opportunity: Tech Researcher & Writer at ByteByteGo, Where Your Writing Teaches Millions

About ByteByteGo Newsletter:

The ByteByteGo newsletter is one of the largest and fastest-growing technology newsletters in the world, with over 500,000 readers. ByteByteGo also has a social media audience of over 2 million.

What You’ll Be Doing:

  • Researching: You will delve deep into interesting tech blogs, tech talks, and insightful papers.

  • Writing: Crafting a compelling ~2000-word blog/newsletter that covers noteworthy tech blogs, tech talks, and papers, and incorporates your thoughts.

  • Editing: Collaborating and iterating with me to finalize the article.

Requirements:

  • Minimum 3 years of experience in building large-scale distributed systems.

  • Passionate about explaining complex topics with simple terms.

  • Compelling writing style.

Hours:

  • The workload is initially expected to be around 5-10 hours per week, with the potential to increase.

  • Pays a competitive hourly rate.

Perks of the Part-time Job

  • Impact: Your work will be seen by millions of people around the world and will hopefully positively impact them.

  • Flexibility: Enjoy flexible hours as the position is fully remote.

Interested? Send your resume/LinkedIn and a sample of writing to hi@bytebytego.com

We appreciate your application and assure you that we will review all submissions. Due to the number of applicants, unfortunately, we may not be able to respond to everyone.

 
Like
Comment
Restack
 

© 2024 ByteByteGo
548 Market Street PMB 72296, San Francisco, CA 94104
Unsubscribe

Get the appStart writing


by "ByteByteGo" <bytebytego@substack.com> - 11:35 - 27 Jan 2024