Dit artikel bevat een hybride architectuur voor videostreaming en analyse. Het voert latentiegevoelige toepassingen uit in openbare Azure MEC en voert andere services uit, zoals besturingsvlak-, AI- en machine learning-services, in een Azure-regio.
Notitie
De streaming met lage latentie die deze architectuur biedt aan webgebruikers is alleen van toepassing op gebruikers die worden gerouteerd naar het openbare Azure MEC dat de videoverwerking uitvoert en als host fungeert voor de web-app. Over het algemeen omvat dit geen gebruikers in andere geografische gebieden.
Architectuur
Een Visio-bestand van deze architectuur downloaden.
Workflow
Cameravideo wordt gestreamd naar het service-eindpunt voor videoverwerking, dat wordt uitgevoerd in openbare Azure MEC. Een telco 5G-netwerk draagt de stroom.
De pijplijn voor videoverwerking wordt uitgevoerd in een AKS-cluster (Azure Kubernetes Service) en verwerkt de video. Als u de service in openbare Azure MEC gebruikt, vermindert u de retourtijd en bandbreedtekosten van het netwerk in vergelijking met het verzenden van de video naar de cloud voor verwerking.
De AI-deductieservice, die ook wordt uitgevoerd in openbare Azure MEC, analyseert de video nadat deze is verwerkt door de verwerkingspijplijn en biedt inzichten.
Nadat de deductiepijplijn de video heeft geanalyseerd, neemt de web-app de videostream van de publicatieservice en distribueert deze naar webgebruikers. Het kan ook statische bestanden distribueren met behulp van Azure Content Delivery Network-profielen.
De video-inzichten en metagegevens die door de deductieservice worden gegenereerd, worden verzonden naar de cloud waar ze worden opgeslagen in Azure SQL Database. De pijplijn voor videoverwerking kan de onbewerkte video opslaan in een Azure Blob Storage-account in de cloud voor verdere verwerking.
De gegevens die in de opslag zijn vastgelegd, kunnen voor verschillende doeleinden worden gebruikt:
- Azure Machine Learning kan machine learning-batchprocessen uitvoeren om de modellen te verbeteren.
- Microsoft Power BI en Azure Notification Hub kunnen de gegevens gebruiken om meldingen te verzenden en dashboards te vullen.
Machine Learning werkt de AI-deductiemodellen bij die worden uitgevoerd in openbare Azure MEC.
Onderdelen
Er zijn twee lijsten met onderdelen in deze sectie, die zich in openbare Azure MEC bevinden en die zich in de Azure-regio bevinden.
Openbare Azure MEC
- Videoverwerking in openbare Azure MEC: De pijplijn voor videoverwerking, AI-deductieservice en web-app zijn microservicestoepassingen die worden uitgevoerd in het AKS-cluster (Azure Kubernetes Service). De AI-deductieservice maakt gebruik van AI-deductiemodellen om de videostreams te analyseren en inzichten te bieden. De web-app distribueert de verwerkte video naar webgebruikers.
- Pijplijn voor videoverwerking: Een typische pijplijn voor videoverwerking bevat services die videofeeds van camera's vastleggen, verwerken en publiceren. Het implementeren van deze services aan de rand vermindert latentie en bandbreedtegebruik vergeleken met het verzenden van de video naar de cloud voor verwerking.
- AI-deductieservice: deze service neemt als invoer van de verwerkte video en biedt inzicht in deze service. U kunt Azure AI-modellen of AI-modellen implementeren vanuit andere bronnen die kunnen helpen bij taken zoals object- en personendetectie en -tracering, afbeeldingsclassificatie, anomaliedetectie en beveiligingswaarschuwingen.
- Web-app-service: de web-app-service fungeert als host voor de webpagina die video's levert aan gebruikers. De web-app neemt invoer van de publicatieservice van de videoverwerkingspijplijn en verzendt de livefeed.
- Azure Content Delivery Network-profielen : de web-app kan contentleveringsnetwerkprofielen gebruiken om statische afbeeldingen van de web-app te verzenden om de reactiesnelheid van de toepassing te verbeteren.
Azure-regio
- Databaseservice: Azure biedt verschillende databaseaanbiedingen, zoals Azure SQL Database, Azure Database for MySQL, Azure Database for PostgreSQL en Azure Cosmos DB. U kunt deze gebruiken om de uitvoer van de deductieservice op te slaan.
- Azure Blob Storage: u kunt blobopslag gebruiken om de videostream te bewaren voor toekomstig gebruik, zoals video op aanvraag en videoanalyse.
- Azure Machine Learning: In deze architectuur gebruikt Machine Learning invoer van de database om machine learning-modellen te trainen en worden vervolgens de modellen bijgewerkt die door de deductieservice worden gebruikt.
- Andere services: U kunt Azure Notification Hubs gebruiken om gebruikers te waarschuwen over afwijkingen die zijn gedetecteerd in de video, Microsoft Power BI om dashboards te vullen en rapporten te genereren, en Azure Stream Analytics om inzicht te krijgen in uw videostreams.
Alternatieven
Een alternatief voor het implementeren van AKS is het implementeren van Azure IoT Edge in openbare Azure MEC en het uitvoeren van Azure-modules die vergelijkbare functionaliteit bieden voor de reeds genoemde services. U kunt gebruikmaken van:
- Azure Video Analyzer om de pijplijn voor videoverwerking te maken.
- Azure Cognitive Services om de video te analyseren om inzichten te bieden.
- Azure Stream Analytics voor het implementeren van analyseservices op de gestreamde video.
- Azure Functions om acties uit te voeren voor de analyse en de inzichten.
Scenariodetails
Door toepassingen aan de rand te hosten, kunnen ze sneller reageren en de netwerkbandbreedtevereisten vereenvoudigen. Azure public multi-access edge compute (Azure public MEC) is een edge-computingoplossing die een portfolio van Microsoft compute-, netwerk- en toepassingsservices combineert die worden beheerd vanuit de cloud. U kunt deze gebruiken om de snelheid van 5G te benutten en belangrijke scenario's met lage latentie en hoge bandbreedte te ontgrendelen.
Openbare Azure MEC is echter niet bedoeld om uw hele toepassingsstack aan de rand te hosten. Het is essentieel om te begrijpen welke onderdelen van uw toepassing moeten worden uitgevoerd in openbare Azure MEC en welke in plaats daarvan moeten worden uitgevoerd in een Azure-regio of on-premises.
Live streamen van gebeurtenissen vereist snelle videoverwerking om gebruikers een realtime en persoonlijke weergave te bieden, dus het is een goede kandidaat voor een edge-oplossing.
Potentiële gebruikscases
Organisaties die snel reageren op toepassingen nodig hebben, zelfs in situaties met hoge vraag, moeten overwegen om openbare MEC van Azure te gebruiken om latentiegevoelige onderdelen van de toepassing te hosten.
Videoanalyse op basis van computer vision-modellen wordt met name gebruikt door verschillende branches, waaronder de volgende generatie detailhandel, slimme steden, verbonden voertuigen. Dergelijke toepassingen zijn kandidaten voor deze architectuur.
Overwegingen
Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die kunnen worden gebruikt om de kwaliteit van een workload te verbeteren. Zie Microsoft Azure Well-Architected Framework voor meer informatie. Het framework bestaat uit vijf pijlers van architectonische uitmuntendheid:
- Betrouwbaarheid
- Beveiliging
- Kostenoptimalisatie
- Operationele uitmuntendheid
- Prestatie-efficiëntie
Implementatie
Er is meestal een prijspremie die is gekoppeld aan het implementeren van resources in het openbare Azure MEC. Om de kosten lager te houden, is het belangrijk dat u de latentiegevoelige en kritieke onderdelen identificeert die kunnen profiteren van uitvoering in het openbare Azure MEC. Alle andere onderdelen van de toepassing moeten worden geïmplementeerd in de Azure-regio om de kosten te verlagen.
Schaalbaarheid
Openbare Azure MEC ondersteunt AKS- en Azure Virtual Machine Scale Sets die u kunt gebruiken om uw reken- en latentiegevoelige workloads te schalen om aan de vereisten van de toepassingen te voldoen.
Opties voor taakverdeling
AKS ondersteunt intern meerdere opties om inkomend verkeer te verdelen. De NGINX-ingangscontroller wordt weergegeven in het architectuurdiagram, maar er zijn andere load balancers die u met AKS kunt gebruiken. Zie Een interne load balancer gebruiken met Azure Kubernetes Service (AKS) voor meer informatie.
Prestaties
Openbare Azure MEC biedt verschillende SKU's voor virtuele machines, waaronder GPU-specifieke SKU's voor het verwerken van rekenintensieve videostromen.
Opslagopties
Openbare Azure MEC biedt geen ondersteuning voor Azure Storage-accounts, dus de blob-opslag kan zich alleen in de Azure-regio bevinden.
Kostenoptimalisatie
Kostenoptimalisatie gaat over manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie Overzicht van de pijler kostenoptimalisatie voor meer informatie.
- Zie prijzen voor Azure voor prijsinformatie.
- Gebruik de Azure-prijscalculator om de kosten voor het implementeren van deze oplossing te schatten.
Medewerkers
Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.
Hoofdauteur:
- Adhip Gupta | Senior Program Manager
Volgende stappen
- Azure public multi-access edge compute (MEC)
- Documentatie voor Azure Kubernetes Service (AKS)
- Documentatie voor Azure Machine Learning
- Documentatie voor Azure CDN