Vanliga Azure Cosmos DB användnings fallCommon Azure Cosmos DB use cases

Den här artikeln innehåller en översikt över flera vanliga användnings fall för Azure Cosmos DB.This article provides an overview of several common use cases for Azure Cosmos DB. Rekommendationerna i den här artikeln fungerar som en utgångs punkt när du utvecklar ditt program med Cosmos DB.The recommendations in this article serve as a starting point as you develop your application with Cosmos DB.

När du har läst den här artikeln kan du svara på följande frågor:After reading this article, you'll be able to answer the following questions:

  • Vad är vanliga användnings fall för Azure Cosmos DB?What are the common use cases for Azure Cosmos DB?
  • Vilka är fördelarna med att använda Azure Cosmos DB för butiks program?What are the benefits of using Azure Cosmos DB for retail applications?
  • Vilka är fördelarna med att använda Azure Cosmos DB som data lager för Sakernas Internet-system (IoT)?What are the benefits of using Azure Cosmos DB as a data store for Internet of Things (IoT) systems?
  • Vilka är fördelarna med att använda Azure Cosmos DB för webb-och mobil program?What are the benefits of using Azure Cosmos DB for web and mobile applications?

IntroduktionIntroduction

Azure Cosmos DB är Microsofts globalt distribuerade databas tjänst.Azure Cosmos DB is Microsoft’s globally distributed database service. Tjänsten är utformad för att göra det möjligt för kunder att elastiskt (och självständigt) skala data flöde och lagrings utrymme i valfritt antal geografiska regioner.The service is designed to allow customers to elastically (and independently) scale throughput and storage across any number of geographical regions. Azure Cosmos DB är den första globalt distribuerade databas tjänsten på marknaden idag för att erbjuda omfattande service avtal som omfattar data flöde, svars tid, tillgänglighet och konsekvens.Azure Cosmos DB is the first globally distributed database service in the market today to offer comprehensive service level agreements encompassing throughput, latency, availability, and consistency.

Azure Cosmos DB är en globalt distribuerad databas för flera modeller som används i en mängd olika program och användnings fall.Azure Cosmos DB is a global distributed, multi-model database that is used in a wide range of applications and use cases. Det är ett bra val för alla program utan Server som behöver svars tider med låg ordning i millisekunder och måste skalas snabbt och globalt.It is a good choice for any serverless application that needs low order-of-millisecond response times, and needs to scale rapidly and globally. Den har stöd för flera data modeller (nyckel värde, dokument, grafer och kolumner) och många API: er för data åtkomst, inklusive Azure Cosmos DB s API för MongoDB, SQL API, Gremlin APIoch tabeller API internt och på ett utöknings Bart sätt.It supports multiple data models (key-value, documents, graphs and columnar) and many APIs for data access including Azure Cosmos DB's API for MongoDB, SQL API, Gremlin API, and Tables API natively, and in an extensible manner.

Följande är några attribut för Azure Cosmos DB som gör det lämpligt för program med höga prestanda med globala ambition.The following are some attributes of Azure Cosmos DB that make it well-suited for high-performance applications with global ambition.

  • Azure Cosmos DB internt partitioner dina data för hög tillgänglighet och skalbarhet.Azure Cosmos DB natively partitions your data for high availability and scalability. Azure Cosmos DB erbjuder 99,99% garantier för tillgänglighet, data flöde, låg latens och konsekvens på alla konton i en region och alla konton med flera regioner med avslappnad konsekvens och 99,999% Läs tillgänglighet för alla databas konton i flera regioner.Azure Cosmos DB offers 99.99% guarantees for availability, throughput, low latency, and consistency on all single-region accounts and all multi-region accounts with relaxed consistency, and 99.999% read availability on all multi-region database accounts.
  • Azure Cosmos DB har SSD-lagring med en låg latens-svars tid på upp till millisekunder.Azure Cosmos DB has SSD backed storage with low-latency order-of-millisecond response times.
  • Azure Cosmos DB stöd för konsekvens nivåer som till exempel återkommande, konsekvent prefix, session och begränsad föråldrad för att ge full flexibilitet och låg kostnad till prestanda förhållandet.Azure Cosmos DB's support for consistency levels like eventual, consistent prefix, session, and bounded-staleness allows for full flexibility and low cost-to-performance ratio. Ingen databas tjänst ger lika mycket flexibilitet som Azure Cosmos DB på nivå konsekvens.No database service offers as much flexibility as Azure Cosmos DB in levels consistency.
  • Azure Cosmos DB har en flexibel data vänlig pris modell som mätar lagring och data flöde oberoende av varandra.Azure Cosmos DB has a flexible data-friendly pricing model that meters storage and throughput independently.
  • Med Azure Cosmos DBens reserverade data flödes modell kan du tänka på antalet läsningar och skrivningar i stället för processor/minne/IOPs för den underliggande maskin varan.Azure Cosmos DB's reserved throughput model allows you to think in terms of number of reads/writes instead of CPU/memory/IOPs of the underlying hardware.
  • Med Azure Cosmos DBs design kan du skala till enorma begär ande volymer i storleksordningen av biljon förfrågningar per dag.Azure Cosmos DB's design lets you scale to massive request volumes in the order of trillions of requests per day.

Dessa attribut är fördelaktiga i webb-, mobil-, spel-och IoT-program som behöver låg svars tid och som behöver hantera enorma mängder läsningar och skrivningar.These attributes are beneficial in web, mobile, gaming, and IoT applications that need low response times and need to handle massive amounts of reads and writes.

IoT och telematikIoT and telematics

Användnings områden för IoT delar ofta några mönster i hur de matar in, bearbetar och lagrar data.IoT use cases commonly share some patterns in how they ingest, process, and store data. För det första måste dessa system mata in burst-överföring av data från enhets sensorer för olika språk.First, these systems need to ingest bursts of data from device sensors of various locales. Därefter kan dessa system bearbeta och analysera strömmande data för att få insikter i real tid.Next, these systems process and analyze streaming data to derive real-time insights. Data arkiveras sedan till kall lagring för batch Analytics.The data is then archived to cold storage for batch analytics. Microsoft Azure erbjuder omfattande tjänster som kan användas för användnings fall i IoT, inklusive Azure Cosmos DB, Azure Event Hubs, Azure Stream Analytics, Azure Notification Hub, Azure Machine Learning, Azure HDInsight och Power BI.Microsoft Azure offers rich services that can be applied for IoT use cases including Azure Cosmos DB, Azure Event Hubs, Azure Stream Analytics, Azure Notification Hub, Azure Machine Learning, Azure HDInsight, and Power BI.

Referens arkitektur för Azure Cosmos DB IoT

Burst-data kan matas in av Azure Event Hubs eftersom det erbjuder data inmatning med hög data flöde med låg latens.Bursts of data can be ingested by Azure Event Hubs as it offers high throughput data ingestion with low latency. Data som matas in och som behöver bearbetas för insikter i real tid kan delas in i Azure Stream Analytics för analys i real tid.Data ingested that needs to be processed for real-time insight can be funneled to Azure Stream Analytics for real-time analytics. Data kan läsas in i Azure Cosmos DB för adhoc-frågor.Data can be loaded into Azure Cosmos DB for adhoc querying. När data har lästs in i Azure Cosmos DB är data klara att frågas.Once the data is loaded into Azure Cosmos DB, the data is ready to be queried. Dessutom kan nya data och ändringar i befintliga data läsas vid ändrings flöde.In addition, new data and changes to existing data can be read on change feed. Ändra feed är en beständigt, bifogad logg som lagrar ändringar i Cosmos-behållare i sekventiell ordning.Change feed is a persistent, append only log that stores changes to Cosmos containers in sequential order. Alla data eller bara ändringar av data i Azure Cosmos DB kan användas som referens data som en del av analys i real tid.The all data or just changes to data in Azure Cosmos DB can be used as reference data as part of real-time analytics. Dessutom kan data förfinas och bearbetas genom att du ansluter Azure Cosmos DB data till HDInsight för gris-, Hive-eller Map/minska-jobb.In addition, data can further be refined and processed by connecting Azure Cosmos DB data to HDInsight for Pig, Hive, or Map/Reduce jobs. Förfinade data läses sedan tillbaka till Azure Cosmos DB för rapportering.Refined data is then loaded back to Azure Cosmos DB for reporting.

Ett exempel på en IoT-lösning som använder Azure Cosmos DB, EventHubs och Storm finns i databasen HDInsight-Storm-exempel på GitHub.For a sample IoT solution using Azure Cosmos DB, EventHubs and Storm, see the hdinsight-storm-examples repository on GitHub.

Mer information om Azure-erbjudanden för IoT finns i skapa Sakernas Internet.For more information on Azure offerings for IoT, see Create the Internet of Your Things.

Detalj handel och marknadsföringRetail and marketing

Azure Cosmos DB används i stor utsträckning i Microsofts egna e-handelsplattformar som kör Windows Store och XBox Live.Azure Cosmos DB is used extensively in Microsoft's own e-commerce platforms, that run the Windows Store and XBox Live. Den används också i detalj handels branschen för lagring av katalog data och för händelse källor i order bearbetnings pipeliner.It is also used in the retail industry for storing catalog data and for event sourcing in order processing pipelines.

Scenarier för katalog data användning innebär att lagra och fråga en uppsättning attribut för entiteter som personer, platser och produkter.Catalog data usage scenarios involve storing and querying a set of attributes for entities such as people, places, and products. Några exempel på katalog data är användar konton, produkt kataloger, register över IoT-enheter och strukturbaserade system.Some examples of catalog data are user accounts, product catalogs, IoT device registries, and bill of materials systems. Attribut för dessa data kan variera och kan ändras med tiden för att passa program kraven.Attributes for this data may vary and can change over time to fit application requirements.

Överväg ett exempel på en produkt katalog för en bil delar leverantör.Consider an example of a product catalog for an automotive parts supplier. Varje del kan ha sina egna attribut utöver de gemensamma attribut som delas av alla delar.Every part may have its own attributes in addition to the common attributes that all parts share. Dessutom kan attribut för en speciell del ändra följande år när en ny modell släpps.Furthermore, attributes for a specific part can change the following year when a new model is released. Azure Cosmos DB stöder flexibla scheman och hierarkiska data och lämpar sig därför väl för att lagra produkt katalog data.Azure Cosmos DB supports flexible schemas and hierarchical data, and thus it is well suited for storing product catalog data.

Referens arkitektur för Azure Cosmos DB Retail Catalog

Azure Cosmos DB används ofta för händelse källor till Power Event driven arkitekturer med dess funktion för att ändra feed .Azure Cosmos DB is often used for event sourcing to power event driven architectures using its change feed functionality. Ändrings flödet ger underordnade mikrotjänster möjlighet till tillförlitlig och stegvis läsning av infogningar och uppdateringar (till exempel order händelser) som görs till en Azure Cosmos DB.The change feed provides downstream microservices the ability to reliably and incrementally read inserts and updates (for example, order events) made to an Azure Cosmos DB. Den här funktionen kan användas för att tillhandahålla en beständig händelse lagring som en meddelande koordinator för tillstånds ändrings händelser och bearbetning av arbets flöde för enhets ordnings bearbetning mellan många mikrotjänster (som kan implementeras som Server lös Azure Functions).This functionality can be leveraged to provide a persistent event store as a message broker for state-changing events and drive order processing workflow between many microservices (which can be implemented as serverless Azure Functions).

Azure Cosmos DB ordning för pipeline för pipeliniska referenser

Dessutom kan data som lagras i Azure Cosmos DB integreras med HDInsight för Big data Analytics via Apache Spark-jobb.In addition, data stored in Azure Cosmos DB can be integrated with HDInsight for big data analytics via Apache Spark jobs. Mer information om Spark-anslutaren för Azure Cosmos DB finns i köra ett Spark-jobb med Cosmos DB och HDInsight.For details on the Spark Connector for Azure Cosmos DB, see Run a Spark job with Cosmos DB and HDInsight.

SpelGaming

Databas nivån är en viktig komponent i spel program.The database tier is a crucial component of gaming applications. Moderna spel utför grafisk bearbetning på mobil-/konsol klienter, men förlitar sig på molnet för att leverera anpassat och personligt innehåll som spel statistik, social media integration och ranknings listor med hög poäng.Modern games perform graphical processing on mobile/console clients, but rely on the cloud to deliver customized and personalized content like in-game stats, social media integration, and high-score leaderboards. Spel kräver ofta en svars tid på en millisekund för läsningar och skrivningar för att ge en engagerande spel upplevelse.Games often require single-millisecond latencies for reads and writes to provide an engaging in-game experience. En spel databas måste vara snabb och kunna hantera enorma toppar i begär ande frekvenser under nya spel lanseringar och funktions uppdateringar.A game database needs to be fast and be able to handle massive spikes in request rates during new game launches and feature updates.

Azure Cosmos DB används av spel som inblandning : ingen man är jord av Nästa speloch Halo 5: vårdnadshavare.Azure Cosmos DB is used by games like The Walking Dead: No Man's Land by Next Games, and Halo 5: Guardians. Azure Cosmos DB ger följande fördelar för spel utvecklare:Azure Cosmos DB provides the following benefits to game developers:

  • Azure Cosmos DB tillåter att prestanda skalas upp eller ned elastiskt.Azure Cosmos DB allows performance to be scaled up or down elastically. Detta gör att spel kan hantera uppdatering av profiler och statistik från dussin tals till miljon tals samtidiga spelare genom att göra ett enda API-anrop.This allows games to handle updating profile and stats from dozens to millions of simultaneous gamers by making a single API call.
  • Azure Cosmos DB har stöd för läsningar och skrivningar i millisekunder för att undvika lags under spelspelet.Azure Cosmos DB supports millisecond reads and writes to help avoid any lags during game play.
  • Med hjälp av automatisk indexering i Azure Cosmos DB kan du filtrera mot flera olika egenskaper i real tid, till exempel hitta spelare utifrån deras interna spelare-ID eller deras GameCenter, Facebook, Google ID eller fråga baserat på spelarens medlemskap i en Guild.Azure Cosmos DB's automatic indexing allows for filtering against multiple different properties in real-time, for example, locate players by their internal player IDs, or their GameCenter, Facebook, Google IDs, or query based on player membership in a guild. Detta är möjligt utan att skapa komplexa indexerings-eller horisontell partitionering-infrastrukturer.This is possible without building complex indexing or sharding infrastructure.
  • Sociala funktioner, inklusive chatt meddelanden i spelet, spelare guild-medlemskap, utmaningar som slutförs, ranknings listor och sociala grafer är enklare att implementera med ett flexibelt schema.Social features including in-game chat messages, player guild memberships, challenges completed, high-score leaderboards, and social graphs are easier to implement with a flexible schema.
  • Azure Cosmos DB som en hanterad plattform som en tjänst (PaaS) krävde minimalt konfigurations-och hanterings arbete för att möjliggöra snabb iteration och minska tiden till marknaden.Azure Cosmos DB as a managed platform-as-a-service (PaaS) required minimal setup and management work to allow for rapid iteration, and reduce time to market.

Referens arkitektur för Azure Cosmos DB spel

Webb program och mobilapparWeb and mobile applications

Azure Cosmos DB används ofta i webb program och mobilappar, och passar utmärkt för att utforma sociala interaktioner, integrera med tjänster från tredje part och för att skapa anpassade upplevelser.Azure Cosmos DB is commonly used within web and mobile applications, and is well suited for modeling social interactions, integrating with third-party services, and for building rich personalized experiences. Cosmos DB SDK: er kan användas för att bygga rika iOS-och Android-program med hjälp av det populära Xamarin-ramverket.The Cosmos DB SDKs can be used build rich iOS and Android applications using the popular Xamarin framework.

Sociala programSocial Applications

Ett vanligt användnings fall för Azure Cosmos DB är att lagra och fråga User Generated Content (UGC) för webb-, mobil-och sociala medie program.A common use case for Azure Cosmos DB is to store and query user generated content (UGC) for web, mobile, and social media applications. Några exempel på UGC är chatt-sessioner, tweets, blogg inlägg, klassificeringar och kommentarer.Some examples of UGC are chat sessions, tweets, blog posts, ratings, and comments. UGC i appar för sociala medier är ofta en blandning av kostnads fria formulär text, egenskaper, taggar och relationer som inte begränsas av stel struktur.Often, the UGC in social media applications is a blend of free form text, properties, tags, and relationships that are not bounded by rigid structure. Innehåll som chattar, kommentarer och inlägg kan lagras i Cosmos DB utan att det krävs omvandling eller komplexa objekt till Relations mappnings skikt.Content such as chats, comments, and posts can be stored in Cosmos DB without requiring transformations or complex object to relational mapping layers. Data egenskaper kan läggas till eller ändras enkelt för att matcha krav när utvecklare itererar program koden, vilket främjar snabb utveckling.Data properties can be added or modified easily to match requirements as developers iterate over the application code, thus promoting rapid development.

Program som integreras med sociala nätverk från tredje part måste reagera på att ändra scheman från dessa nätverk.Applications that integrate with third-party social networks must respond to changing schemas from these networks. Allteftersom data automatiskt indexeras som standard i Cosmos DB kan data efter frågas när som helst.As data is automatically indexed by default in Cosmos DB, data is ready to be queried at any time. De här programmen har därför flexibiliteten att hämta projektioner per respektive behov.Hence, these applications have the flexibility to retrieve projections as per their respective needs.

Många av de sociala programmen körs i global skala och kan uppvisa oförutsägbara användnings mönster.Many of the social applications run at global scale and can exhibit unpredictable usage patterns. Flexibilitet vid skalning av data lagringen är viktig eftersom program lagret skalas för att matcha användnings behovet.Flexibility in scaling the data store is essential as the application layer scales to match usage demand. Du kan skala ut genom att lägga till ytterligare datapartitioner under ett Cosmos DB konto.You can scale out by adding additional data partitions under a Cosmos DB account. Dessutom kan du också skapa ytterligare Cosmos DB konton över flera regioner.In addition, you can also create additional Cosmos DB accounts across multiple regions. Information om tillgänglighet för Cosmos DB service regioner finns i Azure-regioner.For Cosmos DB service region availability, see Azure Regions.

Referens arkitektur för Azure Cosmos DB Web App

AnpassningPersonalization

Nuförtiden, moderna program levereras med komplexa vyer och upplevelser.Nowadays, modern applications come with complex views and experiences. Dessa är vanligt vis dynamiska, catering till användar preferenser eller stämnings-och märkes behov.These are typically dynamic, catering to user preferences or moods and branding needs. Därför måste program kunna hämta anpassade inställningar effektivt för att snabbt återge GRÄNSSNITTs element och upplevelser.Hence, applications need to be able to retrieve personalized settings effectively to render UI elements and experiences quickly.

JSON, ett format som stöds av Cosmos DB, är ett effektivt format som representerar GRÄNSSNITTets layoutinformation eftersom det inte bara är lätt att tolka, men det kan också enkelt tolkas av Java Script.JSON, a format supported by Cosmos DB, is an effective format to represent UI layout data as it is not only lightweight, but also can be easily interpreted by JavaScript. Cosmos DB ger justerbara konsekvens nivåer som tillåter snabba läsningar med låg latens skrivningar.Cosmos DB offers tunable consistency levels that allow fast reads with low latency writes. Därför är det ett effektivt sätt att lagra data i gränssnittet, inklusive anpassade inställningar som JSON-dokument i Cosmos DB, för att hämta data över hela kabeln.Hence, storing UI layout data including personalized settings as JSON documents in Cosmos DB is an effective means to get this data across the wire.

Referens arkitektur för Azure Cosmos DB Web App

Nästa stegNext steps

  • Kom igång med Azure Cosmos DB genom att följa våra snabb starter, som vägleder dig genom att skapa ett konto och komma igång med Cosmos dB.To get started with Azure Cosmos DB, follow our quick starts, which walk you through creating an account and getting started with Cosmos DB.

  • Om du vill läsa mer om kunder som använder Azure Cosmos DB kan du gå till sidan med fallstudier för kunder .If you'd like to read more about customers using Azure Cosmos DB, see the customer case studies page.