반응형

수평적 확장과 수직적 확장 – 데이터베이스 확장 방법

 

데이터 확장성

데이터 확장성은 데이터를 추가 및 제거하여 변화하는 수요를 조작할 수 있는 데이터베이스의 능력을 나타냅니다. 이러한 방식으로 데이터베이스는 소프트웨어와 같은 속도로 성장합니다.

스케일링을 통해 데이터베이스는 시스템 리소스의 용량을 확장하거나 축소하여 애플리케이션의 자주 변경되는 사용을 지원할 수 있습니다.

데이터베이스를 확장할 수 있는 두 가지 방법이 있습니다.

  • 수평적 확장(수평 확장)
  • 수직 스케일링(스케일업)

이 기사에서는 두 가지 확장 방법을 살펴보고 선택에 도움이 되도록 각각의 장단점을 논의합니다.

수평적 스케일링

이 확장 접근 방식은 증가된 워크로드를 처리하기 위해 더 많은 데이터베이스 노드를 추가합니다. 개별 서버를 확장하는 대신 서버의 부하를 줄입니다.

더 많은 용량이 필요할 때 클러스터에 더 많은 서버를 추가할 수 있습니다. 이 스케일링 방법의 다른 이름은 수평 확장.

수평적 확장의 장점:

  • 업그레이드가 쉽습니다
  • 구현이 간단하고 비용이 적게 듭니다.
  • 유연하고 확장 가능한 도구를 제공합니다.
  • 서버 인스턴스의 무제한 추가로 무제한 확장 가능
  • 수평으로 확장된 데이터베이스를 쉽게 업그레이드할 수 있습니다. 서버에 노드를 추가하기만 하면 됩니다.

수평적 확장의 단점:

  • 코드의 모든 버그는 디버그하고 이해하기가 더 복잡해집니다.
  • 라이센스가 부여된 노드가 더 많아지기 때문에 라이센스 비용이 비쌉니다.
  • 필요한 공간, 냉각 및 전력 증가로 인해 데이터 센터 비용이 크게 증가합니다.

수평 크기 조정을 사용하는 경우:

천 명 이상의 사용자를 처리하는 경우 서버가 여러 사용자 요청을 받으면 모든 것이 잘 확장되기 때문에 이 확장 시스템을 사용하는 것이 가장 좋습니다.

또한 여러 서버가 있기 때문에 충돌하지 않습니다.

수직 스케일링

수직 확장 접근 방식은 동일한 논리 서버의 리소스를 늘려 단일 시스템의 용량을 늘립니다. 여기에는 메모리, 스토리지 및 처리 능력과 같은 리소스를 기존 소프트웨어에 추가하여 성능을 향상시키는 작업이 포함됩니다.

이것은 데이터베이스를 확장하는 전통적인 방법입니다. 이 접근 방식의 또 다른 이름은 확장.

02vertical-scaling-software-scalability

수직 확장의 장점:

  • 공간, 냉각 및 전력을 위한 데이터 센터 비용은 더 낮아질 것입니다.
  • 가성비 좋은 소프트웨어입니다
  • 사용 및 구현이 간편합니다. 관리자가 소프트웨어를 쉽게 관리 및 유지 관리할 수 있습니다.
  • 이 접근 방식을 위한 리소스는 유연합니다.

수직 확장의 단점:

  • 비용은 낮을 수 있지만 확장할 때마다 라이선스 비용을 지불해야 합니다.
  • 고급 서버로 인해 하드웨어 비용이 더 많이 듭니다.
  • 업그레이드할 수 있는 양에는 제한이 있습니다.
  • 단일 데이터베이스 공급업체로 제한되어 있고 마이그레이션이 어렵거나 처음부터 다시 시작해야 할 수 있습니다.

수직 크기 조정을 사용하는 경우:

수직적 확장 접근 방식은 고유한 데이터 일관성을 가진 시스템이 필요한 경우 적합합니다.

서버의 워크로드 밸런싱에 대해 걱정하고 싶지 않다면 수직적 확장이 최선의 선택입니다.

수직 및 수평 크기 조정의 차이점

수직의 수평의
라이선스 비용이 저렴합니다. 라이센스 비용이 더 많이 듭니다.
이 방법은 추가 개별 서버로 서버의 성능을 높입니다. 이 방법은 기존 서버로 서버의 파워를 증가시킵니다.
이 데이터는 하나의 단일 노드에 존재하며 멀티코어를 통해 확장됩니다. 이것은 데이터의 단일 부분을 포함하는 각 노드를 분할하는 것을 기반으로 합니다.

앱에 가장 적합한 확장 방법은 무엇입니까?

데이터베이스를 확장하는 방법을 선택할 때 확장 및 확장할 때 무엇이 ​​문제인지 고려해야 합니다.

이제 앱에 가장 적합한 확장 시스템을 선택할 수 있도록 고려해야 할 몇 가지 요소를 살펴보겠습니다.

부하 분산

수직 크기 조정 시스템은 단일 서버(수직 크기 조정)가 있고 부하 균형을 조정할 필요가 없기 때문에 부하 균형에 가장 적합합니다. 수평적 확장을 위해서는 워크로드의 균형을 균일하게 유지해야 합니다.

실패 지점

수평 확장 시스템에는 둘 이상의 서버가 있으므로 하나의 서버가 충돌하면 다음 서버가 여유를 가져옵니다. 없다는 뜻이다. 단일 실패 지점 시스템을 탄력적으로 만듭니다.

하지만 버티컬 스케일링 시스템에서는 서버가 하나뿐이므로 서버가 충돌하면 모든 것이 오프라인이 됩니다.

속도

수직적 스케일링 시스템은 하나의 서버에서 실행되기 때문에 속도 면에서 더 빠릅니다. 프로세스 간 통신 – 즉, 서버는 자체적으로 통신하며 빠릅니다.

수평적 확장 시스템은 둘 이상의 서버 간에 네트워크 호출이 있습니다. 이것은 라고도 원격 프로시저 호출(RPC). 그러나 RPC는 느립니다.

데이터 일관성

서버를 다룰 ​​때 최종 사용자가 요청을 보낼 때 서버에 저장된 데이터가 일관성이 있는지 확인해야 합니다.

수직 확장 시스템은 모든 정보가 단일 서버에 있기 때문에 데이터 일관성이 있습니다. 그러나 수평 확장 시스템은 여러 서버로 확장되므로 데이터 일관성이 큰 문제가 될 수 있습니다.

하드웨어 제한 사항

수평 확장 시스템은 요청 시 발생하는 서버 수가 데이터베이스 또는 서버의 사용자 수에 선형이기 때문에 확장성이 뛰어납니다. 반면 수직적 스케일링 시스템은 모든 것이 단일 서버에서 실행되기 때문에 한계가 있습니다.

데이터베이스를 확장할 시스템을 선택할 때 이 기사에 있는 정보의 장단점 목록을 작성하십시오. 어떤 것을 사용할지 결정하는 데 도움이 됩니다.

결론

클라우드 컴퓨팅 모델의 확장성은 IT 용량을 신속하고 즉각적으로 늘리거나 줄일 수 있는 능력입니다. 두 가지 유형의 확장이 작동하는 방식을 아는 것은 데이터베이스 또는 서버 관리에서 중요한 역할을 하기 때문에 매우 중요합니다.

빠른 요약...

  • 서버의 역할은 증가된 작업 부하를 처리할 수 있도록 용량을 향상시키는 것입니다. 수직 스케일링.
  • 시스템의 임무는 분산 워크로드를 관리하기 위해 새 노드를 추가하는 것입니다. 수평적 스케일링.
  • 수평적 스케일링 시스템은 사용자 수가 증가함에 따라 확장됩니다.
  • 수직 확장 시스템은 프로세스 간 통신 기능으로 인해 더 빠릅니다.

읽어 주셔서 감사합니다!

                    
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기