데이터 엔지니어링/데이터 플랫폼

[데이터플랫폼] 최신 데이터 인프라 이해하기 #2 - 데이터 소스

pythaac 2022. 4. 24. 21:51

https://www.youtube.com/watch?v=0yK0z9B2Zk0 

OLTP databases via CDC

  • OLTP(Online Transaction Processing) Database
    • 은행계좌 이체를 예로 많이 말함
    • 보낸 계좌에서 돈이 빠져나감 + 받는 계좌에 돈이 들어옴 -> 두 가지가 모두 발생해야함
    • 이 두 가지 작업을 묶어 처리해주는 Database를 의미

  • OLTP vs OLAP(Online Analytical Processing)
    • OLTP
      • 보통 수많은 트랜잭션이 발생
      • 빠른 처리가 필요하기 때문에 정규화된 구조(수많은 테이블)
    • OLAP
      • 많은 데이터
      • 정규화되지 않은 데이터
      • 복잡한 분석 쿼리를 날림

  • CDC(Change Data Capture)
    • OLTP에서 변경된 부분만 외부 DB로 저장하는 기술

Applications/ERP

  • Production Systems
    • Oracle - Database
    • Salesforce - CRM
    • Netsuite - ERP
  • ERP(Enterprise Performance Management)
    • 전사적 자원 관리
    • 재무/프로젝트 관리/조달/위험 관리/Supply Chain 등 회사의 모든 자원들을 관리
  • CRM(Customer Relationship Management)
    • 판매/마케팅 등 고객과 관련된 모든 데이터

 

Event Collectors

  • 사용자가 만들어내는 모든 데이터를 모으는 도구
  • 도구의 예
    • 구글 애널리틱스
      - 사용자가 웹사이트에서 어떤 페이지를 보고, 어떤 버튼을 눌렀고, 페이지를 어떻게 움직였는지 모두 기록
    • 페이스북 픽셀
    • Amplitude
    • braze

  •  Segment
    • Customer Data Platform
    • 구글 애널리틱스 API, 페이스북 픽셀 API, ... 분석 도구마다 API가 다름
    • 하나의 API로 해당 도구에 데이터를 보내줌
    • 비쌈
  • Snowplow
    • 오픈소스
    • 클라우드에 snowplow 서버를 올리면 그대로 사용 가능
  • Rudderstack
    • Snowplow와 같음
    • replay 기능이 제공됨 (예전 데이터?)

 

Logs

  • 운영하는 모든 서버의 로그
    • Load balancer 데이터
    • CDN(Content Delivery Network) 액세스 데이터
    • 웹서버 액세스 데이터

 

3rd Party APIs

  • 외부 API
  • 온라인 결제 서비스 (Payment Gateway)
    • Stripe

 

File and Object Storage

  • 다양한 객체 스토리지
    • 문서
    • API가 만든 파일
    • 이메일로 전송받은 파일