[GCP] Pub/Sub

HOU·2023년 3월 13일
1

gcp로pipline만들기

목록 보기
6/11

Pub/Sub이란?

구글에서는 Pub/Sub에 대해 아래와 같이 정의한다.
BigQuery, 데이터레이크, 운영 데이터베이스로 스트리밍하기 위한 이벤트를 수집한다.

Pub/Sub의 특징

  • 스트림분석 및 커넥터
    • 기본 Dataflow 통합을 통해 java, python, SQL의 이벤트 스트림을 안정적이고 표현력있게 단 한 번에 처리 통합할 수 있다.
  • 순서에 따라 규모에 맞게 전송
    • 선택사항인 키당 주문은 파티션을 필요로 하지 않고 수평적 확장을 그대로 유지하면서 스테이트풀 애플리케이션 로직을 간소화 합니다.
  • Pub/Sub 라이트의 비용 최적화된 수집
    • Pub/Sub 라이트는 Pub/Sub을 보완하면서 가장 경제적인 비용으로 대용량 이벤트를 수집하는 것을 목표로 하고 Pub/Sub 라이트는 리전 또는 영역별 스토리지를 제공하여 용량 관리가 가능하다.

Pub/Sub의 기능

모든 득징설명
최소 1회 전송동기식 영역 간 메시지 복제 및 메시지당 수신 추적으로 규모에 상관없이 최소 1회 전송을 보장한다.
열기7개 언어로 된 개방형 API 및 클라이언트 라이브러리가 교차 클라우드 및 하이브리드 배포를 지원합니다.
단 한 번 처리Dataflow는 Pub/Sub 스트림을 단 하번에 안정적이고 표현력있게 처리합니다.
프로비저닝 없는 완전 자동Pub/Sub에는 분할이나 파티션이 없습니다. 할달량을 설정하고 게시하여 사용하면 됨
규정 준수 및 보안Pub/Sub은 HIPAA를 준수하는 서비스로서 정밀한 액세스 제어와 에드 투 엔드 암호화를 제공한다.
Google Cloud 기반 통합Cloud Storage 및 gmail 업데이트 이벤트, cloud functions 등 서버리스 이벤트 기반 컴퓨팅을 위한 다양한 서비스 통합을 활용
타사 및 OSS통합Pub/Sub은 데이터 통합용 Stream 및 informatica와 함께 로그용 Splunk 및 Datadog와의 타사 통합을 제공합니다. 또한 OSS통합은 Confluent Clound와 Knative Eventing을 통해 이용할 수 있습니다.
탐색 및 재생백로그를 특정 시점 또는 스냅샷으로 되감아 메시지를 다시 처리할 수 있다. 빨리 감기로 오래된 데이터를 삭제하는 것도 가능
데드 레터 주제데드 레터 Topic은 Sub 애플리케이션에서 처리 할 수 없는 메시지를 오프라인 검사 및 디버깅용으로 두어 다른 메시지가 지연되지 않도록 처리한다.
필터링Pub/Sub은 구독자에게 전송되는 볼륨을 줄이기 위해 속성을 기준으로 메시지를 필터링 할 수 있습니다.

Pub/Sub의 장점

  • 고가용성을 통한 시스템 간소화

    • 동기식 영역 간 메시지 복제 및 메시지당 수신 추적으로 규모에 상관없이 안정적인 전송을 보장합니다.
  • 계획이 필요 없는 완전 자동

    • 파티션이 없는 자동 확장 및 자동 프로비저닝은 계획이 필요 없으며 첫 날 부터 워크로드의 프로덕션이 가능하다.
  • 실시간 데이터 시스템을 위한 손쉬운 개방형 기반

    • BigQuery, 데이터레이크, 운영 데이터베이스에 피드를 제공하는 실시간 및 일괄 파이프라인의 진입점으로 볼륨에 관계없이 신속하고 안정적으로 소규모 레코드를 연결합니다. Dataflow의 ETL/ ELT 파이프라인에서 사용할 수 있다.

Pub/Sub 가격 측정

Pub/Sub 사용 사례

  1. 스트림 분석
    데이터를 체계적으로 정리하여 유용하게 사용할 수 있을 뿐 아니라 데이터가 생성되는 즉시 활용할 수 있다. Dataflow, BigQuery, Pub/Sub을 기반으로 구축된 Google의 스트리밍 솔루션은 실시간 비즈니스 정보를 얻기 위해 볼륨 변동이 심한 실시간 데이터를 수집, 처리, 분석하는데 필요한 리소스를 프로비저닝 합니다.
  2. 비동기 마이크로서비스 통합
    Pub/Sub은 기존 서비스를 통합하기 위한 메시징 미들웨어로 작동하거나 최신 마이크로 서비스의 단순 통신 매체로 작동, push subscribe은 GKE or Compute Engine의 커스텀 환경이나 Cloud Functions, App Engine, Cloud Run에서 이벤트를 서버리스 웹훅에 전송한다.
profile
하루 한 걸음 성장하는 개발자

0개의 댓글