Cosmos DB를 사용한 맞춤 설정

API Apps
Container Instances
Cosmos DB

솔루션 아이디어

잠재적인 사용 사례, 대체 서비스, 구현 고려 사항 또는 가격 책정 지침과 같은 추가 정보를 사용하여 이 문서를 확장하려는 경우 GitHub 피드백을통해 알려주세요!

즉각적인 통찰력을 위해 낮은 대기 시간 및 조정 가능한 일관성 설정을 사용 하 여 고객을 위한 맞춤형 권장 구성을 실시간으로 생성

Architecture

아키텍처 다이어그램 이 아키텍처의 SVG 를 다운로드 합니다.

데이터 흐름

  1. 구매자/사용자는 자신의 자격 증명을 사용 하 여 전자 상거래 앱에 로그인 합니다.
  2. 구매자/사용자는 주문 및 주문을 Azure API Apps로 이동 합니다.
  3. 데이터는 Cosmos DB (고객 주문)에 저장 됩니다.
  4. Cosmos DB에서 변경 피드를 사용 하도록 설정 하 고 사용 가능한 이벤트의 모든 변경 내용을 처리 합니다.
  5. Azure 데이터 brick에서 Apache Spark를 사용 하 여 데이터를 학습 하 고 Cosmos DB (제품 + 사용자 벡터)에 저장 합니다.
  6. 최신 권장 사항은 Azure Container Service (권장 사항 Api)를 사용 하 여 전자 상거래 저장소 UI에서 인출 됩니다.

구성 요소

이 아키텍처에는 다음 구성 요소가 포함 됩니다.

  • Azure 웹 앱 은 Azure App Service의 일부입니다. 웹 응용 프로그램, REST Api 및 모바일 백 엔드를 호스팅하기 위한 HTTP 기반 서비스입니다. .NET, .NET Core, Java, Ruby, Node.js, PHP 또는 Python 등 원하는 언어로 개발할 수 있습니다. Windows 및 Linux 기반 환경에서 애플리케이션을 쉽게 실행하고 확장할 수 있습니다.

  • Azure Cosmos DB 는 대규모 데이터 탄력적으로 제공할 수 있는 여러 모델 데이터베이스입니다. Azure Cosmos DB는 다중 쓰기 모델에서 전역적으로 배포 되는 응용 프로그램용으로 설계 되었습니다.

  • 변경 피드 는 발생 하는 순서 대로 컨테이너의 변경 내용에 대 한 영구 기록을 제공 합니다.

  • Azure Container Instances 서버를 사용 하지 않는 Microsoft Azure 환경에서 요청 시 컨테이너를 실행 합니다. Azure Container Instances는 전체 Docker 호스트나 Kubernetes 설치가 필요 하지 않은 컨테이너를 실행 하는 낮은 수준의 방법입니다.

  • Azure Kubernetes Service 는 권장 사항 모델과 같은 컨테이너 화 된 응용 프로그램의 배포, 크기 조정 및 관리를 자동화 합니다.

  • Azure Databricks 는 Microsoft Azure cloud services 플랫폼에 최적화 된 데이터 분석 플랫폼입니다. Azure Databricks는 데이터 집약적 애플리케이션을 개발하기 위해 두 가지 환경 즉, Azure Databricks SQL Analytics와 Azure Databricks 작업 영역을 제공합니다.

고려 사항

컨테이너 서비스 앞에 있는 API management는 요율 제한, API 버전 관리, 정책 등 다양 한 이점을 제공 합니다. 자세한 내용은 Azure API Management를 참조 하세요.

확장성

Azure Cosmos DB를 사용하면 데이터베이스 및 컨테이너에서 표준(수동) 또는 프로비전된 처리량 자동 크기 조정을 설정할 수 있습니다. Azure Cosmos DB에서 프로비저닝된 처리량 자동 크기 조정 기능을 사용하면 데이터베이스 또는 컨테이너의 처리량(RU/s)을 자동으로 즉시 크기 조정할 수 있습니다. 처리량은 작업의 가용성, 대기 시간, 처리량 또는 성능에 영향을 주지 않고 사용량을 기준으로 크기가 조정 됩니다.

또한 Azure Synapse는 기본 Apache Spark 기능을 제공 하며 권장 사항 모델의 개발 및 학습을 위한 대체 옵션으로 간주할 수 있습니다.

성능 및 처리량 요구 사항에 맞게 AKS 클러스터를 확장하세요. 클러스터를 완전히 활용할 수 있게 Pod 수를 확장하고, 서비스의 필요에 맞게 클러스터의 노드를 확장하도록 유의하세요.

다음 단계