Georuimtelijke gegevensverwerking en -analyse

Azure Data Factory
Azure Data Lake Storage
Azure Database for PostgreSQL
Azure Databricks
Azure Event Hubs

In dit artikel wordt een beheerbare oplossing beschreven voor het beschikbaar maken van grote hoeveelheden georuimtelijke gegevens voor analyse.

Architectuur

Architecture diagram showing how geospatial data flows through an Azure system. Various components receive, process, store, analyze, and publish the data.

Download een Visio-bestand van deze architectuur.

Het diagram bevat verschillende grijze vakken, elk met een ander label. Van links naar rechts worden de labels opgenomen, voorbereiden, laden, serveren en visualiseren en verkennen. Een laatste vak onder de anderen heeft het label Bewaken en beveiligen. Elk vak bevat pictogrammen die verschillende Azure-services vertegenwoordigen. Genummerde pijlen verbinden de vakken op de manier waarop de stappen in de diagramuitleg worden beschreven.

Werkstroom

  1. IoT-gegevens voeren het systeem in:

    • Azure Event Hubs neemt stromen ioT-gegevens op. De gegevens bevatten coördinaten of andere informatie die locaties van apparaten identificeert.
    • Event Hubs maakt gebruik van Azure Databricks voor de eerste stroomverwerking.
    • Event Hubs slaat de gegevens op in Azure Data Lake Storage.
  2. GIS-gegevens voeren het systeem in:

    • Azure Data Factory neemt raster-GIS-gegevens en vector GIS-gegevens van elke indeling op.

      • Rastergegevens bestaan uit rasters met waarden. Elke pixelwaarde vertegenwoordigt een kenmerk zoals de temperatuur of verhoging van een geografisch gebied.
      • Vectorgegevens vertegenwoordigen specifieke geografische kenmerken. Hoekpunten, of discrete geometrische locaties, vormen de vectoren en definiëren de vorm van elk ruimtelijk object.
    • Data Factory slaat de gegevens op in Data Lake Storage.

  3. Spark-clusters in Azure Databricks gebruiken georuimtelijke codebibliotheken om de gegevens te transformeren en normaliseren.

  4. Data Factory laadt de voorbereide vector- en rastergegevens in Azure Database for PostgreSQL. De oplossing maakt gebruik van de PostGIS-extensie met deze database.

  5. Data Factory laadt de voorbereide vector- en rastergegevens in Azure Data Explorer.

  6. Azure Database for PostgreSQL slaat de GIS-gegevens op. API's maken deze gegevens beschikbaar in gestandaardiseerde indelingen:

    • GeoJSON is gebaseerd op JavaScript Object Notation (JSON). GeoJSON vertegenwoordigt eenvoudige geografische kenmerken en hun niet-ruimtelijke eigenschappen.
    • Bekende tekst (WKT) is een tekstmarkeringstaal die vectorgeometrieobjecten vertegenwoordigt.
    • Vectortegels zijn pakketten met geografische gegevens. De lichtgewicht indeling verbetert de toewijzingsprestaties.

    Een Redis-cache verbetert de prestaties door snelle toegang tot de gegevens te bieden.

  7. De functie Web Apps van Azure-app Service werkt met Azure Kaarten om visuals van de gegevens te maken.

  8. Gebruikers analyseren de gegevens met Azure Data Explorer. GIS-functies van dit hulpprogramma maken inzichtelijke visualisaties. Voorbeelden hiervan zijn het maken van spreidingsdiagrammen op basis van georuimtelijke gegevens.

  9. Power BI biedt aangepaste rapporten en business intelligence (BI). De Azure Kaarten-visual voor Power BI markeert de rol van locatiegegevens in bedrijfsresultaten.

Gedurende het hele proces:

  • Azure Monitor verzamelt informatie over gebeurtenissen en prestaties.
  • Log Analytics voert query's uit in logboeken bewaken en analyseert de resultaten.
  • Azure Key Vault beveiligt wachtwoorden, verbindingsreeks s en geheimen.

Onderdelen

  • Azure Event Hubs is een volledig beheerd streamingplatform voor big data. Dit Platform as a Service (PaaS) biedt een gepartitioneerd consumentenmodel. Meerdere toepassingen kunnen dit model gebruiken om de gegevensstroom tegelijkertijd te verwerken.

  • Azure Data Factory is een integratieservice die werkt met gegevens uit verschillende gegevensarchieven. U kunt dit volledig beheerde, serverloze platform gebruiken om werkstromen voor gegevenstransformatie te maken, plannen en organiseren.

  • Azure Databricks is een platform voor gegevensanalyse. De volledig beheerde Spark-clusters verwerken grote gegevensstromen uit meerdere bronnen. Azure Databricks kan georuimtelijke gegevens op grote schaal transformeren voor gebruik in analyse en gegevensvisualisatie.

  • Data Lake Storage is een schaalbare en veilige Data Lake voor high-performance analyseworkloads. Deze service kan meerdere petabytes aan informatie beheren terwijl honderden gigabits aan doorvoer worden ondersteund. De gegevens zijn doorgaans afkomstig van meerdere heterogene bronnen en kunnen gestructureerd, semi-gestructureerd of ongestructureerd zijn.

  • Azure Database for PostgreSQL is een volledig beheerde relationele databaseservice die is gebaseerd op de community-editie van de opensource PostgreSQL-database-engine .

  • PostGIS is een extensie voor de PostgreSQL-database die kan worden geïntegreerd met GIS-servers. PostGIS kan SQL-locatiequery's uitvoeren die betrekking hebben op geografische objecten.

  • Redis is een opensource-gegevensarchief in het geheugen. Redis-caches behouden veelgebruikte gegevens in servergeheugen. De caches kunnen vervolgens snel grote hoeveelheden toepassingsaanvragen verwerken die gebruikmaken van de gegevens.

  • Power BI is een verzameling softwareservices en apps. U kunt Power BI gebruiken om niet-gerelateerde gegevensbronnen te verbinden en visuals ervan te maken.

  • De Azure Kaarten-visual voor Power BI biedt een manier om kaarten met ruimtelijke gegevens te verbeteren. U kunt deze visual gebruiken om te laten zien hoe locatiegegevens van invloed zijn op metrische zakelijke gegevens.

  • Azure-app Service en de web-apps-functie bieden een framework voor het bouwen, implementeren en schalen van web-apps. Het App Service-platform biedt ingebouwd infrastructuuronderhoud, beveiligingspatching en schalen.

  • GIS-gegevens-API's in Azure Kaarten kaartgegevens opslaan en ophalen in indelingen zoals GeoJSON en vectortegels.

  • Azure Data Explorer is een snelle, volledig beheerde gegevensanalyseservice die kan werken met grote hoeveelheden gegevens. Deze service was oorspronkelijk gericht op tijdreeksen en Log Analytics. Het verwerkt nu ook diverse gegevensstromen van toepassingen, websites, IoT-apparaten en andere bronnen. Georuimtelijke functionaliteit in Azure Data Explorer biedt opties voor het weergeven van kaartgegevens.

  • Azure Monitor verzamelt gegevens over omgevingen en Azure-resources. Deze diagnostische informatie is handig voor het onderhouden van beschikbaarheid en prestaties. Twee gegevensplatformen vormen Monitor:

  • Log Analytics is een Azure Portal-hulpprogramma waarmee query's worden uitgevoerd op logboekgegevens van Monitor. Log Analytics biedt ook functies voor grafieken en het statistisch analyseren van queryresultaten.

  • Key Vault slaat de toegang tot geheimen, zoals tokens, wachtwoorden en API-sleutels, op en beheert deze. Key Vault maakt en beheert ook versleutelingssleutels en beheert beveiligingscertificaten.

Alternatieven

  • In plaats van uw eigen API's te ontwikkelen, kunt u Overwegen Martin te gebruiken. Deze opensource-tegelserver maakt vectortegels beschikbaar voor web-apps. Geschreven in Rust maakt Martin verbinding met PostgreSQL-tabellen. U kunt deze implementeren als een container.

  • Als u een gestandaardiseerde interface voor GIS-gegevens wilt bieden, kunt u overwegen GeoServer te gebruiken. Met dit open framework worden standaard OPEN Georuimteal Consortium-protocollen (OGC) geïmplementeerd, zoals WFS (Web Feature Service). Het integreert ook met algemene ruimtelijke gegevensbronnen. U kunt GeoServer implementeren als een container op een virtuele machine. Wanneer aangepaste web-apps en verkennende query's secundair zijn, biedt GeoServer een eenvoudige manier om georuimtelijke gegevens te publiceren.

  • Er zijn verschillende Spark-bibliotheken beschikbaar voor het werken met georuimtelijke gegevens in Azure Databricks. Deze oplossing maakt gebruik van deze bibliotheken:

    Maar er bestaan ook andere oplossingen voor het verwerken en schalen van georuimtelijke workloads met Azure Databricks.

  • Vectortegels bieden een efficiënte manier om GIS-gegevens weer te geven op kaarten. Deze oplossing maakt gebruik van PostGIS om dynamisch queryvectortegels uit te voeren. Deze benadering werkt goed voor eenvoudige query's en resultatensets die goed minder dan 1 miljoen records bevatten. Maar in de volgende gevallen is een andere benadering mogelijk beter:

    • Uw query's zijn rekenkracht duur.
    • Uw gegevens worden niet regelmatig gewijzigd.
    • U geeft grote gegevenssets weer.

    In deze situaties kunt u Tippeopgegevene gebruiken om vectortegels te genereren. U kunt Tippe navigatee uitvoeren als onderdeel van uw gegevensverwerkingsstroom, als een container of met Azure Functions. U kunt de resulterende tegels beschikbaar maken via API's.

  • Net als Event Hubs kan Azure IoT Hub grote hoeveelheden gegevens opnemen. Maar IoT Hub biedt ook bidirectionele communicatiemogelijkheden met apparaten. Als u gegevens rechtstreeks van apparaten ontvangt, maar ook opdrachten en beleidsregels naar apparaten verzendt, kunt u IoT Hub overwegen in plaats van Event Hubs.

  • Als u de oplossing wilt stroomlijnen, laat u deze onderdelen weg:

    • Azure Data Explorer
    • Power BI

Scenariodetails

Er zijn veel mogelijkheden voor het werken met georuimtelijke gegevens of informatie die een geografisch onderdeel bevat. Zo zijn software en standaarden voor geografische informatiesystemen (GIS) algemeen beschikbaar. Deze technologieën kunnen georuimtelijke gegevens opslaan, verwerken en bieden. Maar het is vaak moeilijk om systemen te configureren en te onderhouden die werken met georuimtelijke gegevens. U hebt ook deskundige kennis nodig om deze systemen te integreren met andere systemen.

In dit artikel wordt een beheerbare oplossing beschreven voor het beschikbaar maken van grote hoeveelheden georuimtelijke gegevens voor analyse. De benadering is gebaseerd op advanced analytics-referentiearchitectuur en maakt gebruik van deze Azure-services:

  • Azure Databricks met GIS Spark-bibliotheken verwerken gegevens.
  • Azure Database for PostgreSQL voert query's uit op gegevens die gebruikers aanvragen via API's.
  • Azure Data Explorer voert snelle verkennende query's uit.
  • Azure Kaarten maakt visuals van georuimtelijke gegevens in webtoepassingen.
  • De Visual-functie van Azure Kaarten power BI van Power BI biedt aangepaste rapporten

Potentiële gebruikscases

Deze oplossing is van toepassing op veel gebieden:

  • Verwerken, opslaan en toegang bieden tot grote hoeveelheden rastergegevens, zoals kaarten of klimaatgegevens.
  • De geografische positie van ERP-systeementiteiten (Enterprise Resource Planning) identificeren.
  • Entiteitslocatiegegevens combineren met GIS-referentiegegevens.
  • Het opslaan van IoT-telemetrie (Internet of Things) van het verplaatsen van apparaten.
  • Analytische georuimtelijke query's uitvoeren.
  • Gecureerde en contextuele georuimtelijke gegevens insluiten in web-apps.

Overwegingen

De volgende overwegingen, op basis van het Microsoft Azure Well-Architected Framework, zijn van toepassing op deze oplossing.

Beschikbaarheid

  • Event Hubs verspreidt het risico op fouten in clusters.

    • Gebruik een naamruimte met beschikbaarheidszones die zijn ingeschakeld om risico's te verspreiden over drie fysiek gescheiden faciliteiten.
    • Overweeg het gebruik van de functie voor geo-noodherstel van Event Hubs. Met deze functie wordt de volledige configuratie van een naamruimte gerepliceerd van een primaire naar een secundaire naamruimte.
  • Bekijk functies voor bedrijfscontinuïteit die Azure Database for PostgreSQL biedt. Deze functies hebben betrekking op een reeks hersteldoelstellingen.

  • Diagnostische gegevens van App Service geven u een waarschuwing over problemen in apps, zoals downtime. Gebruik deze service om problemen zoals storingen te identificeren, op te lossen en op te lossen.

  • Overweeg het gebruik van App Service om een back-up te maken van toepassingsbestanden. Maar wees voorzichtig met back-upbestanden, waaronder app-instellingen in tekst zonder opmaak. Deze instellingen kunnen geheimen bevatten, zoals verbindingsreeks s.

Schaalbaarheid

De implementatie van deze oplossing voldoet aan deze voorwaarden:

  • Verwerkt maximaal 10 miljoen gegevenssets per dag. De gegevenssets bevatten batchgebeurtenissen of streaminggebeurtenissen.
  • Slaat 100 miljoen gegevenssets op in een Azure Database for PostgreSQL-database.
  • Query's uitvoeren op 1 miljoen of minder gegevenssets tegelijk. Maximaal 30 gebruikers voeren de query's uit.

De omgeving maakt gebruik van deze configuratie:

  • Een Azure Databricks-cluster met vier F8s_V2 werkknooppunten.
  • Een voor geheugen geoptimaliseerd exemplaar van Azure Database for PostgreSQL.
  • Een App Service-plan met twee Standard S2-exemplaren.

Houd rekening met deze factoren om te bepalen welke aanpassingen u moet aanbrengen voor uw implementatie:

  • De opnamesnelheid van uw gegevens.
  • Uw hoeveelheid gegevens.
  • Het queryvolume.
  • Het aantal parallelle query's dat u moet ondersteunen.

U kunt Azure-onderdelen onafhankelijk schalen:

De functie voor automatisch schalen van Monitor biedt ook schaalfunctionaliteit. U kunt deze functie configureren om resources toe te voegen om de toename van de belasting af te handelen. Het kan ook resources verwijderen om geld te besparen.

Beveiliging

Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie Overzicht van de beveiligingspijler voor meer informatie.

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.

  • Als u de kosten voor het implementeren van deze oplossing wilt schatten, raadpleegt u een voorbeeld van een kostenprofiel. Dit profiel is bedoeld voor één implementatie van de omgeving die wordt beschreven in overwegingen voor schaalbaarheid. Dit omvat niet de kosten van Azure Data Explorer.
  • Als u de parameters wilt aanpassen en de kosten voor het uitvoeren van deze oplossing in uw omgeving wilt verkennen, gebruikt u de Azure-prijscalculator.

Bijdragers

Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.

Hoofdauteur:

Volgende stappen

Productdocumentatie:

Als u deze oplossing wilt implementeren, raadpleegt u deze informatie:

Informatie over het verwerken van georuimtelijke gegevens