GCP

cup-wan·2025년 4월 27일
3

Intro


벌써 SSAFY의 마지막 세번째 프로젝트를 진행 중 입니다. 마지막인만큼 엄청난 프로젝트를 하고 싶었는데 멋진 팀원들 덕분에 구글과의 기업 연계에 선정되었습니다. SSAFY에서 기본적으로 괜찮은 사양의 AWS EC2를 제공해주긴 하지만 구글 기업연계인만큼 GCP를 활용하려합니다. 또한 호환성이... 두려워 AI 모델을 사용하는 어플리케이션 서버는 GCP를 활용하기로 했습니다.
SSAFY는 완전 멋있기 때문에 마지막 자율 프로젝트에서는 지원을 많이 해줍니다. 그래서 GCP를 정말 열심히 써보기로 결심했는데 역시..! 클라우드 사업은 너무 다양한 종류의 서비스가 있어서 처음이 가장 어려운 것 같습니다.
이러한 어려움을 겪고 있을 미래의 저를 포함한 사람들을 위해 GCP가 제공하고 있는 다양한 서비스에 대해 알아보겠습니다. 주로 제가 사용하게 될 서비스 위주로 넓고 얕게 알아보겠습니다!

GCP vs AWS

캬 자극적인 제목 벌써 두렵습니다. 그래도 궁금하잖아요. 비슷한 서비스를 엄청...많이... 하고 있는데 어떤 차이가 있는지 가볍게 알아보겠습니다.

기본 비교

AWS

  • 클라우드 업계 1등
  • 서비스 종류, 기능, 안정성 모두 압도적 선두주자
  • 기업용 대규모 인프라 구축에 강점
  • 문서화 친절해서 사용하기 좋음

GCP

  • 후발주자는 어쩔 수 없다.
  • AL/ML, 데이터 분석, 쿠버네티스 같은 특정 영역은 업계 최고 수준
  • 관리형 서비스 (GKE, BigQuery, Vertex AI 등)가 매우 강력함

Gen AI

가장 큰 차이점은 역시 구글은 Gemini가 있다는 것이고 AWS는 없다는 것입니다. 저희는 AI가 주된 서비스를 개발할 것이기 때문에 당연히 GCP가 유리하다고 판단했습니다. 아부 아니고 진짜로 AI 개발에 GCP가 좀 더 낫습니다. 물론 Gemini를 쓸 때의 이야기지만.
AWSSageMaker라는 관리형 AI 플랫폼이 있습니다. 타 AWS 서비스와 마찬가지로 초기 설정이 조금 복잡하고 진입 장벽이 높습니다.
GCPVertex AI, AutoML, BigQueryML 등 다양한 AI 플랫폼을 서비스 중이고 모든 과정을 쉽게 접근할 수 있다는 장점이 있습니다.
저희는 Gemini라는 사전 학습된 모델 API를 사용하기 때문에 Vertex AI Studio를 통해 Gemini API를 직접 파인 튜닝없이 호출하는 기능, 빅쿼리의 AI Assistance 등 기능 호환성 덕분에 GCP가 훨씬 유리하다 판단했습니다.

GCP 서비스

이번 프로젝트에서 꽤 다양한 GCP 서비스를 사용해보고 싶어 잔뜩 준비해봤습니다. 기존의 AWS 서비스로 배포한 과정에 필요한 서비스에 더해서 좀 더 관리를 빡세게 가져가는 버전이라 생각해주시면 될 것 같습니다.

Cloud DNS

  • 역할 : 이름 그대로 DNS 관리를 해줍니다.

도메인 구매가 자체적으로 가능한 AWS Route 53과 달리 GCP의 Cloud DNS는 외부에서 구매한 DNS만 사용 가능합니다.

Cloud CDN

  • 역할 : 정적 파일 (React 빌드 결과 등)의 빠른 배포 담당

역시.. 이름 그대로 CDN 역할을 맡습니다. 굳이 필요없긴 하지만 저희 서비스는 이미지와 파일을 굉장히 많이 필요하기 때문에 CDN이 UX에 필수라 생각했습니다.

GCP Storage

  • 역할 : 저장소, Bucket

저희 서비스에서 제작되는 이미지, 정적 빌드 파일 등을 저장하는 곳입니다. AWS S3와 거의 똑같습니다.

BigQuery 🌟

- 역할 : 대용량 데이터 분석

요즘 아주 핫하고 엄청 밀어주는 서비스 중 하나입니다. 서버리스 데이터 웨어하우스 서비스로 사용자 활동 기록, 대규모 로그 데이터 등을 분석할 때 사용합니다.
기존 DB로 감당하기 힘든 대량 데이터 (저희 더미 셋이 엄청 많습니다...)를 초고속 쿼리가 가능합니다.
또 쿼리 Validation이 내부적으로 이루어지고 캐싱까지 해주는 등 기능이 대단합니다. 쿼리문으로 AI 학습까지 된다는데 너무 신기합니다. 근데 저희가 모델 학습을 하는 서비스는 아니라 사용해보고 싶은데 조금 아쉽습니다.
좋은 기능이 많기에 가격이 살짝 나가는 편이긴합니다. 그래도 접근 DB의 용량별 가격 측정으로 가성비가 나쁘다는 생각은 안듭니다.
저희 서비스의 가장 핵심 기능이라 별표 달았습니다.

GCP Cloud Run 🌟

- 역할 : FastAPI 백엔드 배포

굉장히 신박한 기능을 가진 서비스입니다. Cloud Run은 컨테이너 이미지를 가져와서 자동 배포 및 필요할 때만 인스턴스 실행이 가능합니다. 서버리스 컨테이너라는 말 그대로 서버 관리 부담 없이 어플리케이션 운영이 가능합니다.

  • 트래픽 없으면 0원
  • 오토 스케일링에 매우매우 유리
  • 배포가 너무..쉬움

GCP 정말 잘하는데 AWS한테 밀리기만 할 플랫폼이 아닌데 라는 생각이 듭니다.

Firestore

  • 역할 : 실시간 데이터 저장 및 읽기

Document NoSQL을 위한 서비스입니다. 유저 세션, 상태 관리, 메타데이터 저장 등에 사용합니다.
실시간 업데이트 기능이 강력한 편이라 채팅..기능에 사용해보려 합니다.

Cloud SQL

  • 역할 : RDB 관리

완전 관리형 관계형 DB입니다. DB 설치/운영이 필요 없고 백업, 스케일링, 모니터링 모두 다 해주기 때문에 할 일이 많이 줄어듭니다.
일반적인 트랜잭션 기반 데이터 관리에 최적화 되어 있다 생각됩니다.
근데 조금 비싼 것 같습니다.
AWS RDB와 비슷한 서비스인데 RDB도 비싼데 왜 관계형 DB 서비스는 비싼지 궁금합니다.

Vertex AI (Gemini)

  • 역할 : AI 어플리케이션 학습 및 배포를 위한 GCP 중앙 집중식 플랫폼

사실 이거 안씁니다. 근데 궁금해서 작성합니다. ML/DL 엔지니어링의 워크플로우를 간소화하고 데이터셋 생애 주기 단순화가 주된 서비스입니다. AutoML, Pipeline, Pretrained API, Integration, Monitoring/Management 등을 모두 하나의 서비스에서 관리할 수 있기 때문에 많은 AI 개발자가 사용한다고 합니다.

추가) Pinecone (Vector DB)

  • 역할 : Vector DB

저는 AI 개발자가 아니기 때문에 정확히 벡터 DB가 무엇인지 몰랐습니다. 근데 이전에 작성한 추천 알고리즘 글과 관련이 있는 것이 벡터 임베딩해서 코사인 유사도를 구하지 않았습니까 저희가? 물론 내부에서 돌려서 라이브러리만 구동한 저는 정확한 원리는 몰랐지만, 이 과정을 도와주고 저장까지 되는 도구라고 합니다.
Pinecone을 활용해서 DB의 스키마 및 컬럼 메타데이터 등을 넣어서 ...유사도를 분석할 것 같습니다.

Outro

오늘은 뭔가 개요를 작성한 것 같은데 실제로 서비스를 이용해보며 어떤 것이 좋고 어떤 것이 불편했는지 정리해보겠습니다.

어째 작성하고 보니 GCP가 지금보다는 더 많은 파이를 가져야 한다는 생각을 하게됩니다. 아마 아이콘이 너무 못생겨서 그런 것이 아닐까요?

이번 프로젝트 매우 기대가 되는데 기대만큼 열심히 해보겠습니다.

profile
아무것도 안해서 유죄 판결 받음

0개의 댓글