kinesis

 
 
 

전체 플로우

엔드유저 → Data Stream → Firehose → S3
  1. 엔드유저가 Data Stream으로 데이터를 쏨.
  1. Data Stream에서 Firehose로의 과정 도중에 Data Schema에 대한 검사도 진행됨
    1. Data Schema 형태가 잘못됐다면, S3 내의 error를 기록하는 곳에 기록됨.
⚠️
디바이스앱에서 하는건 Data Stream에 넣는 행위만 하므로, 스키마 위반에 대한 에러를 받을 수 없다.
 

AWS Kinesis Data Stream

  • 분산 큐 & 스트리밍 스토리지 역할
  • 데이터 저장을 위해 휘발성 메모리가 아니라 디스크와 같은 비휘발성 저장소 사용
    • 현재는 24시간 까지만 저장해둠
💡
FE에서 쏘는 데이터는 Data Stream으로 데이터를 쏘는 것임
notion image
  • PutRecords, PutRecord를 통해 Data Stream으로 데이터를 밀어넣음
 

AWS Kinesis Firehose

  • Kinesis Data Stream으로부터 또는 Direct로 얻어지는 데이터를 특정 Destination 에 저장해주는 역할
    • Data Stream 가져와서 → S3에 저장
⚠️
PK(파티션 키)를 type으로 지정하고, type 에 따라 사용하는 Shared를 다르게 지정해서 사용한다. Shared에 있는 데이터는 24시간(설정값) 후에 사라짐.