왕초보만/기초 왕초보만

스케일 업과 스케일 아웃 이란?

JumBack2 2023. 7. 25. 10:58

 

1. 스케일업이란 영어 "Scale-up"에서 나왔다. 스케일업 뜻은 간략하게 말해 키우는 것, 규모를 확장하는 것이다. 기술, 제품, 서비스, 생산, 기업 등 규모를 확대하는 것을 스케일업으로 쓰인다. 

출처: https://korean-dictionary.tistory.com/278 [한글 신조어 사전]

 

우리가 IT에서 이 단어를 많이 볼 수 있는데

개발자는 DB 관련하여 이 단어를 많이 접하게 된다.

그럼 스케일 업과 스케일 아웃은 무엇일까?

 

1. 스케일 업(Scale Up)

서버나 DB 자체의 성능을 증가시키는 것을 의미한다. 예를 들어 서버 한대의 RAM 이 8GB이고 CPU가 I5 였는데

성능의 문제가 발생하여 스케일 업을 해야겠다고 말한다면 RAM을 16GB로 올리거나 CPU를 더 위 성능 가진 I7으로

바꾼다는 것을 의미한다. 

 

2. 스케일 아웃(Scale Out)

스케일 아웃이란 서버나 DB의 경우 그 같은 성능의 장비의 수를 늘리는 것을 말한다. 예를 들어 지금까지 1대의 서버가 

어떤 작업을 처리하고 있었는데 점점 많은 사용자의 접속으로 문제가 생겼다면 같은 성능의 서버를 1대 더 증설하거나 2대 더 증설하는 것을 스케일 아웃이라고 한다.

 

여기서 조금 더 심화로 들어가면 개발을 하는 도중 문제가 발생하면

상황에 따라 스케일 업을 해야할지 스케일 아웃을 해야할지 고민하는 경우가 생긴다.

왜냐하면 둘 다 현재 상황보단 좋아질 수 있겠지만 장단점이 조금 다르다.

 

스케일 업 스케일 아웃
확장성 장비 자체의 성능을 올리는 것으로 수직 확장이라고 불린다. 그러나 성능 확장에는 한계가 있다.(기술의 한계가 있기 때문에) 같은 성능의 장비를 여러 대의 장비로 나누어 처리할 수 있도록 하는 것. 수평 확장. 지속적 확장이 가능하다.
서버 비용 성능 증가에 따른 비용 증가폭이 크다 스케일 업에 비해 확장 비용이 저렴하다.
운영 비용 관리 편의성이나 운영 비용은 큰 변화가 없다. 대수가 늘어날수록 관리 편의성이 떨어지고 운영비용이 증가함
장애 한 대의 서버에 부하가 집중되므로 장애 시 장애의 영향도가 크다. 읽기/쓰기 등 처리가 여러 대의 서버에 분산되어 처리됨으로 전면장애의 가능성이 적다.
주요 기술 고성능 CPU, Memory 업그레이드 , SSD Sharding, IN Memory Cache, NoSQL, Object Storage, Distributed Storage
장점 OLTP에서 스케일 아웃보다 효율적 스케일 업에 비해 비용이 저렴한 편이고 확장성이 좋음
단점 스토리지 컨트롤러나 용량 확장 제한의 기술적인 문제가 있을 수 있다. 병령 컴퓨팅의 어려움이 있고, 코어가 늘어남에 따라 성능이 마냥 증가되지는 않고, 대역폭은 증가해 지연이 발생 가능하다.