brunch

매거진 GCP

You can make anything
by writing

C.S.Lewis

by 하이프마크 Dec 01. 2021

GCP : Google Cloud Storage

GCP




Google Cloud Storage(GCS)란 언제 어디서나 데이터를 저장하고 가져올 수 있는 객체 저장소( Object Repository)로 데이터를 저장하는 것뿐 아니라 컨텐츠를 제공하고 대량의 데이터 객체를 배포할 수도 있는 서비스입니다.


저장할 데이터의 특징에 따라 Repository 등급이 나눠지게 되며 100마일 이상 떨어진 두 곳에 중복 저장이 되기 때문에 뜻밖의 자연재해와 같은 상황에서도 데이터를 보호할 수 있습니다.


따라서 GCS는 객체라는 모든 형식의 파일로 구성된 변경할 수 없는 데이터 조각이 버킷이라는 컨테이너에 저장되며 시작됩니다. 모든 버킷은 프로젝트와 연결되며, 프로젝트를 조직 아래에 그룹화할 수 있습니다.





그럼 GCS의 객체, 버킷, 프로젝트 등의 용어에 대해 먼저 짚고 넘어가도록 하겠습니다.  


프로젝트: GCS의 모든 데이터가 프로젝트 안에 속하게 됩니다. 조직-프로젝트-버킷 순으로 내려간다고 생각하시면 됩니다. 각 프로젝트에는 자체 Cloud Storage API 세트와 기타 리소스가 있습니다.

버킷: 버킷은 데이터가 저장되는 곳으로 프로젝트 안에 속하게 됩니다. 각 프로젝트에는 객체를 저장할 컨테이너인 버킷이 여러 개 포함될 수 있지만 여러개를 만드는 것보다는 버킷을 적게 생성하고 객체를 많이 만드는 것이 더 좋은 설계입니다. 버킷은 라벨을 달 수 있으며 키값 형태로 GCP의 다른 리소스와 그룹화가 가능합니다. 또한 버킷 생성 시 버킷의 고유한 이름(전역에서 고유해야 하기 때문에 GCP 내에서도 고유한 이름을 가져야 합니다), 지리적 위치, 등급을 지정할 수 있습니다.

객체: 객체는 버킷에 저장되는 파일을 말합니다. 예를 들어 puppy.png라는 이미지 파일과 같은 개별 파일들을 뜻합니다. 또한 이 객체들은 변경이 불가해 수정할 수 없어 삭제 후 다시 업로드해야 합니다. 하지만 덮어쓰기는 가능합니다.



앞서 말씀드렸듯이 GCS는 버킷을 만들 때 요구에 따른 Repository 등급을 설정할 수 있는데요. 등급은 크게 4가지로 나뉩니다.





Standard Storage(Multi-Regional Storage) 

Nearline Storage

Coldline Storage

Archive Storage



Standard Storage(Multi-Regional Storage)는 표준 스토리지로 자주 액세스되거나 짧은 기간 동안만 저장되는 데이터에 가장 적합합니다. 특히 멀티 리저널 스토리지를 사용하면 지리적 중복을 제공하기 때문에 동영상 스트리밍, 모바일 게임 애플리케이션, 웹사이트 콘텐츠 등 전세계에서 자주 엑세스 되는 데이터를 저장하는데 적합합니다. 


Nearline Storage는 엑세스 빈도가 낮은 데이터를 저장하는데 적합한 스토리지 입니다. 비용이 상대적으로 저렴하며 30일 간의 최소 저장기간을 가지고 있습니다. 한달에 한번 정도 엑세스해 수정하거나 분석하는 데이터의 경우에는 니어라인 스토리지를 이용하시면 되겠습니다. 데이터 백업 뿐 아니라 롱테일 멀티미디어 콘텐츠 등에 적합합니다.


Coldline Storage는 저장 비용이 저렴한 스토리지로 자주 엑세스하지 않는 데이터들을 저장하는데 적합합니다.  90일의 최소 저장기간이 있기 때문에 분기 별로 확인하는 데이터가 있다면 이를 이용하는게 좋습니다.  


Archive Storage는 보통 데이터 백업을 하는데 많이 이용되는 스토리지입니다. 365일의 최소 저장 기간을 지원하고 있습니다. 특히나 재해 복구 상황이 발생할 경우 Archive Storage를 통해 빠르게 불러오는 것이 가능합니다.


그 외 Regional Storage의 경우 특정 리전에만 데이터를 저장시켜 저렴한 비용으로 이용이 가능하다는 장점이 있습니다. 이럴 경우 네트워크 요금을 줄이는데 도움이 되겠죠.


이를 표로 정리하면 다음과 같습니다.





이에 맞춰서 자신의 데이터에 맞는 스토리지 클래스를 정하면 되겠죠.


스토리지를 선택, 데이터를 저장한 후 GCS를 사용하는 몇 가지  방법은 다음과 같습니다.  


Google Cloud Console : 구글 클라우드 콘솔은 브라우저에서 데이터를 관리할 수 있는 시각적 인터페이스를 제공합니다.

gsutil : gsutil는 CLI 환경에서 GCS에 엑세스할 수 있는 명령 코드입니다. 이를 통해 버킷 생성 및 삭제, 버킷 및 객체 나열, 객체 업로드, 다운로드 삭제 등을 할 수 있습니다.

Client libraries : Client libraries를 사용하면 C++, C#, Go, Java, Node.js, PHP, Python, Ruby 등 하나를 택해 데이터를 관리할 수 있습니다.


또한 GCS는 경우 보안에도 크게 신경 써 데이터를 안전하게 보관할 수 있습니다. GCP 측에서는 데이터 암호화를 통해 데이터를 안전하게 보관하는데요. 기본적으로 서버 측 암호화를 사용하여 데이터를 암호화합니다. 고객 관리 암호화 키 및 고객 제공 암호화 키와 같은 보조 데이터 암호화 옵션을 사용할 수도 있습니다.


또한 데이터에 접근하는 모든 사용자에게 적절한 사용자 인증 정보가 있는지 확인을 거쳐 엑세스할 수 있도록 합니다.


GCS를 사용하면 데이터 양에 관계없이 언제 어디서나 데이터를 저장하고 가져올 수 있다는 큰 장점이 있죠. 데이터 백업을 따로 하며 드는 비용을 절감시킬 수도 있습니다. 여러모로 유용한 서비스입니다.


하이프마크에서는 기업의 웹앱로그데이터의 클라우드 적재와 ETL 파이프라인 구성 그 외 클라우드 내 데이터분석 환경 구축 및 분석 시각화 서비스를 함께 제공하고 있습니다.


AWS, GCP등 클라우드 이전 매니지드서비스 및 웹앱로그데이터 태깅 적재 관련 문의사항이 있으시면 하이프마크에 문의 주세요


감사합니다. 


참조 : https://cloud.google.com/storage/docs/introduction

매거진의 이전글 GCP : Cloud SQL
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari