2025-08-03

1일 1아티클

요즘IT

CRM 역도출
  • 데이터 크롤링 → raw data 정리 → 데이터 기반 분석 → 사용자(본인) 실제 행동 패턴을 포함해 분석
  • 차트 설계/보정 및 CRM 프로세스 역추론

마케팅 관점에서 서비스(알림, 혜택 등)의 패턴 변화를 확인할 수 있다는 점에서 신선함을 느낌, 데이터 분석의 중요성 체감.

오늘 배운 것

  1. Docker 초간단 개념
    • 이미지 : 실행 파일 (프로그램)
    • 컨테이너 : 동작하는 이미지 (프로세스)
  2. 샤딩
    • 데이터 분산 저장

    분할 방식에 따른 분류

    • 수직 샤딩 : 컬럼 단위로 쪼개기
    • 수평 샤딩 : 행 단위로 쪼개기

    샤딩 기법의 종류

    • 범위 기반 : 특정 값의 특정 범위 기반 분할 (ex. id=1~1000 / 1001~2000)
      • 데이터 쏠림 현상
    • 해시 기반 : 데이터를 특정 값의 해시 함수 적용값 기반 분할 (ex. id에 대해 해시 함수가 mod 2이면 id=홀수 / 짝수)
      • 샤드 키와 해시 함수가 균등하게 분산되지 않는 기준일 경우 데이터 쏠림 현상
      • 범위 데이터 조회 시 문제 발생 가능 (샤드 키를 phone number로 두었는데 이름을 기준으로 한 목록 조회 요청이 들어온다면 모든 샤드에 데이터 요청해야 함)
    • 디렉토리 기반 : 매핑 테이블을 활용한 분할
      • 디렉토리 관리 비용 발생
      • 규모에 따라 유연한 관리 가능
    • etc.

    확장성에 따른 분류

    • 물리적 샤딩 : 말 그대로 샤드를 물리적으로 늘려서 데이터 분할
      • 새로운 샤드 정보 파악 등 → Clinet 수정 필요
    • 논리적 샤딩 : 가상의 샤드가 있다고 가정, 개념적으로만 데이터 분할
      • 물리적 샤드가 가지고 있는 논리적 샤드들의 정보 → DB 내부 또는 DB와 Client 사이에 독립적으로 설계 가능 (Shard Router)

    Shard Router (논리적 샤드 개념에서 발생) → 물리적 샤드가 확정되어도 Client 변경 없이 이 라우터를 통해 DB의 유연한 확장 가능!

    복제

    • 샤드에 장애 발생 등의 문제 해결을 위한 복제본 관리로써의 샤드 두기
    • Primary/Replica, Leader/Follower, Master/Slave, Main/Standby, etc.
    • 동기적 복제 : 데이터 일관성 보장 but 쓰기 성능 저하
    • 비동기적 복제 : 쓰기 성능 유지 but 데이터 일관성 문제

    샤딩의 핵심은 분!산!

  3. 분산 시스템 DB 설계
    • Natural Order Unique Number : Auto Increment, UI 사용 X

    알고리즘 종류

    • Snowflake : 분산 시스템에서, 고유 64bit ID 생성 알고리즘
    • TSID, etc.

내일 할 일

  1. 정처기 필기 모의고사 CBT 풀어보고 오답노트 (진짜 해야돼..)
  2. 지원서 작성

참고자료

results matching ""

    No results matching ""