Skip to content

Docs(diagram) 관리자기능/피드백루프 diagram (#58)#64

Open
baekyutae wants to merge 8 commits intodocs/admin-opsfrom
docs/58-admin-ops-diagram
Open

Docs(diagram) 관리자기능/피드백루프 diagram (#58)#64
baekyutae wants to merge 8 commits intodocs/admin-opsfrom
docs/58-admin-ops-diagram

Conversation

@baekyutae
Copy link
Copy Markdown
Collaborator

@baekyutae baekyutae commented Apr 10, 2026

Summary

  • Admin Ops와 Feedback Loop 관련 아키텍처/시퀀스 다이어그램을 추가했습니다.

Changes

  • 아키텍처 다이어그램 추가

    • Admin Operations & Observability Architecture
    • Feedback Loop Architecture Diagram
  • 시퀀스 다이어그램 (PNG + Mermaid) 추가

    • Feedback Loop
    • Admin Video Ops
    • Admin ML Ops

관련 이슈

Closes #58

1. feedback loop
2. admin ops , observation

두 기능 추가를 위한 컴포넌트 구성 및 상호작용을 architecture diagram을 통해 설계
1. feed back pipeline cycle
2. video pipeline controll, check status
3. feed back pipeline controll, check status

3가지 시나리오에 대한 컴포넌트간 상호작용 및 데이터 흐름을 sequence diagram으로 작성
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

질문) 만약에 신규 모델이 배포 되고 나서 처음 요청 받아서 임베딩을 뽑아놓고 벡터 색인을 했는데, 문제가 발견되서 기존 모델로 롤백이 결정되면 어떻게 되나요?

Copy link
Copy Markdown
Collaborator Author

@baekyutae baekyutae Apr 13, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

0415

기존에는 문제가 되는 데이터들의 재색인을 롤백 완료의 기준으로 잡았는데, 마지막으로 저장된 스냅샷을 불러오는걸 롤백 완료의 기준으로 수정했습니다. 또한 롤백 진행동안 신규 데이터 작업큐를 대기시키지 않고 모델과 인덱스만 복원되면 바로 서비스가 사용 가능하게 수정하였습니다.

서비스 타겟을: notebook lm과 같이 지속적으로 영상을 쌓아두고 지식데이터베이스로 활용하는 사람으로 잡았습니다

서비스 핵심 가치는 검색 가용성 유지를 1순위로 두어 만약의 상황에 롤백을 하게되더라도 최대한 검색 기능을 유지 하는 것을 목표로 롤백 로직을 설계했습니다.

0415 롤백 로직

  1. 신규 모델로 임베딩된 데이터가 포함된 영상은 롤백 복구가 끝날 때까지 검색 범위에서 일시 제외합니다.

  2. 롤백은 모델 배포 직전에 저장한 마지막 정상 서빙 조합 스냅샷을 기준으로 수행합니다.

  3. 이 스냅샷은 당시의 active/previous 모델 버전과 인덱스 식별자를 가리키는 복원 포인터이며, 실제 모델 아티팩트와 인덱스 스냅샷은 저장소에서 복원합니다.

  4. 롤백 복원은 대상 모델 readiness와 스냅샷 인덱스 복원이 완료된 뒤 ModelRelease를 이전 정상 조합으로 되돌리는 방식으로 진행합니다.

  5. 롤백 후 문제 모델 버전으로 임베딩된 데이터는 복원된 서빙 조합에 맞게 백그라운드에서 다시 임베딩·재색인합니다.

  6. 롤백 진행 중에도 신규 업로드 요청과 일반 ingest 처리는 계속할 수 있으며, Search Service는 남아 있는 검색 가능 영상으로 검색을 계속 제공하고 일부 영상이 복구 중임을 사용자에게 고지합니다.

  7. 재임베딩과 재색인이 끝난 영상부터 검색 범위에 순차적으로 다시 포함시키며, 문제 모델로 생성된 기존 인덱스 데이터는 복구 완료 후 비동기로 정리할 수 있도록 설계했습니다.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

기존에는 모든 영상이 색인이 완료되어야 질의가 가능했는데, 복구 시에는 일부 영상만 제거하거나, 일부 영상만으로 서비스를 제공하는 등 정책이 통일성이 부족한 것 같다는 생각이 듭니다.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

음... 이부분은 저도 고민이 되는 지점이였는데, 지금 내린 결정으론 모든 영상 색인 완료후 질의 가능이란 정책을 조금 수정하더라도, 복구시에 재색인 데이터를 제외한 검색서비스를 제공하고 그 영향 범위를 고지하는게, 아예 재색인이 완료될 때 까지 기다리는 것보다 검색 서비스 가용성 측면에서 좋다고 생각해서 위와 같이 설계 했습니다.

Comment thread docs/git-naming-convention.md
Comment thread docs/Diagram/sequence_diagram/SD-06-Admin_ML(feedback_loop)_Ops.png
Comment thread docs/Diagram/sequence_diagram/SD-06-Admin_ML(feedback_loop)_Ops.png
1. 새모델 배포시 전체 데이터를 대상으로 재임베딩 하는 방식에서 일부데이터 재임베딩후 순차 진행으로 변경

2. 스냅샷으로 정상 상태의 모델 버전과 인덱스를 기록, 롤백시 해당 스냅샷을 바탕으로 롤백 진행
@baekyutae baekyutae requested a review from f-lab-jesse April 13, 2026 12:19
@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants