Azure Cosmos DB for NoSQL을 사용해야 하는 경우

완료됨

Azure Cosmos DB for NoSQL은 최신 앱 개발을 위한 완전 관리형 NoSQL 데이터베이스 서비스입니다. 이것은 자동 및 인스턴트 스케일링 성능을 갖춘 SLA를 통해 보장된 한자리 밀리초 응답 시간과 99.999퍼센트 가용성을 제공합니다.

엔터프라이즈 시나리오의 경우 Azure Cosmos DB for NoSQL에는 처리량, 일관성, 가용성, 대기 시간을 포함하는, 재무적으로 지원되는 포괄적인 SLA(서비스 수준 계약)가 있습니다.

Azure Cosmos DB for NoSQL에 대한 일반적인 사용 사례

유연한 API를 사용하는 빠른 NoSQL 데이터베이스로서 Azure Cosmos DB for NoSQL은 글로벌 목표를 가진 고성능 애플리케이션에 적합합니다. 이러한 속도와 가용성 덕분에 Azure Cosmos DB for NoSQL은 웹, 소매, IoT, 게임 및 모바일 애플리케이션에 적합합니다. Azure Cosmos DB for NoSQL은 유연성, 짧은 응답 시간, 대규모 볼륨이나 높은 속도의 트랜잭션이 필요한 애플리케이션에 적합합니다.

IoT/원격 분석

IoT 센서 워크로드는 다양하고 예측 불가능할 수 있습니다. 이러한 워크로드에는 응답성이 높고 임의의 시점에 배포되는 데이터 수집 디바이스(개수와 관계없음)의 요구에 맞게 탄력적으로 스케일링할 수 있는 데이터베이스 플랫폼이 필요합니다. 대부분의 경우 IoT 워크로드는 대량의 데이터를 작성할 수 있으며 쓰기에 최적화된 데이터베이스 플랫폼을 활용합니다. Azure Cosmos DB for NoSQL은 쓰기 작업이 많은 워크로드에 최적화되어 있습니다. 단일 문서에 대한 작업은 원자성으로, 빠르고 예측 가능한 인덱싱된 쓰기 속도를 사용합니다. Azure Cosmos DB for NoSQL은 또한 다양한 IoT 워크로드의 요구 사항을 충족하기 위해 전역 분산형이며 탄력적입니다.

Architectural diagram for an IoT workload showing increasing numbers of IoT device sensors sending data to an Azure IoT Hub. Azure Databricks then ingests and aggregates the real-time data in JSON format for storage in Azure Cosmos DB. Finally, Azure Synapse Analytics is used to perform a deeper analysis of the data stored in Azure Cosmos DB.

이 예에서는 점점 더 많은 IoT 디바이스에서 Azure IoT Hub에 센서 데이터를 보냅니다. 그런 다음, Azure Stream Analytics가 Azure Cosmos DB for NoSQL에서 스토리지에 대한 데이터를 수집하고 집계합니다. 그런 다음, Azure Synapse Analytics는 Azure Cosmos DB용 Azure Synapse Link를 사용하여 데이터를 근 실시간으로 분석합니다.

소매/마케팅

Azure Cosmos DB for NoSQL은 일 년 중 임의의 시점에 극적이거나 예상치 못한 사용량 변동을 경험할 수 있는 소매 및 마케팅 워크로드에 매우 적합합니다. Azure Cosmos DB for NoSQL의 탄력적 스케일링은 데이터베이스 플랫폼이 사용량이 최대인 기간 중에 요청을 처리하고 사용량이 적은 기간에 비용을 절감할 수 있게 합니다.

Architectural diagram for a retail workload showing a user browser connecting to the website on Azure App Service supported by an Azure Blob Storage account containing static site data. Behind the scenes, an Azure Cosmos DB for NoSQL account with a container for inventory data and a container for shopping cart data is used by the App Service Web App and an Azure Search instance that builds a searchable catalog by indexing the Azure Cosmos DB for NoSQL account with inventory data.

이 예에서는 Azure Blob Storage에 저장된 콘텐츠를 기반으로 하는 JavaScript 웹 애플리케이션이 지원 데이터베이스로 Azure Cosmos DB for NoSQL을 사용합니다. 쇼핑 카트, 재고 또는 카탈로그와 같은 솔루션의 여러 측면을 관리하는 데 여러 계정이 사용됩니다. 그런 다음, 솔루션은 Azure Search를 사용하여 Azure Cosmos DB for NoSQL 데이터를 인덱싱하여 최종 사용자에게 풍부한 검색 환경을 제공합니다.

웹/모바일

많은 최신 소셜 애플리케이션은 수량, 모양, 볼륨 면에서 다양한 사용자 생성 콘텐츠를 풍부하게 만듭니다. 이 API는 다양한 스키마의 데이터를 저장할 수 있으므로 Azure Cosmos DB for NoSQL은 이 워크로드에 아주 적합한 후보입니다. 회사의 이니셔티브를 새로운 영역으로 확장함에 따라 시간이 지남에 따라 변경되거나 진화하는 스키마가 포함된 데이터용으로 NoSQL API를 고려합니다.

Architectural diagram for a web workload showing a user browser connecting to a URL that is connected to Azure Traffic Manager to determine the correct redirect destination. Then three Azure App Service instances in three Azure regions (North Europe, West US, East US) are connected to a globally distributed Azure Cosmos DB for NoSQL account.

이 예에서 사용자는 URL을 사용하여 브라우저에서 웹 사이트에 액세스합니다. URL은 Azure Traffic Manager를 가리키고, 이 Azure Traffic Manager는 기본 제공 알고리즘을 사용하여 사용자를 리디렉션할 Azure App Service 엔드포인트를 결정합니다. Azure Cosmos DB for NoSQL은 전역적으로 분산할 수 있으므로 여러 지역에 걸쳐 복제되는 계정이 하나만 필요합니다.

모듈 시나리오

이 모듈의 시작부터 시나리오를 살펴보겠습니다.

소매 회사에서 수석 개발자로 일한다고 가정하겠습니다. 팀원들과 함께 온라인 상점을 구축합니다. 새 상점은 모바일을 비롯한 다양한 디바이스에서 액세스할 수 있도록 설계할 예정입니다. 팀은 상점이 게시되고 다양한 “오픈” 세일이 시작되면 수요가 급증할 것으로 예상합니다.

상점의 성공에 한 가지 핵심적인 부분은 사용자가 주문할 때 사용하는 디바이스나 현재 사용 중인 디바이스와 관계없이 배송 업데이트 알림을 받을 수 있는 기능입니다. 팀은 정교한 시스템에서 자세한 주문 상태 추적을 관리하기 위해 노력했습니다. Azure Cosmos DB와 다른 Azure 서비스와의 긴밀한 통합 덕분에, Azure Cosmos DB for NoSQL에서 주문 데이터를 사용하여 사용자의 모바일 디바이스에 알림을 전송하는 솔루션 구축을 고려할 수 있습니다. 알림은 패키지가 배송되거나 배송이 중단될 때 경고합니다.

Architectural diagram for a retail workload showing a growing number of users ordering products and a collection of compute resources handling requests from the storefront instances. Behind the compute resources, Azure Cosmos DB stores purchase data. Then, Azure Synapse Link connects Azure Cosmos DB to Azure Synapse Analytics for deeper analytics. Finally, Azure Functions, triggered off of change feed, processing data events that then trigger an Azure Logic Apps workflow to perform business operations such as notifying the user on their mobile device of new events.

이 예는 이 모듈 소개의 예제와 비슷합니다. 첫 번째 예를 기반으로, 팀은 원하는 데이터베이스로 Azure Cosmos DB for NoSQL을 도입하기로 결정했습니다. 이제 팀이 Azure Synapse Link를 사용하여 Azure Synapse Analytics를 사용하여 더 심층적인 분석을 위해 데이터를 준비하고 집계할 수 있습니다. 또한 팀은 Azure Functions와 같은 서비스를 사용하여 Azure Cosmos DB를 통해 데이터 이벤트에 대응하고 모바일 디바이스에 알림을 보내는 Azure Logic Apps 워크플로를 트리거할 수 있습니다.