Delen via


Elastische tabellen maken en bewerken

Een elastische tabel is een tabel die wordt beheerd door Microsoft Dataverse. Elastische tabellen worden geleverd met dezelfde vertrouwde gebruikerservaring en API die worden aangeboden met standaardtabellen. Ze delen veel aspecten en opties met standaardtabellen, maar hebben hun eigen unieke functies en mogelijkheden die mogelijk worden gemaakt door Azure Cosmos DB.

Net als bij standaardtabellen worden elastische tabellen meegenomen bij uw gebruik van Dataverse-databasecapaciteit.

Bekijk deze video om meer te weten te komen over elastische tabellen.

Wanneer is het zinvol elastische Dataverse-tabellen te overwegen?

Elastische tabellen zijn ontworpen om grote hoeveelheden gegevens in realtime te verwerken. Met elastische tabellen kunt u grote hoeveelheden gegevens importeren, opslaan en analyseren zonder problemen met schaalbaarheid, latentie of prestaties.

Elastische tabellen hebben unieke mogelijkheden voor flexibele schema´s, horizontaal schalen en automatische verwijdering van gegevens na een bepaalde periode.

Elastische tabellen worden automatisch geschaald om elk uur tientallen miljoenen rijen op te nemen. Achtergrondprocessen kunnen de IoT-signalen verzamelen, onderhoudsvereisten voorspellen en proactief technici inplannen.

Overweeg een scenario waarin Contoso een detailhandelaar is met miljoenen bestaande klanten. Contoso heeft een grote database met klanten en wil de verkoop verhogen terwijl klanten behouden blijven. Op basis van eerdere klantgeschiedenis willen ze 24-uurs flitsaanbiedingsevenementen organiseren met verschillende coupons gericht op hun klanten en producten. Ze schatten dat het aantal benodigde coupons meer dan 100 miljoen per flitsaanbiedingscampagne zal bedragen. Marketing is van plan meerdere 24-uurscampagnes uit te voeren die gericht zijn op verschillende klantsegmenten.

De vereiste voor de marketingtoepassing van Contoso is dat deze binnen een paar uur tot 100 miljoen of meer coupongegevens moet kunnen opnemen, miljoenen coupons per uur kan lezen en coupons naar klanten kan verzenden.

Elastische tabellen worden automatisch geschaald voor dit scenario met hoge doorvoer.

In het bovenstaande scenario kan bijvoorbeeld een elastische tabel met de naam Coupon met miljoenen records worden gekoppeld aan Dataverse-standaardtabellen zoals Contact (klantgegevens) en Aanbod (een aangepaste standaardtabel). Aangezien de elastische tabellen geïsoleerd zijn van de standaardtabellen, worden de prestaties voor de algehele marketingtoepassing niet negatief beïnvloed. Bovendien maakt de time-to-live-mogelijkheid met elastische tabel (coupon in dit scenario) het automatisch verwijderen van gegevens na vaste perioden mogelijk en zorgt voor optimalisatie van de opslagcapaciteit.

Gebruik elastische tabellen in de volgende gevallen:

  • Als uw gegevens mogelijk ongestructureerd of semi-gestructureerd zijn of als uw gegevensmodel voortdurend kan veranderen.
  • Als u automatisch horizontaal schalen nodig hebt.
  • Als u een groot aantal lees- en schrijfaanvragen moet afhandelen.

Gebruik standaardtabellen in de volgende gevallen:

  • Uw toepassing vereist een sterke consistentie.
  • Uw toepassing vereist relationele modellering en transactiemogelijkheden voor alle tabellen en tijdens de uitvoeringsfasen van de invoegtoepassing.
  • Uw toepassing vereist complexe joins.

De keuze van de tafel moet zijn gebaseerd op de specifieke behoeften van uw toepassing. Een combinatie van beide typen tabellen kan geschikt zijn.

Horizontaal schalen en prestaties

Naarmate uw bedrijfsgegevens groeien, bieden elastische tabellen onbeperkte automatische schaalbaarheid op basis van uw toepassingswerklast, zowel voor opslaggrootte als doorvoer, zoals het aantal records dat in een bepaald tijdsbestek is gemaakt, bijgewerkt of verwijderd.

Als uw bedrijfsscenario een zeer groot volume aan gegevensschrijfbewerkingen vereist, kunnen toepassingsmakers gebruikmaken van Dataverse-API's voor meerdere aanvragen, zoals CreateMultiple, UpdateMultiple en DeleteMultiple, om meer doorvoer te bereiken binnen Dataverse-beperkingslimieten. Meer informatie: Handleiding voor ontwikkelaars: berichten over bulkbewerkingen en Prestaties optimaliseren voor bulkbewerkingen

Automatische verwijdering van gegevens

Time to live-beleid (TTL) zorgt ervoor dat u altijd werkt met de meest actuele en nauwkeurige informatie, terwijl u resources optimaliseert en risico's verkleint. De TTL-waarde wordt ingesteld in seconden op een record en wordt geïnterpreteerd als een verschil vanaf het moment dat een record voor het laatst is gewijzigd.

Flexibel schema met JSON-kolommen

Met elastische tabellen kunt u gegevens met verschillende structuren opslaan en opvragen, zonder dat vooraf gedefinieerde schema's of migraties nodig zijn. Het is niet nodig om aangepaste code te schrijven om de geïmporteerde gegevens toe te wijzen aan een vast schema. Meer informatie: Handleiding voor ontwikkelaars: JSON-kolommen in elastische tabellen opvragen Met elastische tabellen kunt u gegevens met verschillende structuren opslaan en opvragen, zonder dat u vooraf gedefinieerde schema's of migraties nodig hebt. Het is niet nodig om aangepaste code te schrijven om de geïmporteerde gegevens toe te wijzen aan een vast schema. Meer informatie: Ontwikkelaarshandleiding: JSON-kolommen in elastische tabellen opvragen

Overwegingen als u elastische tabellen gebruikt

Hoewel elastische tabellen uitstekend geschikt zijn voor het op grote schaal afhandelen van grote hoeveelheden aanvragen, zijn er enkele nadelen verbonden aan de voordelen, waarmee u rekening moet houden:

  • Elastische tabellen ondersteunen geen transacties met meerdere records. Dit betekent dat meerdere schrijfbewerkingen die plaatsvinden als onderdeel van de uitvoering van één aanvraag, niet transactioneel met elkaar zijn. Als u bijvoorbeeld een synchrone invoegtoepassingsstap hebt geregistreerd in de PostOperation-fase voor Create message in een elastische tabel, wordt met geen enkele fout in uw invoegtoepassing de gemaakte record in Dataverse ongedaan gemaakt. Validaties in pre-invoegtoepassingen werken nog steeds zoals verwacht, aangezien ze vóór de hoofdfase worden uitgevoerd.
  • Elastische tabellen ondersteunen alleen sterke consistentie binnen een logische sessie. Buiten de sessiecontext ziet u mogelijk niet onmiddellijk wijzigingen in een rij. Meer informatie: Ontwikkelaarshandleiding: Consistentieniveau
  • Elastische tabellen bieden geen ondersteuning voor filters in gerelateerde tabellen bij het maken van weergaven, geavanceerd zoeken of een query in het algemeen met behulp van API. Als u vaak op gerelateerde tabelkolommen moet filteren, raden we u aan kolommen van gerelateerde tabellen te denormaliseren, die moeten worden gefilterd in de hoofdtabel zelf. Denk aan een winkelier met twee elastische tabellen: klant en adres. Een klant heeft veel adressen. U wilt queryresultaten retourneren voor alle klanten uit de klantentabel waarvan de plaatswaarde in de adrestabel New York is. In dit voorbeeld wilt u bij het doorzoeken van de klantentabel een filter toepassen op de plaatskolom van de gerelateerde adrestabel. Dit wordt niet ondersteund voor elastische tabellen. Een manier om dit te laten werken, is door de plaatskolom te denormaliseren in de klantentabel, zodat alle plaatswaarden van klanten aanwezig zijn in de klantentabel zelf.

Ondersteuning van de functie voor elastische tabellen

  • Bewerkingen voor maken, ophalen, bijwerken, verwijderen (CRUD), waaronder meerdere API-bewerkingen (voor hoge doorvoer), bulkverwijdering en verzoeken van invoegtoepassingen.
  • Relaties:
    • Eén-op-veel
    • Veel-op-een wanneer de N-tabel een standaardtabel is
  • Eigendom vastleggen, wijzigingen bijhouden, controle, mobiel offline en zoeken in Dataverse.
  • Bestandskolom met bestandstypekenmerk

Ondersteuning van beveiligingsfuncties

Elastische tabellen voldoen aan het Dataverse-beveiligingsmodel.

Bij het maken van een elastische tabel kunt u het volgende instellen:

  • Eigendom van gebruiker of organisatie
  • Beveiliging op veldniveau

Functies die momenteel niet worden ondersteund met elastische tabellen

Tabelfuncties die momenteel niet worden ondersteund met elastische tabellen:

  • Bedrijfsregels
  • Grafieken
  • Bedrijfsprocesstromen
  • Eén Dataverse-connector voor Power BI
  • Veel-op-veel-relaties (N:N) relaties met standaardtabellen
  • Alternatieve sleutel
  • Duplicaatdetectie
  • Berekende en samengetelde kolommen
  • Valutakolommen
  • Kolomvergelijking in query's
  • Delen van tabellen
  • Samengestelde indexen
  • Trapsgewijze bewerkingen: Verwijderen, Nieuw bovenliggend element instellen, Toewijzen, Delen, Delen ongedaan maken
  • Ordenen in opzoekkolommen
  • Geaggregeerde query´s:
    • Afzonderlijke waarde van attribute1 terwijl Ordenen op is ingesteld op waarde attribute2
    • Paginering bij meerdere afzonderlijke waarden
    • Afzonderlijke waarde met meerdere Ordenen op
    • Ordenen op en Groeperen op samen
    • Groeperen op koppelingsentiteit (linker outer join)
    • Afzonderlijke waarden in tabellen in eigendom van gebruiker 
  • Tabelverbindingen
  • Toegangsteams
  • Wachtrijen
  • Bijlage

Kolomgegevenstypen die momenteel niet beschikbaar zijn met elastische tabellen:

  • Valuta
  • Formule
  • Gehele getalnotatie anders dan Geen (duur, taalcode en tijdzone)
  • Opzoeken op basis van de optie Klant

Een elastische tabel maken

U maakt een elastische tabel net als elke andere nieuwe tabel in Dataverse.

  1. Meld u aan bij Power Apps en selecteer Tabellen in het linkernavigatievenster. Als het item zich niet in het deelvenster van het zijpaneel bevindt, selecteert u …Meer en selecteert u vervolgens het gewenste item.
  2. Selecteer op de opdrachtbalk Nieuwe tabel > Geavanceerde eigenschappen instellen.
  3. Voer in het rechtereigenschappenvenster een weergavenaam en een meervoudsnaam in.
  4. Vouw Geavanceerde opties uit en selecteer vervolgens Elastisch als het type Tabel. Selecteer Elastisch als het Type voor tabel
  5. Selecteer de gewenste eigenschappen en selecteer vervolgens Opslaan.

De kolom Time to live wordt automatisch gemaakt voor een elastische tabel. U kunt desgewenst de tijdsperiodewaarde in seconden toevoegen. De gegevens worden na de opgegeven periode automatisch verwijderd.

More information over tabellen: Geavanceerde opties

Bekende problemen

  • Wanneer time to live (TTL) wordt gebruikt voor een rij, wordt de rij verwijderd uit de elastische tabel wanneer TTL is verlopen. Als het wordt gesynchroniseerd met een data lake met Azure Synapse Link for Dataverse voordat de TTL afloopt, wordt het niet verwijderd uit de data lake.
  • Met herstel naar een bepaald tijdstip worden 'bijgewerkte' records niet hersteld, omdat er geen back-up van updates wordt gemaakt. Alleen gemaakte en verwijderde records worden hersteld.
  • Als een specifieke kolom in een elastische tabel wordt verwijderd, wordt de kolomwaarde niet verwijderd uit de tabelrijen als deze gegevens bevat. Voordat u een specifieke kolom verwijdert, verwijdert u de gegevens uit alle rijen voor de kolom.

Elastische tabellen met hoog volume en Dataverse API-beperkingslimieten beheren

Bulkbewerkingsberichten gebruiken. Hierdoor kunt u een tien keer hogere doorvoer realiseren met dezelfde beperkingslimieten voor Dataverse API's. Ontwikkelaars kunnen naar meer van de in de onderstaande sectie opgegeven koppelingen verwijzen.

Voor ontwikkelaars

Elastische tabellen hebben ander gedrag en andere mogelijkheden dan standaardtabellen wanneer ontwikkelaars ze gebruiken met Dataverse-API's. In de volgende artikelen voor ontwikkelaars worden deze verschillen beschreven:

Zie ook

Tabellen maken en bewerken met Power Apps