Azure-tabellen verkennen

Voltooid

Azure Table Storage is een NoSQL-opslagoplossing die gebruikmaakt van tabellen die sleutel-waardegegevensitems bevatten. Elk item wordt vertegenwoordigd door een rij die kolommen bevat voor de gegevensvelden die moeten worden opgeslagen.

Diagram van een Azure-opslagaccount met Azure-tabellen.

U hoeft echter niet te denken dat een Azure Table Storage-tabel lijkt op een tabel in een relationele database. Met een Azure-tabel kunt u semi-gestructureerde gegevens opslaan. Alle rijen in een tabel moeten een unieke sleutel hebben (samengesteld uit een partitiesleutel en een rijsleutel), en wanneer u gegevens in een tabel wijzigt, wordt in een tijdstempelkolom de datum en tijd vastgelegd waarop de wijziging is aangebracht, maar anders kunnen de kolommen in elke rij variëren. Azure Table Storage-tabellen hebben geen concept van refererende sleutels, relaties, opgeslagen procedures, weergaven of andere objecten die u in een relationele database kunt vinden. Gegevens in Azure Table Storage worden meestal gedenormaliseerd, waarbij elke rij de volledige gegevens voor een logische entiteit bevat. Een tabel met klantgegevens kan bijvoorbeeld de voornaam, achternaam, een of meer telefoonnummers en een of meer adressen voor elke klant opslaan. Het aantal velden in elke rij kan verschillen, afhankelijk van het aantal telefoonnummers en adressen voor elke klant, en de gegevens die voor elk adres worden vastgelegd. In een relationele database zou deze informatie worden opgesplitst over meerdere rijen in verschillende tabellen.

Azure Table Storage splitst een tabel op in partities om snelle toegang te bieden. Partitionering is een mechanisme voor het groeperen van gerelateerde rijen, op basis van een gemeenschappelijke eigenschap of partitiesleutel. Rijen met dezelfde partitiesleutel worden samen opgeslagen. Partitionering helpt niet alleen bij het organiseren van gegevens, maar kan ook de schaalbaarheid en prestaties op de volgende manieren verbeteren:

  • Partities zijn onafhankelijk van elkaar en kunnen worden vergroot of verkleind wanneer rijen worden toegevoegd aan of verwijderd uit een partitie. Een tabel kan een willekeurig aantal partities bevatten.

  • Wanneer u gegevens zoekt, kunt u de partitiesleutel aan de zoekcriteria toevoegen. Dit helpt bij het beperken van het aantal gegevens dat moet worden onderzocht en verbetert de prestaties door de hoeveelheid I/O (invoer- en uitvoerbewerkingen, of lees- en schrijfbewerkingen) te verminderen die nodig is om de gegevens te vinden.

De sleutel in een Azure Table Storage-tabel bestaat uit twee elementen; de partitiesleutel die de partitie met de rij identificeert en een rijsleutel die uniek is voor elke rij in dezelfde partitie. Items in dezelfde partitie worden opgeslagen in de volgorde van de rijsleutel. Als een toepassing een nieuwe rij aan een tabel toevoegt, zorgt Azure ervoor dat de rij op de juiste positie in de tabel wordt geplaatst. Met dit schema kan een toepassing snel puntquery's uitvoeren die één rij identificeren en bereikquery's waarmee een aaneengesloten blok rijen in een partitie wordt opgehaald.