안녕하세요. SQLER의 코난 김대우입니다. 
이번 강좌에서는, 1-5. SQL클라우드와 On-Premise를 진행 하겠습니다.


SQLER에서 진행되는, 챗GPT와 함께 배우는 SQL Server 강좌 목록

 

 

 

TL;DR

클라우드 데이터베이스와 On-Premise 데이터베이스의 유사점과 차이점을 살펴보고, 각각 어떤 장단점이 있는지, SQL Server는 어떻게 클라우드에서 적용되는지 살펴보겠습니다.

 

강좌에서 계속 클라우드 SQL, Azure SQL 이야기를 하시는데요, 대체 클라우드와 SQL이 어떤 관계가 있나요? 

 


기업과 조직의 IT 인프라스트럭처는 클라우드로 이전 중

SQL Server는 마이크로소프트의 데이터베이스 플랫폼입니다. 마이크로소프트는 Azure 클라우드 서비스도 제공합니다. 데이터베이스와 클라우드 모두 있으니 클라우드 데이터베이스도 제공하고 있겠지요.


클라우드에서 데이터베이스를 다양한 목적에 맞춰 사용할 수 있도록 마이크로소프트 Azure는 여러 옵션을 제공합니다. 이 강좌에서는 간략히 클라우드에 대해 알아보고, 어떤 클라우드 데이터베이스가 제공되는지 살펴보겠습니다.

 

 

클라우드 비교 및 요약: On-Premise vs IaaS vs PaaS

이미 클라우드에 대해서는 다들 알고 계시겠지만, 정리 차원에서 짚어 보겠습니다.
참고링크: 개발자 커뮤니티 SQLER.com - IaaS, PaaS, SaaS - 누구나 클라우드를 말한다

 

cloud_compare.jpg

이미지 - On-Premise, IaaS, PaaS, SaaS 비교


☑️ 챗GPT 활용: On-Premise, IaaS, PaaS, SaaS 비교해서 설명해줘

 


On-Premise

직접 인프라스트럭처부터 OS, 애플리케이션까지 모두 설치하고 관리하면서 사용하는 방식이 On-Premise입니다. On-Premise의 장점은 인프라부터 개발, OS는 물론, 플랫폼과 애플리케이션 등 모든 기술 스택을 직접 관리할 수 있다면, 회사나 조직에서 이를 모두 제어 가능한 장점이 있습니다
단점으로는 인프라의 구축하고 유지하는데 인력과 시간이 소요되고 클라우드 서비스에 비해, 확장성이나 유연성 확보가 어려울 수 있습니다.

 

IaaS

클라우드 서비스 제공자가 인프라를 제공합니다.
장점으로 인프라 구축과 유지에 시간을 뺏기지 않고 필요시에 신속하게 이용할 수 있으며, 클라우드 서비스 제공자가 인프라 정비에 많은 금액을 투자하므로 일반적으로 사용자가 직접 운용하는 것보다 가용성이 높고. 확장성 확보도 신속하게 처리 가능합니다.
단점으로는 인프라 부분이 캡슐화되어 있으므로, 자사에서 보안이나 가용성, 성능 등을 세밀하게 제어하고자 하는 기업에는 적합하지 않습니다. Scale-out으로 동적 확장할 경우, 애플리케이션에 대한 수정과 부하 분산(Load Balancing) 처리 등은 IaaS에서 기본으로 제공되지 않습니다. 서비스에 필요한 개발 코드 수정이 필요하거나 부하 분산 등을 위한 추가 비용이 발생할 수 있습니다.

 

PaaS

인프라와 플랫폼 모두 클라우드 서비스 제공자가 관리합니다.
장점으로는, 개발자에게 가장 유용한 클라우드 서비스로 애플리케이션 로직과 개발이라는 핵심 업무에 집중할 수 있습니다. 또한 부하분산(Load Balancing)이나 확장성 확보도 PaaS는 클라우드 서비스 제공자 측에서 수행해 주기 때문에 일단 애플리케이션 코드를 작성해서 서비스 제공자가 준비한 플랫폼에 올리기만 하면, 동적 확장 기능과 같은 모든 PaaS의 기능을 활용 가능합니다. 
단점으로는, PaaS 서비스의 구조상 애플리케이션 플랫폼이 함께 제공되는 구조. 즉, 플랫폼에 종속되는 구조로 애플리케이션이 개발되기 때문에 타 PaaS 플랫폼 등으로 이전이 어려울 수 있습니다. 기존 애플리케이션이 있을 경우, 같은 개발 언어나 프레임워크를 이용한다고 해도, 최소한의 개발 리소스를 투입해 PaaS 플랫폼에 맞도록 애플리케이션을 수정하는 과정이 필요합니다. 예를 들어, Python Flask로 구축된 웹 서비스 애플리케이션이 있을 경우 이를 Azure PaaS로 올리려면, 최소한 Azure에서 동작하기 위한 일부 코드 수정이 필요하며, 이는 어느 PaaS 플랫폼이나 마찬가지입니다.


☑️ 챗GPT 활용: 클라우드 PaaS 환경으로 애플리케이션을 이전하기 위한 코드 수정에 대해서 알려줘

 


SQL 클라우드 서비스

위의 클라우드의 IaaS / PaaS에 대해 이해하셨다면, 아래의 클라우드 SQL 서비스에 대해 정리할 수 있습니다.

 

04_sqliaas_sql_server_cloud_continuum.png

이미지 - SQL Server On-Premise 부터 PaaS 까지


Azure VM의 SQL Server: IaaS

SQL Server 워크로드를 편리하게 On-Premise에서 클라우드로 이전(리프트 앤 시프트 -lift and shift)하며 SQL Server 호환성 및 운영 체제 수준 액세스를 100% 유지합니다.
On-Premise의 SQL 서버를 클라우드로 이전하기 쉽습니다. On-Premise와 마찬가지로 모든 SQL 서버 제어가 가능하기 때문에, 이런 제어 기능을 사용하는 애플리케이션도 그대로 클라우드로 이전할 수 있습니다.

 

Azure SQL Managed Instance: PaaS

Azure VM SQL Server의 수준과 Azure SQL Database 수준의 중간 정도입니다. 일부 VM의 기능을 사용 가능하며, 관리되는 환경이기 때문에 Azure SQL Database의 거의 모든 PaaS 혜택을 제공합니다. SQL Server 데이터베이스 엔진과 거의 동일한 기능을 제공하며, 서비스로 제공되는 관리형 인스턴스를 통해 기존 SQL Server 애플리케이을 올릴 수 있고, 클라우드로 이전에 대부분 적합합니다.


☑️ 챗GPT 활용: 클라우드 VM(Virtual Machine)과 IaaS에 대해서 알려줘

 

Azure SQL Database: 높은 수준의 PaaS

완전하게 관리되는(Fully managed) 클라우드 SQL 데이터베이스입니다. 클라우드의 장점을 최대한 가져와 개발에만 집중해 빠른 비즈니스 전개가 가능합니다. 데이터베이스를 제외한 나머지 부분에서는 제어할 수 있는 기능이 제한됩니다.

 

AWS나 구글 클라우드의 SQL 서버

- AWS에서는 RDS로 SQL Server를 PaaS로 제공합니다.
  SQL 데이터베이스 서버 | Amazon Web Services


- Google Cloud에서는 SQL Server - Cloud SQL로 제공합니다.
  SQL Server용 Cloud SQL - 관계형 데이터베이스 서비스

 

SQL Server와 클라우드 서비스 요약

SQL Server는 On-Premise부터 클라우드 IaaS와 PaaS에서 모두 사용 가능하며, 대부분의 클라우드 서비스 제공자(CSP)는 IaaS부터 완전 관리형 PaaS까지 SQL Server를 지원합니다. 즉, SQL Server를 배우면 표준 SQL 기능부터, On-Premise - 클라우드까지 다양한 환경에서 활용할 수 있습니다.

 

cloud_connect_Slide10.PNG

이미지 - SQL Server 2022의 클라우드 연결성

 

sql_cloud_dr.PNG

이미지 - 하이브리드 클라우드와 비즈니스 연속성
 

감사합니다.

 

 

SQL 강좌 책 구매

강좌가 도움이 되셨다면, 책으로 구매 가능합니다. 책 판매 수익금은 전액 기부되며, 아래 링크에서 구매하시면 더 많은 금액이 기부됩니다. 

 

책구매 링크: 챗GPT와 함께하는 마이크로소프트 SQL Server 2022 

책구매링크.png

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 23764
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 12435
2234 SQL강좌: 2-12. SQL UNION 연산자 코난(김대우) 2023.08.18 48
2233 SQL강좌: 2-11. SELECT INTO - 쿼리 결과를 테이블로 복사 코난(김대우) 2023.08.18 96
2232 SQL강좌: 2-10. 하위 쿼리(Subquery-서브쿼리) 코난(김대우) 2023.08.18 68
2231 SQL강좌: 2-9. JOIN - 테이블 연결 file 코난(김대우) 2023.08.18 113
2230 SQL강좌: 2-8. GROUP BY, ROLLUP, CUBE 코난(김대우) 2023.08.18 111
2229 SQL강좌: 2-7. ORDER BY 결과 정렬 코난(김대우) 2023.08.18 76
2228 SQL강좌: 2-6. DISTINCT 문을 이용한 중복 제거 코난(김대우) 2023.08.18 73
2227 SQL강좌: 2-5. WHERE절의 조건에 의한 행의 검색 코난(김대우) 2023.08.18 77
2226 SQL강좌: 2-4. 데이터형(Data type)과 함수(Function) 코난(김대우) 2023.08.18 107
2225 SQL강좌: 2-3. SELECT - 컬럼선택 file 코난(김대우) 2023.08.18 118
2224 SQL강좌: 2-2. 데이터 검색 - SELECT 구문 file 코난(김대우) 2023.08.18 130
2223 SQL강좌: 2-1. T-SQL SQL Server 언어에 대한 간단한 소개 file 코난(김대우) 2023.08.18 130
2222 SQL강좌: 1-11. 예제 데이터베이스 설치 코난(김대우) 2023.08.18 161
2221 SQL강좌: 1-10. SQL Server 2022 관리 도구 소개 [2] file 코난(김대우) 2023.08.18 100
2220 SQL강좌: 1-9. 업그레이드와 설치 제거 file 코난(김대우) 2023.08.18 54
2219 SQL강좌: 1-8. SQL Server 2022 설치 - 컨테이너 file 코난(김대우) 2023.08.18 65
2218 SQL강좌: 1-7. SQL Server 2022 설치 - 리눅스 file 코난(김대우) 2023.08.18 77
2217 SQL강좌: 1-6. SQL Server 2022 설치 - 윈도 [2] file 코난(김대우) 2023.08.18 210
» SQL강좌: 1-5. SQL클라우드와 On-Premise file 코난(김대우) 2023.08.18 95
2215 SQL강좌: 1-4. SQL Server 설치 전 점검사항 file 코난(김대우) 2023.08.18 88





XE Login