DataOps 서버가 준비됐으면 플랫폼 쪽에서 소스를 한 번 등록하고, 그 소스에서 데이터셋을 만듭니다. 소스 등록·연결 확인·데이터셋 만들기·동기화는 데이터셋 쓰기DEVELOPER · OPERATOR · ADMIN 권한(DEVELOPER 이상)이 필요합니다. 목록 보기는 누구나 됩니다.

이 페이지의 화면은 플랫폼 내장 mock DataOps 서버(참조 구현 참고)에 실제로 연결해 찍었습니다.

1. 소스 등록

  1. 왼쪽 메뉴 데이터셋 에서 위쪽 외부 소스 를 누르고, 창 아래의 소스 등록 을 누릅니다.
  2. 이름과 ① 기준 URL(API 3개 경로 앞에 붙는 주소, 예: https://dataops.example.com/api), ② Bearer 토큰을 적고 ③ 등록 을 누릅니다.
    외부 소스 등록: ① 기준 URL(API 3개 경로 앞에 붙는 주소) ② Bearer 토큰 ③ 등록
  • 토큰은 저장한 뒤 다시 볼 수 없습니다(끝 네 글자만 보입니다). 수정할 때 토큰 칸을 비워 두면 그대로 두고, 값을 넣으면 바꿉니다.
  • 활성 을 끄면 연결은 그대로 둔 채 새 동기화만 막습니다.

2. 연결 확인

등록한 소스 줄의 ② 연결 확인 아이콘을 누르면 원격 목록을 1건만 조회해 ③ 결과를 알려 줍니다. ① 기준 URL 이 맞는지도 여기서 봅니다.

등록된 소스: ① 기준 URL, 토큰은 끝 네 글자만 보인다 ② 연결 확인 ③ 원격 목록을 1건 조회해 결과를 알려 준다

실패하면 원인을 셋 중 하나로 구분해 보여 줍니다: 연결 불가(주소·방화벽), HTTP 상태(401 이면 토큰), 응답 형식(JSON 객체가 아님, 목록이 배열이 아님 등).

3. 외부 소스로 새 데이터셋 만들기

  1. 데이터셋 화면의 새 데이터셋 을 누르고 ① 외부 소스에서 동기화 를 고릅니다.
  2. 소스를 고르면 원격 데이터셋 목록이 나옵니다. ② 받아올 데이터셋을 고릅니다. 이미 다른 데이터셋에 연결된 원격 데이터셋에는 "이미 연결됨" 이 붙습니다. 원격 데이터셋 하나는 플랫폼 데이터셋 하나에만 연결됩니다.
  3. 이름과 모달리티는 비워 두면 원격 값을 씁니다. 표 형식 CSV/Parquet 인데 원격이 모달리티를 알려 주지 않으면 표 형식을 직접 고르세요(안 고르면 시계열로 처리됩니다). ③ 만들고 동기화 를 누르면 데이터셋이 생기고 첫 동기화가 바로 시작됩니다.
    새 데이터셋: ① 공급 방식 '외부 소스에서 동기화' ② 받아올 원격 데이터셋 ③ 만들고 동기화

4. 이미 있는 데이터셋에 연결하기

직접 올려 쓰던 데이터셋에도 나중에 소스를 연결할 수 있습니다. 데이터셋 상세의 개요 탭 → 외부 소스 카드 → 외부 소스 연결. 올려 둔 파일은 그대로 남고, 원격 파일과 이름이 겹치면 원격 파일 쪽을 건너뜁니다.

  1. 연결한 뒤 카드의 동기화 를 누르면, 먼저 무엇을 할지 미리 보여 줍니다. 받을 파일 · 바꿀 파일 · 그대로 둘 파일, 그리고 직접 올린 파일과 이름이 겹쳐 건너뛸 파일 수입니다. 원격에서 빠진 파일이 있으면 "이 데이터셋에서도 지워집니다" 가 빨간 글씨로 나옵니다.
    동기화 확인: 받을 파일·그대로 둘 파일과, 직접 올린 파일과 이름이 겹쳐 건너뛸 파일을 먼저 보여 준다
  2. 동기화 를 누르면 진행률이 표시됩니다. 매니페스트를 읽기 전에는 받을 양을 모르므로 막대 대신 "원격 매니페스트를 읽는 중입니다" 가 먼저 나옵니다. 취소파일 경계에서 멈춥니다.

5. 결과와 경고 보기

동기화가 끝나면 외부 소스 카드에 결과가 남습니다. ① 연결된 소스 · 원격 데이터셋 · 마지막 동기화 시각, ② 이번 실행의 받음 · 지움 · 유지, ③ 경고입니다.

외부 소스 카드: ① 연결된 소스·원격 데이터셋·마지막 동기화 ② 이번 동기화의 받음·지움·유지 ③ 성공한 동기화에도 경고가 남을 수 있다

위 화면은 업로드해 둔 20260721_line3_0002.png 와 이름이 같은 원격 파일이 있어서 그 파일을 건너뛴 결과입니다. 상태는 완료지만 경고가 1건 남았습니다. 이 원격 파일을 동기화로 관리하게 하려면 업로드한 파일을 지우고 다시 동기화합니다. "유지" 에는 그대로 둔 파일과 이름이 겹쳐 건너뛴 파일이 함께 들어갑니다.

같은 결과를 API 로 보면 이렇습니다.

curl -b cookies.txt -H "X-Tenant: DEMO" \
  "http://localhost:10000/api/v1/datasets/<데이터셋 id>/syncs"
{"items": [{"status": "SUCCEEDED", "files_done": 0, "files_skipped": 3, "files_deleted": 0,
  "warnings": ["'20260721_line3_0002.png' is already held by an uploaded file; delete it to let the sync manage this file"], "…": "…"}]}

연결을 바꾸거나 끊으면

동작받아 둔 파일다음에
연결 해제남는다같은 원격에 다시 연결하면 전부 다시 받지 않고 이어받는다
다른 원격으로 연결 변경남지만 다음 동기화에서 지워진다(새 매니페스트에 없으므로)없음
소스 삭제남는다연결만 끊긴다
데이터셋 삭제모두 지워진다없음

직접 올린 파일은 어느 경우에도 지워지지 않습니다.

2026-09-21 기준 플랫폼에 맞춰 작성했습니다.

© Geo-MLOps