Gegevensregister maken

Met de gegevensregisterservice kunt u gegevensinhoud registreren in een Azure Storage-account met uw Azure Maps-account. Een voorbeeld van gegevens kan een verzameling geofences zijn die worden gebruikt in de Azure Maps Geofencing-service. Een ander voorbeeld zijn ZIP-bestanden met TEKENpakketten (DWG) of GeoJSON-bestanden die Azure Maps Creator gebruikt om indoorkaarten te maken of bij te werken.

Vereisten

Belangrijk

  • In dit artikel wordt de us.atlas.microsoft.com geografische URL gebruikt. Als uw account niet is gemaakt in de Verenigde Staten, moet u een andere geografische URL gebruiken. Zie Toegang tot Creator-services voor meer informatie.
  • In de URL-voorbeelden in dit artikel moet u het volgende vervangen:

Registratie van gegevens in Azure Maps voorbereiden

Voordat u gegevens in Azure Maps kunt registreren, moet u een omgeving maken die alle vereiste onderdelen bevat. U hebt een opslagaccount nodig met een of meer containers die de bestanden bevatten die u wilt registreren en beheerde identiteiten voor verificatie. In deze sectie wordt uitgelegd hoe u uw Azure-omgeving voorbereidt om gegevens in Azure Maps te registreren.

Beheerde identiteiten maken

Er zijn twee typen beheerde identiteiten: door het systeem toegewezen en door de gebruiker toegewezen. Voor door het systeem toegewezen beheerde identiteiten is de levenscyclus gekoppeld aan de resource die ze heeft gemaakt. Door de gebruiker toegewezen beheerde identiteiten kunnen voor meerdere resources worden gebruikt. Zie Beheerde identiteiten voor Azure-resources voor meer informatie.

Gebruik de volgende stappen om een beheerde identiteit te maken en voeg deze toe aan uw Azure Maps-account.

Een door het systeem toegewezen beheerde identiteit maken:

  1. Ga naar uw Azure Maps-account in de Azure Portal.
  2. Selecteer Identiteit in het linkermenu.
  3. Zet de status op Aan.

Zie Beheerde identiteiten voor Azure-resources voor meer informatie.

Een container maken en gegevensbestanden uploaden

Voordat u bestanden toevoegt aan een gegevensregister, moet u ze uploaden naar een container in uw Azure-opslagaccount. Containers zijn vergelijkbaar met een map in een bestandssysteem. Ze zijn de manier waarop uw bestanden zijn georganiseerd in uw Azure-opslagaccount.

Voer de volgende stappen uit om een container te maken in de Azure Portal:

  1. Vanuit uw Azure-opslagaccount selecteert u Containers in de sectie Gegevensopslag in het navigatiedeelvenster.

  2. Selecteer + Container in het deelvenster Containers om het deelvenster Nieuwe container weer te geven.

  3. Selecteer Maken om de container te maken.

    Een schermopname van de nieuwe containerpagina in een Azure-opslagaccount.

    Zodra de container is gemaakt, kunt u er bestanden naar uploaden.

  4. Nadat de container is gemaakt, selecteert u deze.

    Een schermopname van de nieuwe container die zojuist is gemaakt in een Azure-opslagaccount.

  5. Selecteer Uploaden op de werkbalk en selecteer een of meer bestanden

  6. Selecteer de knop Uploaden.

    Een schermopname van de pagina blob uploaden bij het maken van een container.

Een gegevensarchief toevoegen

Nadat u een Azure-opslagaccount hebt gemaakt met bestanden die zijn geüpload naar een of meer containers, kunt u het gegevensarchief maken waarmee de opslagaccounts worden gekoppeld aan uw Azure Maps-account.

Belangrijk

Alle opslagaccounts die zijn gekoppeld aan een Azure Maps-account moeten zich op dezelfde geografische locatie bevinden. Zie geografisch bereik van Azure Maps service voor meer informatie.

Notitie

Als u geen opslagaccount hebt, raadpleegt u Een opslagaccount maken.

  1. Selecteer Gegevensarchief in het linkermenu in uw Azure Maps-account.

  2. Selecteer de knop Add. Het scherm Gegevensarchief toevoegen wordt aan de rechterkant weergegeven.

  3. Voer de gewenste gegevensarchief-id in en selecteer vervolgens de abonnementsnaam en het opslagaccount in de vervolgkeuzelijsten.

  4. Selecteer Toevoegen.

    Een schermopname van het scherm Gegevensarchief toevoegen.

Het nieuwe gegevensarchief wordt nu weergegeven in de lijst met gegevensarchieven.

Rollen toewijzen aan beheerde identiteiten en deze toevoegen aan het gegevensarchief

Zodra uw beheerde identiteiten en gegevensarchief zijn gemaakt, kunt u de beheerde identiteiten toevoegen aan het gegevensarchief en ze tegelijkertijd de rollen Inzender en Lezer voor opslagblobgegevens toewijzen. Hoewel het mogelijk is om rechtstreeks in uw beheerde identiteiten of opslagaccount rollen toe te voegen aan uw beheerde identiteiten of opslagaccount, wat u eenvoudig kunt doen terwijl u ze tegelijkertijd aan uw Azure Maps gegevensarchief rechtstreeks in het deelvenster Gegevensarchief kunt koppelen.

Notitie

Voor elke beheerde identiteit die aan het gegevensarchief is gekoppeld, moeten de rollen Inzender en Lezer van opslagblobgegevens worden verleend. Als u niet over de vereiste machtigingen beschikt om rollen toe te kennen aan beheerde identiteiten, raadpleegt u uw Azure-beheerder. Rollen toewijzen aan uw beheerde identiteiten en deze koppelen aan een gegevensarchief:

  1. Selecteer Gegevensarchief in het linkermenu in uw Azure Maps-account.

  2. Selecteer een of meer gegevensarchieven in de lijst en selecteer vervolgens Rollen toewijzen.

  3. Selecteer de beheerde identiteit die u wilt koppelen aan de geselecteerde gegevensopslag(en) in de vervolgkeuzelijst.

  4. Selecteer zowel Inzender als Lezer voor opslagblobgegevens in de vervolgkeuzelijst Rollen om toe te wijzen .

    Een schermopname van het scherm Rollen toewijzen aan gegevensarchief.

  5. Selecteer de knop Toewijzen .

Eigenschappen van gegevensregister

Met een gegevensarchief dat is gemaakt in uw Azure Maps-account, kunt u de eigenschappen verzamelen die nodig zijn om het gegevensregister te maken.

Er zijn de AzureBlob-eigenschappen die u doorgeeft in de hoofdtekst van de HTTP-aanvraag en De gebruikersgegevens-id die in de URL is doorgegeven.

De AzureBlob

De AzureBlob is een JSON-object dat de eigenschappen definieert die nodig zijn om het gegevensregister te maken.

Eigenschap Beschrijving
kind Definieert welk type object wordt geregistreerd. Momenteel is AzureBlob het enige type dat wordt ondersteund.
dataFormat De gegevensindeling van het bestand in blobUrl. De indeling kan GeoJSON zijn voor de ruimtelijke service of ZIP voor de conversieservice.
msiClientId De id van de beheerde identiteit die wordt gebruikt om het gegevensregister te maken.
linkedResource De id van het gegevensarchief dat is geregistreerd in het Azure Maps-account.
Het gegevensarchief bevat een koppeling naar het bestand dat wordt geregistreerd.
blobUrl Een URL die verwijst naar de locatie van de AzurebBlob, het bestand dat in uw container is geïmporteerd.

In de volgende twee secties vindt u meer informatie over het ophalen van de waarden die moeten worden gebruikt voor de eigenschappen msiClientId, blobUrl .

De eigenschap msiClientId

De msiClientId eigenschap is de id van de beheerde identiteit die wordt gebruikt om het gegevensregister te maken. Er zijn twee typen beheerde identiteiten: door het systeem toegewezen en door de gebruiker toegewezen. Voor door het systeem toegewezen beheerde identiteiten is de levenscyclus gekoppeld aan de resource die ze heeft gemaakt. Door de gebruiker toegewezen beheerde identiteiten kunnen voor meerdere resources worden gebruikt. Zie Beheerde identiteiten voor Azure-resources voor meer informatie.

Wanneer u door het systeem toegewezen beheerde identiteiten gebruikt, hoeft u geen waarde op te geven voor de msiClientId eigenschap. De gegevensregisterservice gebruikt automatisch de door het systeem toegewezen identiteit van het Azure Maps-account wanneer msiClientId null is.

De eigenschap blobUrl

De blobUrl eigenschap is het pad naar het bestand dat wordt geregistreerd. U kunt deze waarde ophalen uit de container waaraan deze is toegevoegd. gegevensregister

  1. Selecteer uw opslagaccount in de Azure Portal.

  2. Selecteer Containers in het linkermenu.

  3. Er wordt een lijst met containers weergegeven. Selecteer de container met het bestand dat u wilt registreren.

  4. De container wordt geopend, met een lijst met de bestanden die eerder zijn geüpload.

  5. Selecteer het gewenste bestand en kopieer de URL.

    Een schermopname die laat zien hoe u de URL selecteert die wordt gebruikt als de eigenschap blobUrl.

De id van de gebruikersgegevens

De gebruikersgegevens-id (udid) van het gegevensregister is een door de gebruiker gedefinieerde GUID die moet voldoen aan het volgende Regex-patroon:

^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$

Tip

De udid is een door de gebruiker gedefinieerde GUID die moet worden opgegeven bij het maken van een gegevensregister. Als u er zeker van wilt zijn dat u een GLOBALLY Unique Identifier (GUID) hebt, kunt u deze maken door een hulpprogramma voor het genereren van een GUID uit te voeren, zoals het opdrachtregelprogramma Guidgen.exe (beschikbaar met Visual Studio).

Een gegevensregister maken

Nu u uw opslagaccount met de gewenste bestanden hebt gekoppeld aan uw Azure Maps-account via het gegevensarchief en alle vereiste eigenschappen hebt verzameld, kunt u de gegevensregister-API gebruiken om deze bestanden te registreren. Als uw Azure Storage-account meerdere bestanden bevat die u wilt registreren, moet u de registratieaanvraag voor elk bestand (udid) uitvoeren.

Notitie

De maximale grootte van een bestand dat kan worden geregistreerd bij een Azure Maps gegevensarchief is één gigabyte.

Een gegevensregister maken:

  1. Geef de informatie op die nodig is om te verwijzen naar het opslagaccount dat wordt toegevoegd aan het gegevensregister in de hoofdtekst van uw HTTP-aanvraag. De informatie moet de JSON-indeling hebben en de volgende velden bevatten:

    {
    "kind": "AzureBlob",
        "azureBlob": {
            "dataFormat": "geojson",
            "linkedResource": "{datastore ID}",
            "blobUrl": "https://teststorageaccount.blob.core.windows.net/testcontainer/test.geojson"
        }
    }
    

    Notitie

    Wanneer u door het systeem toegewezen beheerde identiteiten gebruikt, krijgt u een fout als u een waarde opgeeft voor de eigenschap msiClientId in uw HTTP-aanvraag.

    Zie Gegevensregistereigenschappen voor meer informatie over de vereiste eigenschappen in de http-aanvraagbody.

  2. Zodra de hoofdtekst van uw HTTP-aanvraag gereed is, voert u de volgende HTTP PUT-aanvraag uit:

    https://us.atlas.microsoft.com/dataRegistries/{udid}?api-version=2023-06-01&subscription-key={Your-Azure-Maps-Subscription-key} 
    
    

    Zie De gebruikersgegevens-id voor meer informatie over de udid eigenschap.

  3. Kopieer de waarde van de sleutel Operation-Location uit de antwoordheader.

Tip

Als de inhoud van een eerder geregistreerd bestand wordt gewijzigd, mislukt de gegevensvalidatie en kan het niet worden gebruikt in Azure Maps totdat het opnieuw is geregistreerd. Als u een bestand opnieuw wilt registreren, voert u de registratieaanvraag opnieuw uit en geeft u dezelfde AzureBlob door die is gebruikt om de oorspronkelijke registratie te maken. De waarde van de sleutel Operation-Location is de status-URL die u gebruikt om de status van het maken van het gegevensregister te controleren in de volgende sectie. Deze bevat de bewerkings-id die wordt gebruikt door de Api voor bewerking ophalen .

Notitie

De waarde van de sleutel Operation-Location bevat niet de subscription-key. U moet deze toevoegen aan de aanvraag-URL wanneer u deze gebruikt om de status van het maken van het gegevensregister te controleren.

De status van het maken van het gegevensregister controleren

Als u (optioneel) de status van het proces voor het maken van het gegevensregister wilt controleren, voert u de status-URL in die u hebt gekopieerd in de sectie Een gegevensregister maken en voegt u uw abonnementssleutel toe als een queryreeksparameter. De aanvraag moet er ongeveer uitzien als de volgende URL:

https://us.atlas.microsoft.com/dataRegistries/operations/{udid}?api-version=2023-06-01&subscription-key={Your-Azure-Maps-Primary-Subscription-key}

Een lijst met alle bestanden in het gegevensregister ophalen

Gebruik de aanvraag Lijst om een lijst op te halen met alle bestanden die zijn geregistreerd in een Azure Maps-account:

https://us.atlas.microsoft.com/dataRegistries?api-version=2023-06-01&subscription-key={Azure-Maps-Subscription-key}

In het volgende voorbeeld ziet u drie mogelijke statussen: voltooid, actief en mislukt:

{
  "value": [
    {
      "udid": "f6495f62-94f8-0ec2-c252-45626f82fcb2",
      "description": "Contoso Indoor Design",
      "kind": "AzureBlob",
      "azureBlob": {
        "dataFormat": "zip",
        "msiClientId": "3263cad5-ed8b-4829-b72b-3d1ba556e373",
        "linkedResource": "my-storage-account",
        "blobUrl": "https://mystorageaccount.blob.core.windows.net/my-container/my/blob/path1.zip",
        "sizeInBytes": 29920,
        "contentMD5": "CsFxZ2YSfxw3cRPlqokV0w=="
      },
      "status": "Completed"
    },
    {
      "udid": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c",
      "kind": "AzureBlob",
      "azureBlob": {
        "dataFormat": "geojson",
        "msiClientId": "3263cad5-ed8b-4829-b72b-3d1ba556e373",
        "linkedResource": "my-storage-account",
        "blobUrl": "https://mystorageaccount.blob.core.windows.net/my-container/my/blob/path2.geojson",
        "sizeInBytes": 1339
      },
      "status": "Running"
    },
    {
      "udid": "7c1288fa-2058-4a1b-b68f-13a6h5af7d7c",
      "description": "Contoso Geofence GeoJSON",
      "kind": "AzureBlob",
      "azureBlob": {
        "dataFormat": "geojson",
        "linkedResource": "my-storage-account",
        "blobUrl": "https://mystorageaccount.blob.core.windows.net/my-container/my/blob/path3.geojson",
        "sizeInBytes": 1650,
        "contentMD5": "rYpEfIeLbWZPyaICGEGy3A=="
      },
      "status": "Failed",
      "error": {
        "code": "ContentMD5Mismatch",
        "message": "Actual content MD5: sOJMJvFParkSxBsvvrPOMQ== doesn't match expected content MD5: CsFxZ2YSfxw3cRPlqokV0w==."
      }
    }
  ]
}

De gegevens die worden geretourneerd bij het uitvoeren van de lijstaanvraag, zijn vergelijkbaar met de gegevens die zijn opgegeven bij het maken van een register, met enkele toevoegingen:

property beschrijving
contentMD5 MD5-hash gemaakt op basis van de inhoud van het bestand dat wordt geregistreerd. Zie Gegevensvalidatie voor meer informatie
sizeInBytes De grootte van de inhoud in bytes.

Een gegevensregister vervangen

Als u een eerder geregistreerd bestand wilt vervangen door een ander bestand, voert u de registratieaanvraag opnieuw uit en geeft u dezelfde AzureBlob door die is gebruikt om de oorspronkelijke registratie te maken, met uitzondering van de blobUrl. De BlobUrl moet worden gewijzigd om naar het nieuwe bestand te verwijzen.

Gegevensvalidatie

Wanneer u een bestand registreert in Azure Maps met behulp van de gegevensregister-API, wordt er een MD5-hash gemaakt op basis van de inhoud van het bestand, waarbij het wordt gecodeerd in een 128-bits vingerafdruk en deze opslaat in de AzureBlob als de contentMD5 eigenschap. De MD5-hash die is opgeslagen in de contentMD5 eigenschap, wordt gebruikt om de gegevensintegriteit van het bestand te garanderen. Omdat het MD5-hash-algoritme altijd dezelfde uitvoer produceert op basis van dezelfde invoer, kan het gegevensvalidatieproces de contentMD5 eigenschap van het bestand vergelijken met een hash van het bestand in het Azure-opslagaccount om te controleren of het intact en ongewijzigd is. Als de hash niet hetzelfde is, mislukt de validatie. Als het bestand in het onderliggende opslagaccount wordt gewijzigd, mislukt de validatie. Als u de inhoud wilt wijzigen van een bestand dat is geregistreerd in Azure Maps, moet u het opnieuw registreren.