Azure AI Video Indexer를 대규모로 사용할 때 고려해야 할 사항
Azure AI Video Indexer를 사용하여 비디오를 인덱싱하고 비디오 보관이 증가하는 경우 스케일링을 고려합니다.
이 문서에서는 다음과 같은 질문에 응답합니다.
- 고려해야 할 기술 제약 조건이 있나요?
- 작업을 수행하는 스마트하고 효율적인 방법이 있나요?
- 프로세스에서 과도한 비용 지출을 방지할 수 있나요?
문서에서는 Azure AI Video Indexer를 대규모로 사용하는 방법의 6가지 모범 사례를 제공합니다.
비디오를 업로드하는 경우 바이트 배열보다 URL을 사용하는 것이 좋습니다.
Azure AI Video Indexer는 URL에서 또는 파일을 바이트 배열로 직접 전송하여 비디오를 업로드할 수 있는 옵션을 제공하며, 후자에는 몇 가지 제약 조건이 있습니다.
첫째, 파일 크기 제한 사항이 있습니다. URL을 사용하는 동안 업로드 크기가 30GB로 제한되는 것에 비해 바이트 배열 파일의 크기는 2GB로 제한됩니다.
둘째, 성능에 영향을 줄 수 있는 몇 가지 문제와 이어서 스케일링하는 기능만 고려합니다.
- 다중 파트를 사용하여 파일을 보내는 것은 네트워크에 대한 높은 종속성을 의미합니다.
- 서비스 안정성,
- 연결,
- 업로드 속도,
- World Wide Web의 어딘가에서 손실된 패킷.
URL을 사용하여 비디오를 업로드하는 경우 미디어 파일 위치의 경로를 제공하면 되고 나머지는 Video Indexer가 처리합니다(비디오 업로드 API에서 videoUrl
필드 참조).
팁
비디오 업로드 API의 videoUrl
선택적 매개 변수를 사용합니다. 또한 AzCopy를 사용하여 빠르고 신뢰할 수 있는 방법으로 콘텐츠를 스토리지 계정으로 가져올 수 있으며, SAS URL을 사용하여 Azure AI Video Indexer에 제출할 수 있습니다. Azure AI Video Indexer는 읽기 전용 SAS URL을 사용하는 것이 좋습니다.
제한 준수
Azure AI Video Indexer는 대규모로 인덱싱을 처리하도록 빌드되었으며, 이를 최대한 활용하려면 시스템의 기능을 인식하고 그에 따라 통합을 설계해야 합니다. 일부 동영상이 업로드되지 않았는지 검색하기 위한 목적만으로 비디오 일괄 처리를 위한 업로드 요청을 보내면 안 됩니다. 그러면 HTTP 429 응답 코드(너무 많은 요청)가 표시됩니다. API 요청 제한은 초당 10개 요청 및 분당 최대 120개 요청입니다.
Azure AI Video Indexer는 retry-after
HTTP 응답에 헤더를 추가합니다. 헤더는 다음 재시도를 시도할 시기를 지정합니다. 다음 요청을 시도하기 전에 제한을 준수하는지 확인합니다.
콜백 URL 사용
업로드 요청을 보낸 때부터 지속적으로 요청 상태를 폴링하는 대신 콜백 URL을 추가하고 Azure AI Video Indexer가 업데이트될 때까지 대기할 수 있습니다. 업로드 요청에서 상태가 변경되는 즉시 지정한 URL에 대한 POST 알림을 받습니다.
콜백 URL은 비디오 업로드 API의 매개 변수 중 하나로 추가할 수 있습니다. GitHub 리포지토리에서 코드 샘플을 확인하세요.
콜백 URL의 경우 HTTP를 통해 트리거되고 다음 흐름을 구현할 수 있는 서버리스 이벤트 기반 플랫폼인 Azure Functions를 사용할 수도 있습니다.
콜백 URL 정의
콜백 URL은 POST 요청을 통해 고객에게 다음 이벤트를 알리는 데 사용됩니다.
인덱싱 상태 변경
속성:
이름 설명 id 비디오 ID state 비디오 상태 예: https://test.com/notifyme?projectName=MyProject& id=1234abcd&state=Processed
비디오에서 식별된 사용자
속성
이름 설명 id 비디오 ID faceId 비디오 인덱스에 표시되는 얼굴 ID knownPersonId 얼굴 모델 내에서 고유한 사람 ID personName 사람의 이름 예: https://test.com/notifyme?projectName=MyProject& id=1234abcd&faceid=12&knownPersonId=CCA84350-89B7-4262-861C-3CAC796542A5&personName=Inigo_Montoya
적합한 인덱싱 매개 변수 사용
Azure AI Video Indexer를 대규모로 사용하는 것과 관련된 결정을 내릴 때 요구 사항에 적합한 매개 변수를 사용하여 Azure AI Video Indexer를 최대한 활용하는 방법을 살펴봅니다. 다양한 매개 변수를 정의하여 비용을 절감하고 비디오의 인덱싱 프로세스를 더 빠르게 만들 수 있는 사용 사례를 살펴봅니다. 예를 들어, 비디오를 시청하지 않으려는 경우 사전 설정을 스트리밍으로 설정하지 않으며, 오디오 인사이트만 필요한 경우 비디오 인사이트를 인덱싱하지 않습니다.
가장 높은 해상도가 아닌 최적 해상도로 인덱싱
비디오 인덱싱에 필요한 비디오 품질은 무엇인가요?라는 질문을 할 수 있습니다.
대부분의 경우 인덱싱 성능은 HD(720P) 비디오와 4K 비디오 간에 차이가 거의 없습니다. 결국 동일한 신뢰도로 거의 동일한 인사이트를 얻을 수 있습니다. 업로드하는 동영상의 품질이 높을수록 파일 크기가 커지며 이로 인해 비디오를 업로드하는 데 필요한 컴퓨팅 성능과 시간이 증가합니다.
예를 들어, 얼굴 감지 기능의 경우 더 높은 해상도를 사용하면 작지만 맥락상 중요한 얼굴이 많이 있는 시나리오에 도움이 될 수 있습니다. 그러나 이로 인해 런타임이 2차적으로 증가하고 가양성의 위험이 증가합니다.
따라서 사용 사례에 적합한 결과를 얻는지 확인하고 먼저 로컬로 테스트하는 것이 좋습니다. 동일한 비디오를 720P 및 4K로 업로드하고 얻은 인사이트를 비교합니다.