T
TechInsights
목록으로
BigData•2025. 09. 10.

아자르 Data Lifecycle Policy 개발하기

하이퍼커넥트
하이퍼커넥트 Engineering Team
아자르 Data Lifecycle Policy 개발하기

핵심요약

원문 보기

Azar 서비스는 유저 데이터 라이프사이클 관리를 위해 이벤트 기반 아키텍처를 활용하여, 사용자의 개인 정보 보호를 위한 데이터 보관 및 삭제 시스템을 효율적으로 구현했습니다. 이 시스템은 다양한 보관 정책과 대용량 데이터 처리를 유연하게 지원합니다.

Azar 서비스 개인정보 삭제 시스템 개요

이벤트 기반 아키텍처 및 핵심 구성요소

Azar는 유저 데이터 개인정보 보호를 위해 이벤트 기반 아키텍처를 채택하여 데이터 라이프사이클을 관리합니다.

  • 시스템은 크게 **이벤트 예약부(Reservation Part)**와 **이벤트 처리부(Processing Part)**로 구성됩니다.
  • 예약부는 유저 탈퇴 또는 제재 시 개인정보 삭제 스케줄을 MySQL 테이블에 저장하고, 보관 기간 만료 시 Kafka 이벤트를 발행합니다.
  • 처리부는 발행된 Kafka 이벤트를 컨슘하여 해당 유저의 개인정보를 삭제하는 역할을 수행합니다.
  • Kafka를 활용하여 대량의 메시지 처리, 마이크로 서비스 간의 비동기 통신 및 최종 일관성을 확보합니다.

유연한 데이터 보관 및 삭제 정책

데이터의 성격에 따른 다양한 보관 기간 요구사항을 충족하기 위해 Privacy Type 개념을 도입했습니다.

  • 각 데이터(레코드 또는 필드)에 Privacy Type을 부여하고, 타입별로 고유한 보관 기간을 정의합니다.
  • 예약부는 모든 Privacy Type에 대해 보관 기간에 따라 삭제 예약을 진행하고, 배치 프로세스가 만료된 예약을 기반으로 PERSONAL_INFO_DELETED 이벤트를 발행합니다.
  • 처리부의 각 마이크로 서비스는 자신의 도메인 데이터를 Privacy Type에 맞춰 하드 딜리트 또는 소프트 딜리트 방식으로 유연하게 삭제를 구현합니다.
  • 이 구조는 데이터 추가/변경 시에도 최소한의 수정으로 데이터 삭제 로직을 관리할 수 있도록 합니다.

데이터 무손실 및 대규모 백필 처리

데이터 삭제의 무손실성 보장 및 정책 변경에 따른 대규모 백필 처리를 위한 메커니즘을 갖추고 있습니다.

  • 이벤트 발행 보장을 위해 트랜잭셔널 아웃박스 패턴과 Kafka Producer의 acks=all 설정을 활용합니다.
  • 이벤트 처리 무손실은 컨슈머의 Manual Commit, 재시도 로직, DLQ(Dead Letter Queue) 전략으로 보장합니다.
  • 데이터 백필은 Databricks를 활용하여 특정 유저군을 대규모로 쿼리하고, 추출된 유저 식별자를 이용해 Kafka 이벤트로 다시 발행하여 삭제 예약을 재수행합니다.
  • 백필 과정에서 서비스 부하를 최소화하기 위해 Rate Limiter를 발행부와 컨슈머 양단에 적용합니다.

시스템 모니터링 및 삭제 검증

구현된 DLP 시스템의 신뢰성을 확보하기 위해 지속적인 모니터링 및 검증 절차를 수행합니다.

  • 메트릭 모니터링: 예약부에서 발행된 스케줄 및 Kafka 이벤트를 Databricks에 동기화하여 실시간 처리량을 대시보드로 시각화합니다.
  • 삭제 검증: dateDeleted 필드와 같은 메타데이터를 기반으로 Replica Production Database에서 Full Scan 쿼리를 수행하여, 삭제되었어야 할 데이터가 실제로 존재하지 않는지 정기적으로 검증합니다.
#BigData#Infra#BackEnd#Architecture
하이퍼커넥트
하이퍼커넥트

하이퍼커넥트 Engineering Team

기술 인사이트를 전달하는 공식 채널

You might also like

View all
메리츠증권의 AWS 클라우드 여정: 클라우드 기반 차세대 증권 플랫폼 설계

메리츠증권의 AWS 클라우드 여정: 클라우드 기반 차세대 증권 플랫폼 설계

엠넷플러스 실시간 글로벌 투표 시스템 아키텍처 개선 사례

엠넷플러스 실시간 글로벌 투표 시스템 아키텍처 개선 사례