Delen via


Blob-indextags gebruiken om gegevens te beheren en te zoeken met Java

In dit artikel wordt beschreven hoe u blobindextags gebruikt om gegevens te beheren en te vinden met behulp van de Azure Storage-clientbibliotheek voor Java.

Vereisten

  • In dit artikel wordt ervan uitgegaan dat u al een project hebt ingesteld voor gebruik met de Azure Blob Storage-clientbibliotheek voor Java. Zie Aan de slag met Azure Storage en Java voor meer informatie over het instellen van uw project, inclusief pakketinstallatie, het toevoegen van import instructies en het maken van een geautoriseerd clientobject.
  • Het autorisatiemechanisme moet machtigingen hebben om te kunnen werken met blobindextags. Zie de autorisatierichtlijnen voor de volgende REST API-bewerkingen voor meer informatie:

Over blob-indextags

Blob-indextags categoriseren gegevens in uw opslagaccount met behulp van tagkenmerken met sleutelwaarde. Deze tags worden automatisch geïndexeerd en weergegeven als doorzoekbare multidimensionale index om eenvoudig gegevens te vinden. In dit artikel leest u hoe u gegevens kunt instellen, ophalen en zoeken met behulp van blob-indextags.

Blob-indextags worden niet ondersteund voor opslagaccounts waarvoor hiërarchische naamruimte is ingeschakeld. Zie Azure Blob-gegevens beheren en vinden met blob-indextagtags voor meer informatie over de functie voor de blob-index, samen met bekende problemen en beperkingen.

Tags instellen

U kunt indextags instellen als uw code geautoriseerde toegang heeft tot blobgegevens via een van de volgende mechanismen:

Zie Blobindextags instellen voor meer informatie.

U kunt tags instellen met behulp van de volgende methode:

De opgegeven tags in deze methode vervangen bestaande tags. Als oude waarden moeten worden bewaard, moeten ze worden gedownload en opgenomen in de aanroep van deze methode. In het volgende voorbeeld ziet u hoe u tags instelt:

public void setBlobTags(BlobClient blobClient) {
    // Get any existing tags for the blob if they need to be preserved
    Map<String, String> tags = blobClient.getTags();

    // Add or modify tags
    tags.put("Sealed", "false");
    tags.put("Content", "image");
    tags.put("Date", "2022-01-01");

    // setTags will replace existing tags with the map entries we pass in
    blobClient.setTags(tags);
}

U kunt alle tags verwijderen door een leeg Map object door te geven aan de setTags methode:

public void clearBlobTags(BlobClient blobClient) {
    Map<String, String> tags = new HashMap<String, String>();
    blobClient.setTags(tags);
}

Tags ophalen

U kunt indextags ophalen als uw code geautoriseerde toegang heeft tot blobgegevens via een van de volgende mechanismen:

Zie Blob-indextags ophalen en vermelden voor meer informatie.

U kunt tags ophalen met behulp van de volgende methode:

In het volgende voorbeeld ziet u hoe u de tags van de blob kunt ophalen en herhalen:

public void getBlobTags(BlobClient blobClient) {
    Map<String, String> tags = blobClient.getTags();

    System.out.println("Blob tags:");
    for (Map.Entry<String, String> entry : tags.entrySet())
        System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
}

Gegevens filteren en zoeken met blobindextags

U kunt indextags gebruiken om gegevens te zoeken en te filteren als uw code geautoriseerde toegang heeft tot blobgegevens via een van de volgende mechanismen:

Zie Gegevens zoeken met behulp van blobindextags voor meer informatie.

Notitie

U kunt geen indextags gebruiken om eerdere versies op te halen. Tags voor eerdere versies worden niet doorgegeven aan de blob-indexengine. Zie Voorwaarden en bekende problemen voor meer informatie.

U kunt gegevens vinden met behulp van de volgende methode:

In het volgende voorbeeld worden alle blobs gevonden die zijn getagd als een afbeelding:

public void findBlobsByTag(BlobContainerClient blobContainerClient) {
    String query = "\"Content\"='image'";

    blobContainerClient.findBlobsByTags(query)
            .forEach(blob -> System.out.printf("Name: %s%n", blob.getName()));
}

Resources

Zie de volgende resources voor meer informatie over het gebruik van indextags voor het beheren en vinden van gegevens met behulp van de Azure Blob Storage-clientbibliotheek voor Java.

REST API-bewerkingen

De Azure SDK voor Java bevat bibliotheken die zijn gebaseerd op de Azure REST API, zodat u kunt communiceren met REST API-bewerkingen via bekende Java-paradigma's. De clientbibliotheekmethoden voor het beheren en gebruiken van blobindextags gebruiken de volgende REST API-bewerkingen:

Codevoorbeelden

Clientbibliotheekbronnen

Zie ook