Postup vytvoření registru dat
Služba registru dat umožňuje registrovat datový obsah v účtu služby Azure Storage pomocí účtu Azure Maps. Příkladem dat může být kolekce geofences používaných ve službě Azure Maps Geofencing. Dalším příkladem jsou soubory ZIP obsahující balíčky výkresů (DWG) nebo soubory GeoJSON, které Azure Maps Creator používá k vytváření nebo aktualizaci vnitřních map.
Požadavky
Důležité
- Tento článek používá geografickou
us.atlas.microsoft.com
adresu URL. Pokud váš účet nebyl vytvořen v USA, musíte použít jinou geografickou adresu URL. Další informace najdete v tématu Přístup ke službám Creator. - V příkladech adres URL v tomto článku budete muset nahradit:
{Azure-Maps-Subscription-key}
s klíčem předplatného Azure Maps.{udid}
s ID uživatelských dat vašeho registru dat. Další informace najdete v tématu ID uživatelských dat.
Příprava registrace dat v Azure Maps
Než budete moct registrovat data v Azure Maps, musíte vytvořit prostředí obsahující všechny požadované komponenty. Potřebujete účet úložiště s jedním nebo více kontejnery, které obsahují soubory, které chcete zaregistrovat, a spravované identity pro ověřování. Tato část vysvětluje, jak připravit prostředí Azure na registraci dat v Azure Maps.
Vytváření spravovaných identit
Existují dva typy spravovaných identit: přiřazené systémem a uživatelem. Spravované identity přiřazené systémem mají svůj životní cyklus svázaný s prostředkem, který je vytvořil. Spravované identity přiřazené uživatelem je možné použít pro více prostředků. Další informace najdete v tématu Spravované identity pro prostředky Azure.
Pomocí následujícího postupu vytvořte spravovanou identitu a přidejte ji do účtu Azure Maps.
Vytvořte spravovanou identitu přiřazenou systémem:
- V Azure Portal přejděte na svůj účet Azure Maps.
- V nabídce vlevo vyberte Identita .
- Přepněte stav na Zapnuto.
Další informace najdete v tématu Spravované identity pro prostředky Azure.
Vytvoření kontejneru a nahrání datových souborů
Před přidáním souborů do registru dat je nutné je nahrát do kontejneru v účtu úložiště Azure. Kontejnery se podobají adresáři v systému souborů. Jsou to způsob, jakým jsou vaše soubory uspořádané ve vašem účtu úložiště Azure.
Pokud chcete vytvořit kontejner v Azure Portal, postupujte takto:
V rámci účtu úložiště Azure vyberte Kontejnery v části Úložiště dat v navigačním podokně.
Výběrem možnosti + Kontejner v podokně Kontejnery otevřete podokno Nový kontejner .
Výběrem možnosti Vytvořit vytvořte kontejner.
Po vytvoření kontejneru do něj můžete nahrát soubory.
Po vytvoření kontejneru ho vyberte.
Na panelu nástrojů vyberte Nahrát a vyberte jeden nebo více souborů.
Vyberte tlačítko Nahrát.
Přidání úložiště dat
Jakmile vytvoříte účet úložiště Azure se soubory nahranými do jednoho nebo více kontejnerů, můžete vytvořit úložiště dat, které propojí účty úložiště s vaším účtem Azure Maps.
Důležité
Všechny účty úložiště propojené s účtem Azure Maps musí být ve stejném zeměpisném umístění. Další informace najdete v tématu o geografickém rozsahu služby Azure Maps.
Poznámka
Pokud účet úložiště nemáte, přečtěte si téma Vytvoření účtu úložiště.
V nabídce vlevo v účtu Azure Maps vyberte Úložiště dat.
Vyberte tlačítko Přidat . Na pravé straně se zobrazí obrazovka Přidat úložiště dat .
Zadejte požadované ID úložiště dat a v rozevíracích seznamech vyberte Název předplatného a Účet úložiště .
Vyberte Přidat.
Nové úložiště dat se teď zobrazí v seznamu úložišť dat.
Přiřazení rolí spravovaným identitám a jejich přidání do úložiště dat
Po vytvoření spravovaných identit a úložiště dat můžete do úložiště dat přidat spravované identity a současně jim přiřadit role Přispěvatel a Čtenář dat objektů blob služby Storage . Ke spravovaným identitám je možné přidávat role přímo ve spravovaných identitách nebo účtu úložiště, což můžete snadno udělat a současně je přidružovat k Azure Maps úložiště dat přímo v podokně úložiště dat.
Poznámka
Každá spravovaná identita přidružená k úložišti dat bude potřebovat udělené role Přispěvatel a Čtenář dat objektů blob služby Storage . Pokud nemáte požadovaná oprávnění k udělení rolí spravovaným identitám, obraťte se na správce Azure. Přiřazení rolí spravovaným identitám a jejich přidružení k úložišti dat:
V nabídce vlevo v účtu Azure Maps vyberte Úložiště dat.
V seznamu vyberte jedno nebo více úložišť dat a pak přiřaďte role.
V rozevíracím seznamu vyberte spravovanou identitu , kterou chcete přidružit k vybraným úložištím dat.
V rozevíracím seznamu Role k přiřazení vyberte Přispěvatel i Čtenář dat objektů blob služby Storage.
Vyberte tlačítko Přiřadit .
Vlastnosti registru dat
S úložištěm dat vytvořeným v účtu Azure Maps jste připraveni shromáždit vlastnosti potřebné k vytvoření registru dat.
Existují vlastnosti AzureBlob, které předáte v těle požadavku HTTP, a ID uživatelských dat předané v adrese URL.
The AzureBlob
Je AzureBlob
objekt JSON, který definuje vlastnosti potřebné k vytvoření registru dat.
Vlastnost | Popis |
---|---|
kind |
Definuje typ zaregistrovaného objektu. V současné době je AzureBlob jediným druhem, který se podporuje. |
dataFormat |
Datový formát souboru umístěného v objektu blobUrl. Jeho formát může být Buď GeoJSON pro prostorovou službu, nebo ZIP pro službu převodu. |
msiClientId |
ID spravované identity, která se používá k vytvoření registru dat. |
linkedResource |
ID úložiště dat zaregistrovaného v účtu Azure Maps. Úložiště dat obsahuje odkaz na zaregistrovaný soubor. |
blobUrl |
Adresa URL odkazující na umístění AzurebBlobu, souboru importovaného do kontejneru. |
Následující dvě části poskytují podrobnosti o tom, jak získat hodnoty, které se mají použít pro vlastnosti msiClientIda blobUrl .
Vlastnost msiClientId
Vlastnost msiClientId
je ID spravované identity použité k vytvoření registru dat. Existují dva typy spravovaných identit: přiřazené systémem a uživatelem. Spravované identity přiřazené systémem mají svůj životní cyklus svázaný s prostředkem, který je vytvořil. Spravované identity přiřazené uživatelem je možné použít pro více prostředků. Další informace najdete v tématu Spravované identity pro prostředky Azure.
Pokud používáte spravované identity přiřazené systémem, nemusíte zadávat hodnotu vlastnosti msiClientId
. Služba registru dat automaticky používá identitu přiřazenou systémem účtu Azure Maps, pokud msiClientId
má hodnotu null.
Vlastnost blobUrl
Vlastnost blobUrl
je cesta k registrovanému souboru. Tuto hodnotu můžete získat z kontejneru, do kterého byla přidána. registr dat
V Azure Portal vyberte svůj účet úložiště.
V nabídce vlevo vyberte Kontejnery .
Zobrazí se seznam kontejnerů. Vyberte kontejner obsahující soubor, který chcete zaregistrovat.
Otevře se kontejner se seznamem dříve nahraných souborů.
Vyberte požadovaný soubor a zkopírujte adresu URL.
ID dat uživatele
ID dat uživatele (udid
) registru dat je uživatelem definovaný identifikátor GUID, který musí odpovídat následujícímu vzoru Regex:
^[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
Jedná se udid
o uživatelem definovaný identifikátor GUID, který se musí zadat při vytváření registru dat. Pokud si chcete být jistí, že máte globálně jedinečný identifikátor (GUID), zvažte jeho vytvoření spuštěním nástroje pro generování GUID, jako je Guidgen.exe program příkazového řádku (k dispozici v sadě Visual Studio).
Vytvoření registru dat
Teď, když máte účet úložiště s požadovanými soubory propojenými s účtem Azure Maps prostřednictvím úložiště dat a shromáždili jste všechny požadované vlastnosti, jste připraveni k registraci těchto souborů použít rozhraní API registru dat. Pokud máte v účtu úložiště Azure více souborů, které chcete zaregistrovat, musíte spustit žádost o registraci pro každý soubor (udid
).
Poznámka
Maximální velikost souboru, který lze zaregistrovat v úložišti dat Azure Maps, je jeden gigabajt.
Vytvoření registru dat:
Zadejte informace potřebné k odkazování na účet úložiště, který se přidává do registru dat v textu požadavku HTTP. Informace musí být ve formátu JSON a musí obsahovat následující pole:
{ "kind": "AzureBlob", "azureBlob": { "dataFormat": "geojson", "linkedResource": "{datastore ID}", "blobUrl": "https://teststorageaccount.blob.core.windows.net/testcontainer/test.geojson" } }
Poznámka
Při použití spravovaných identit přiřazených systémem se zobrazí chyba, pokud v požadavku HTTP zadáte hodnotu vlastnosti msiClientId.
Další informace o vlastnostech požadovaných v textu požadavku HTTP najdete v tématu Vlastnosti registru dat.
Jakmile budete mít připravený text požadavku HTTP, spusťte následující požadavek HTTP PUT:
https://us.atlas.microsoft.com/dataRegistries/{udid}?api-version=2023-06-01&subscription-key={Your-Azure-Maps-Subscription-key}
Další informace o vlastnosti najdete v
udid
tématu ID uživatelských dat.Zkopírujte hodnotu klíče Operation-Location z hlavičky odpovědi.
Tip
Pokud se obsah dříve zaregistrovaného souboru změní, ověření dat se nezdaří a nebude možné ho použít v Azure Maps, dokud se znovu nezaregistruje. Pokud chcete znovu zaregistrovat soubor, spusťte znovu žádost o registraci a předáte stejnou službu AzureBlob , která se použila k vytvoření původní registrace. Hodnota klíče Operation-Location je adresa URL stavu, kterou použijete ke kontrole stavu vytvoření registru dat v další části. Obsahuje ID operace používané rozhraním API operace Get .
Poznámka
Hodnota klíče Operation-Location nebude obsahovat subscription-key
hodnotu , budete ji muset přidat do adresy URL požadavku, když ji použijete ke kontrole stavu vytváření registru dat.
Kontrola stavu vytváření registru dat
Pokud chcete (volitelně) zkontrolovat stav procesu vytváření registru dat, zadejte adresu URL stavu, kterou jste zkopírovali v části Vytvoření registru dat , a přidejte klíč předplatného jako parametr řetězce dotazu. Požadavek by měl vypadat podobně jako následující adresa URL:
https://us.atlas.microsoft.com/dataRegistries/operations/{udid}?api-version=2023-06-01&subscription-key={Your-Azure-Maps-Primary-Subscription-key}
Získání seznamu všech souborů v registru dat
Pomocí žádosti o seznam získáte seznam všech souborů zaregistrovaných v účtu Azure Maps:
https://us.atlas.microsoft.com/dataRegistries?api-version=2023-06-01&subscription-key={Azure-Maps-Subscription-key}
Následující ukázka ukazuje tři možné stavy: Dokončeno, Spuštěno a Selhání:
{
"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==."
}
}
]
}
Data vrácená při spuštění žádosti o seznam jsou podobná datům zadaným při vytváření registru s několika doplňky:
property | description |
---|---|
contentMD5 | Hodnota hash MD5 vytvořená z obsahu zaregistrovaného souboru. Další informace najdete v tématu Ověření dat. |
sizeInBytes | Velikost obsahu v bajtech. |
Nahrazení registru dat
Pokud potřebujete nahradit dříve zaregistrovaný soubor jiným souborem, znovu spusťte žádost o registraci a předáte stejnou službu AzureBlob , kterou jste použili k vytvoření původní registrace, s výjimkou objektu blobUrl. Musí BlobUrl
se upravit tak, aby odkazovaly na nový soubor.
Ověřování dat
Když zaregistrujete soubor v Azure Maps pomocí rozhraní API registru dat, vytvoří se z obsahu souboru hodnota hash MD5, která ji zakóduje do 128bitového otisku prstu a uloží ji do AzureBlob
contentMD5
vlastnosti . Hodnota hash MD5 uložená contentMD5
ve vlastnosti se používá k zajištění integrity dat souboru. Vzhledem k tomu, že hashovací algoritmus MD5 vždy vytváří stejný výstup se stejným vstupem, může proces ověření dat porovnat contentMD5
vlastnost souboru, který byl zaregistrován, s hodnotou hash souboru v účtu úložiště Azure a zkontrolovat, jestli je soubor neporušený a neupravený. Pokud hodnota hash není stejná, ověření se nezdaří. Pokud se soubor v podkladovém účtu úložiště změní, ověření se nezdaří. Pokud potřebujete upravit obsah souboru zaregistrovaného v Azure Maps, musíte ho znovu zaregistrovat.