DataOps 연동
외부 데이터 서버의 데이터셋을 플랫폼이 내려받아(Pull) 사본으로 맞추는 동기화의 개념
학습 데이터를 따로 보관·관리하는 시스템(이 문서에서는 DataOps 서버라고 부릅니다)이 있다면, 플랫폼이 그 서버에 접속해 데이터셋을 내려받아 플랫폼 데이터셋으로 만들 수 있습니다. 사람이 파일을 옮겨 올릴 필요가 없습니다.
| 구분 | 역할 | 담당 |
|---|---|---|
| DataOps 서버 | HTTP REST 서버: 목록 · 매니페스트 · 파일 API 3개 | 데이터를 가진 쪽 |
| Geo-MLOps | HTTP 클라이언트: 사용자가 버튼을 누르면 접속해 비교 · 다운로드 | 플랫폼 |
새 서버를 크게 만들 필요는 없습니다. 이미 가진 데이터에 조회·다운로드 엔드포인트 3개만 열어 주면 됩니다. 방향은 Pull 한 가지이고, 플랫폼에서 DataOps 로 올려 보내는 기능은 없습니다.
동기화가 하는 일
DataOps 서버 Geo-MLOps 데이터셋
─────────────────────────── ──────────────────────────────────────
manifest 파일 출처
f-0001 a.png sha256=9f8a… ──같음──▶ a.png (sha256 9f8a…) 동기화 → 유지
f-0002 b.png sha256=77c1… ──다름──▶ b.png (sha256 12de…) 동기화 → 다시 받음(같은 행 교체)
f-0003 c.png sha256=0b4e… ──없음──▶ → 새로 받음
(없음) d.png 동기화 → 지움
f-0005 e.png ──이름 겹침 e.png 업로드 → 건너뜀 + 경고
x.png 업로드 → 손대지 않음
- 원격 매니페스트(파일 목록 + SHA-256)를 읽습니다.
- 이 데이터셋에 이미 있는 동기화로 받은 파일과
file_id·sha256으로 비교합니다. - 새 파일과 바뀐 파일만 내려받고, 원격에서 사라진 파일은 지웁니다.
- 받은 파일은 직접 업로드한 파일과 똑같은 과정을 거칩니다(같은 검증기, 같은 집계, 같은
manifest.json재기록). 그래서 학습은 파일이 어떻게 들어왔는지 모르고, 알 필요도 없습니다.
이 절의 순서
- DataOps 쪽이 구현할 API 3개: 데이터 제공 측 개발자
- 참조 구현: 표준 라이브러리만 쓰는 최소 서버
- 플랫폼에 연결하기: 소스 등록 → 연결 확인 → 데이터셋 만들기 → 결과 보기
- 동기화 규칙과 한계