System Design Full Tutorial for Beginners | Learn System Design from Scratch | System Architecture

preview_player
Показать описание

What is System Design?
System design is the process of designing the elements of a system such as the architecture, modules and components, the different interfaces of those components and the data that goes through that system. Major tasks performed during the system design process are initialising design definition, establishing design characteristics, assessing alternatives for obtaining system elements and managing the design.

🔹 What is horizontal scaling and vertical scaling?
With vertical scaling (a.k.a. “scaling up”), you're adding more power to your existing machine. In horizontal scaling (a.k.a. “scaling out”), you get the additional resources into your system by adding more machines to your network, sharing the processing and memory workload across multiple devices.

In this video, we shall understand the difference between horizontal scaling and vertical scaling through the example of "Delicious" website. Delicious started as a college project but scaled out to more than 5M users with the concept of horizontal scaling.

What is hashing?
In computer science, consistent hashing is a special kind of hashing technique such that when a hash table is resized, only keys need to be remapped on average where is the number of keys and. is the number of slots. Consistent hashing solves the problem of rehashing by providing a distribution scheme which does not directly depend on the number of servers. In consistent hashing when a server is removed or added then the only keys from that server are relocated.

What is a load balancing?
Load balancers are used to increase capacity and reliability of applications. They improve the overall performance of applications by decreasing the burden on servers associated with managing and maintaining application and network sessions, as well as by performing application-specific tasks.

🔹What is cache?
A cache's primary purpose is to increase data retrieval performance by reducing the need to access the underlying slower storage layer. Trading off capacity for speed, a cache typically stores a subset of data transiently, in contrast to databases whose data is usually complete and durable.

---------------------------------------- About SCALER --------------------------------------------------

We are a tech-focused upskilling and reskilling platform catering to tech enthusiasts in universities and working professionals. There are more Scaler graduates working at Amazon than all of the IITs combined!

📌 Follow us on Social and be a part of an amazing tech community 📌

🔔 Hit that bell icon to get notified of all our new videos 🔔

If you liked this video, please don't forget to like and comment. Never miss out on our exclusive videos to help boost your coding career! Subscribe to Scaler now!

#systemdesign #interviewprep #coding #SCALER
Рекомендации по теме
Комментарии
Автор

Got a question? Feel free to drop them in the comments below! We make sure all your queries are answered. If you don't want to miss out on exclusive content, hit the subscribe button and turn on the notifications as well.

SCALER
Автор

Intro of course (u can skip)
MVP Design example (User/ Blog/ Comment) 1:01
Horizontal vs Vertical Scaling 13:24
- DNS 14:17
- Load balancing 19:58
-- Load distribution algo 31:58
Stateless vs Stateful Systems 37:09
- Load balancing in stateful systems (Pubg) 42:42
Consistent hashing 50:17
What is Caching? 54:54
CAP Theorem 1:05:07
System Design interview questions (Short url generator) 1:17:42
System Design Mock Interview (google search) 2:02:41
Q&A 3:06:00

nikmalik
Автор

Divide your videos in chapter timestamp for easy navigation. That would be more helpful for videos longer than 20 minutes

Bhavin-Desai
Автор

Thank you so much for this!
Because of this video I was able to crack system design interview and eventually got placed at Atlassian 🙌

aakashp
Автор

Just 26 minutes into it and I couldn't resist adding a comment to appreciate and thank Scalar and Mohit for this wonderful content. Amazing material 👍👍👍

curiossoul
Автор

Below is my saying for a LB add/minus services questions:
If we add further clusters or remove: Data however would be distrubuted across all residing without any exception.

_ipublic
Автор

Examples about caching and CAP theorem given by Anshuman are really good.

jaymanik
Автор

Apart from the cost of the course...this guy in an immensely intelligent guy...for sure ll crack top companies

debashishchakraborty
Автор

Is it enough to get started with the System Design?
or it there any advance topics we need to cover alongside this.

Ed-gdec
Автор

I'm sure the sound can be better... thank you guys for the content

damilola_adegunwa
Автор

Looks like this is video is missing a lot in between, like a lot of chunks are missing in between, I’m sure it a preview version of the course for business reasons, but my question is is the preview version of the topics too or this is the complete version of the topic?

bharatjoshi
Автор

Im trying to deside on a systems integration project.Tthat would be the easiest to make for my last class for my degree. Im at a loss as to what to do. Any help would be great

farrahvaldez
Автор

1 user can only associates with 1 company at a given time though company can have multiple users. company --> User M:1. Why we need transient table between user and company?

pushkaranand
Автор

System Design Interview Workflow by Mohit is really good.

jaymanik
Автор

start date and end date should be in users mapping table in case of institution & company @8:05

raviprakash
Автор

Kindly do let me know if my understanding is correct about the first design problem at(7.20 min). I am trying to design data modeling by keeping employer and org tables as indpendent and using as Fk .

Please guide me if there is any issue like design side, performance point of view etc. ?

Institute

id
name

Organization

id
name
address

User_Education

id
user_id
institute_id(it is a FK of id PK of institute table)
start
end
description


Employment

id
user_id
company_id(it is a FK of id PK of Organization table)
start
end -->can be null in case of current org.
description


Kindly reply.

rakesh
Автор

Good one, First time I have watched SD video. Thanks a lot.

venkatswarna
Автор

These are really good videos. Thank you!

sitanshugupta
Автор

Kindly increase the volume on this video or further videos!

gauravashq
Автор

ChatGPT says -->

Amount of Data Moved = |M - N| * Data per Server

Where:

M is the final number of servers after scaling.
N is the initial number of servers before scaling.
Data per Server is the amount of data each server is responsible for moving.

ksantoshkumar