Kinesis

Kenesis - 기본 개념 정리

개발 일기92 2024. 4. 12. 18:59

Kenesis란?

실시간 데이터 스트림을 수집, 처리, 분석해주는 서비스.

 

data streams

  • 샤드의 수를 조절하여 스트림 받을 정도 수정 가능.

Data Firehose

데이터 스트림 처리 및 전송

 

Data Analytics

  • 스트리밍 데이터 분석
  • 실시간 분석 생성 – 지표를 계산하고, Kinesis를 통해 Amazon S3 또는 Amazon Redshift로 전송할 수 있다.
  • 실시간 대시보드 제공 – 집계 및 처리된 스트리밍 데이터 결과를 전송하여 실시간 대시보드를 구성할 수 있다.
  • 실시간 지표 생성 – 실시간 모니터링, 알림, 경보에 사용할 사용자 지정 지표와 트리거를 생성할 수 있다.

Video Streams

  • 재생 및 분석을 위해 미디어 스트림을 캡처, 저장 및 처리

 

Data Analytics

  • 스트리밍 데이터 분석
  • 실시간 분석 생성 – 지표를 계산하고, Kinesis를 통해 Amazon S3 또는 Amazon Redshift로 전송할 수 있다.
  • 실시간 대시보드 제공 – 집계 및 처리된 스트리밍 데이터 결과를 전송하여 실시간 대시보드를 구성할 수 있다.
  • 실시간 지표 생성 – 실시간 모니터링, 알림, 경보에 사용할 사용자 지정 지표와 트리거를 생성할 수 있다.

Video Streams

  • 재생 및 분석을 위해 미디어 스트림을 캡처, 저장 및 처리

Data Streams

용어 정리

  • Data Record
    • 데이터 레코드는 데이터 스트림에서 사용되는 메세지를 말한다.
    • sequence number, partition key, data blob 등으로 이루어져 있으며 하나에 1MB 까지 사용할 수 있다.
    • 한 번 스트림에 들어가면 변경이 불가능하다.
  • Retention Period
    • 데이터 레코드의 보존 기간은 기본적으로 24시간이다.
    • 최소 24시간이며 최대 365일까지 증가시킬 수 있으나 요금이 추가된다.
  • Producer
    • 스트림에 데이터를 보내준다.
  • Consumer
    • 스트림에 있는 데이터를 가져와서 사용한다.
  • Shard
    • 샤드는 데이터 스트림의 단위를 말한다. 하나의 스트림은 하나 또는 그 이상의 샤드로 구성될 수 있다.
    • 하나의 샤드는 읽을 때 최대 5개의 트랜잭션을 지원하며 최대 초당 2MB를 읽을 수 있고, 초당 1000개의 레코드를 쓰고 초당 1MB를 쓸 수 있다.
  • Partition Key
    • 파티션 키는 스트림 내에서 샤드별로 데이터를 그룹화하는데에 사용된다.
    • 데이터 레코드에 파티션 키를 지정할 수 있다.
    • 파티션 키로 데이터 레코드가 속할 샤드를 결정할 수 있으며 결정시에는 MD5 Hash 함수를 사용한다.
  • Sequence Number
    • 각각의 데이터 레코드에는 파티션 키에 고유한 Sequence Number가 있다.
  • Application Name
    • 애플리케이션의 식별자
    • DynamoDB, Amazon CloudWatch의 이름으로 사용된다.

 

 

출처: https://data-engineer-tech.tistory.com/28