쿠팡 SCM 워크플로우: 효율적이고 확장 가능한 low-code, no-code 플랫폼 개발
쿠팡이 데이터 구축과 서비스 개발을 자동화하는 low-code, no-code 워크플로우를 만들었다.
쿠팡 SCM 팀은 운영팀, 개발자, BA, 데이터 사이언티스트가 함께 데이터를 만들고 시스템에 다시 반영하는 환경에서, 반복적인 요청과 개발 병목을 줄이기 위해 SCM Workflow platform을 구축했다.
핵심은 두 가지다.
- No-code 데이터 빌더: 개발자뿐 아니라 비개발자도 Redshift, Hive, Presto, Aurora, MySQL, Elasticsearch, S3 같은 공용 데이터 소스에 접근해 쿼리, 추출, export, 시스템 연동을 할 수 있다.
- Low-code 서비스 빌더: 반복적인 데이터 처리, 전달, 연동 로직을 공용 컴포넌트와 커스텀 컴포넌트로 묶어, 핵심 알고리즘에만 집중해 서비스를 만들 수 있다.
데이터 빌더는 상품 재고와 주문 데이터를 여러 소스에서 가져와 계산 노드를 연결하고, 필요하면 쿼리를 분할해 병렬 처리할 수 있다. 결과는 워크플로우 ID, URL, 파일 경로 등으로 다른 팀이나 시스템에 전달할 수 있고, callback과 schedule 기능으로 정기 작업도 자동화한다.
서비스 빌더는 반복적으로 필요한 인프라 기능을 플랫폼에 내장했다. versioning, configuration, 에러 로그 뷰어, 알람, 대시보드를 제공해 웹에서 디버깅과 운영이 가능하게 했고, notification, REST callback, retry, 파일 업로드/다운로드/복사, 큐 메시지 송수신, AWS 연동 같은 공용 블록도 제공한다.
확장성과 안정성을 위해 아키텍처는 3개 레이어로 나뉘고, 각 레이어는 clustering과 scale out이 가능하게 설계됐다. 워크플로우 엔진은 모델과 인스턴스를 관리하고, 실제 작업은 worker가 비동기로 독립 실행해 특정 작업의 지연이나 자원 과점유가 전체 시스템에 영향을 덜 주도록 했다.
웹 인터페이스에서는 canvas editor로 블록을 드래그 앤 드랍해 모델을 만들고, 실행 순서와 의존성을 시각적으로 조합할 수 있다. 또한 실행 히스토리와 에러 로그를 확인하며, 팀 단위 그룹 관리와 권한 제어까지 지원해 코딩에 익숙하지 않은 사용자도 내부 애플리케이션을 쉽게 만들 수 있게 했다.
결국 이 플랫폼은 기존의 Jenkins, Airflow, Notebook 같은 도구가 가진 복잡한 연결과 운영 부담을 줄이면서, 데이터 생성부터 시각화와 서비스 런칭까지 한 흐름으로 묶는 것을 목표로 한다.
이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.
요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.