피드로 돌아가기
Dev.toDatabase
원문 읽기
Pandas ETL과 Idempotency 기반의 Legacy Excel-to-PostgreSQL 그래프 마이그레이션
Trial by Fire: From Garbage Excel to Relational Graph with Python and Pandas
AI 요약
Context
레거시 ERP에서 추출한 BOM 데이터의 심각한 Structural Entropy로 인한 Referential Integrity 실패 발생. 비표준화된 명칭, 공백, 데이터 타입 혼재로 인해 평면 구조의 데이터를 관계형 데이터베이스로 직접 적재하는 것이 불가능한 상황.
Technical Solution
- Pandas 기반의 전처리 레이어를 도입하여 .str.strip(), .str.upper(), .fillna()를 통한 데이터 표준화 강제
- BOM의 계층적 Tree 구조를 구현하기 위해 단일 DataFrame을 Final Product $\rightarrow$ Subassembly $\rightarrow$ Base Component 순의 2단계 논리적 그룹 벡터로 분리 설계
- 데이터 중복 및 그래프 엣지 오염 방지를 위해 PostgreSQL UNIQUE Key 기반의 upsert() 함수를 적용한 Ingestion Idempotency 확보
- Supabase SDK를 통한 정밀한 CHECK 제약 조건 준수로 관계형 그래프의 무결성 보장
- 데이터 정제 후 정형화된 노드 값을 PostgreSQL로 주입하여 AI Agentic Workflow(LangChain/CrewAI)를 위한 안정적인 데이터 기초 체계 구축
실천 포인트
- Legacy 데이터 마이그레이션 시 원천 데이터의 Entropy를 제거할 전용 Staging Layer 설계 여부 검토 - 계층 구조 데이터 적재 시 Flat Table을 논리적 계층별 벡터로 분리하여 순차적으로 처리하는 파이프라인 구성 - 반복적인 데이터 로드 시에도 시스템 상태가 유지되도록 API level의 Idempotency(Upsert) 구현