Docs(diagram) 관리자기능/피드백루프 diagram (#58)#64
Conversation
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으로 작성
There was a problem hiding this comment.
질문) 만약에 신규 모델이 배포 되고 나서 처음 요청 받아서 임베딩을 뽑아놓고 벡터 색인을 했는데, 문제가 발견되서 기존 모델로 롤백이 결정되면 어떻게 되나요?
There was a problem hiding this comment.
0415
기존에는 문제가 되는 데이터들의 재색인을 롤백 완료의 기준으로 잡았는데, 마지막으로 저장된 스냅샷을 불러오는걸 롤백 완료의 기준으로 수정했습니다. 또한 롤백 진행동안 신규 데이터 작업큐를 대기시키지 않고 모델과 인덱스만 복원되면 바로 서비스가 사용 가능하게 수정하였습니다.
서비스 타겟을: notebook lm과 같이 지속적으로 영상을 쌓아두고 지식데이터베이스로 활용하는 사람으로 잡았습니다
서비스 핵심 가치는 검색 가용성 유지를 1순위로 두어 만약의 상황에 롤백을 하게되더라도 최대한 검색 기능을 유지 하는 것을 목표로 롤백 로직을 설계했습니다.
0415 롤백 로직
-
신규 모델로 임베딩된 데이터가 포함된 영상은 롤백 복구가 끝날 때까지 검색 범위에서 일시 제외합니다.
-
롤백은 모델 배포 직전에 저장한 마지막 정상 서빙 조합 스냅샷을 기준으로 수행합니다.
-
이 스냅샷은 당시의 active/previous 모델 버전과 인덱스 식별자를 가리키는 복원 포인터이며, 실제 모델 아티팩트와 인덱스 스냅샷은 저장소에서 복원합니다.
-
롤백 복원은 대상 모델 readiness와 스냅샷 인덱스 복원이 완료된 뒤 ModelRelease를 이전 정상 조합으로 되돌리는 방식으로 진행합니다.
-
롤백 후 문제 모델 버전으로 임베딩된 데이터는 복원된 서빙 조합에 맞게 백그라운드에서 다시 임베딩·재색인합니다.
-
롤백 진행 중에도 신규 업로드 요청과 일반 ingest 처리는 계속할 수 있으며, Search Service는 남아 있는 검색 가능 영상으로 검색을 계속 제공하고 일부 영상이 복구 중임을 사용자에게 고지합니다.
-
재임베딩과 재색인이 끝난 영상부터 검색 범위에 순차적으로 다시 포함시키며, 문제 모델로 생성된 기존 인덱스 데이터는 복구 완료 후 비동기로 정리할 수 있도록 설계했습니다.
There was a problem hiding this comment.
기존에는 모든 영상이 색인이 완료되어야 질의가 가능했는데, 복구 시에는 일부 영상만 제거하거나, 일부 영상만으로 서비스를 제공하는 등 정책이 통일성이 부족한 것 같다는 생각이 듭니다.
There was a problem hiding this comment.
음... 이부분은 저도 고민이 되는 지점이였는데, 지금 내린 결정으론 모든 영상 색인 완료후 질의 가능이란 정책을 조금 수정하더라도, 복구시에 재색인 데이터를 제외한 검색서비스를 제공하고 그 영향 범위를 고지하는게, 아예 재색인이 완료될 때 까지 기다리는 것보다 검색 서비스 가용성 측면에서 좋다고 생각해서 위와 같이 설계 했습니다.
1. 새모델 배포시 전체 데이터를 대상으로 재임베딩 하는 방식에서 일부데이터 재임베딩후 순차 진행으로 변경 2. 스냅샷으로 정상 상태의 모델 버전과 인덱스를 기록, 롤백시 해당 스냅샷을 바탕으로 롤백 진행
|



Summary
Changes
아키텍처 다이어그램 추가
시퀀스 다이어그램 (PNG + Mermaid) 추가
관련 이슈
Closes #58