- 기간 : 2023.07 ~ 2023.08
- 인력: 2명
👩🏫소개
Databricks 데이터 분석 플랫폼 구축 기능 및 성능 검증
- AWS DMS 통한 원천 데이터 적재 후 Databricks Medallion Architecture에 근거하여 데이터 파이프라인을 구축
- MLflow를 통해 모델 학습 부터 Serving 까지 로그 추적 및 모니터링 가능한 Spark 기반 AI 모델 Pipeline 구축
작업 내용
원천 데이터 적재 (AWS DMS, AWS Lambda, Databricks)
- AWS (DMS, Lambda, Event Bridge)
- 데이터 이관
- DMS 활용한 MySQL 데이터는 AWS S3에 Pauquet 파일 형태로 저장
- DMS 활용한 MongoDB & CDC 데이터는 AWS S3에 Pauquet 파일 형태로 저장
- 자동화 데이터 이관 Pipeline
- MySQL 증분 데이터는 특정 컬럼 시간 조건으로 적재하기 위해 Event Bridge Trigger로 AWS Lambda Daily Batch 스케줄은 걸고 Mapping rules 생성 후 DMS Task 실행
- 데이터 이관 모니터링
- 실행 로그 확인하여 Daily Batch 데이터 이관 이상 발생하는 지 모니터링
- Databricks
- MySQL의 초기 이관 테이블들은 Databricks Unity Catalog에 Bronze Layer 생성
- MySQL의 증분 데이터를 Merge 통해 테이블 업데이트
MLOps (Databricks, MLflow)
-
구독자 예측 모델 - 학습 단계 별로 개발
- 00_data_check : Gold Layer에 있는 테이블 데이터 확인 및 시각화
- 01_data_proprecessing_and_feature_store : 모델 학습 시 필요한 데이터 전 처리 하고 Feature Store 에 등록 및 업데이트 ( 기존 테이블 있는지 체크하고 있으면 업데이트 없으면 신규 등록)
- 02_train_baseline_model : 학습 용 데이터 Feature Store 에서 불러오고 Baseline (Random Forest, XGB) 모델 훈련 및 성능 확인
- 03_tuning_parameter : Baseline (Random Forest, XGB) 모델의 파라미터 Grid 지정하여 최적의 파라미터 탐색 및 최적의 모델 성능 확인
- 04_model comparison_and_registry : 02,03 단계의 훈련된 모든 모델 성능을 비교하여 최적 성능인 모델 등록 (모델 성능 비교 기준 - AUC)
- 05_registry_model_status_check : 등록된 모델들의 Status 확인하고 더 좋은 성능 가진 모델 Status Staging 및 Production 변경
-
Workflow 구축 (스케줄)

-
모델 서빙 및 실시간 예측
-
AWS ECR에서 MLflow Docker 등록
-
Databricks에서 등록된 최신 Production 모델을 호출하여 AWS Sagemaker Endpoint 생성
-
AWS Lambda + API Gateway 활용하여 실시간 Model Prediction REST API 구성
-
Postman Post 통신 테스트
- Input 요청
- DB에 관련 Feature 값 조회 Dataframe 로 저장
- Dataframe를 모델 입력
- Output 반환
