Crearea și editarea tabelelor elastice

O masă elastică este o masă gestionată de Microsoft Dataverse. Tabelele elastice vin cu aceeași experiență de utilizator familiară și API care sunt oferite cu tabelele standard. Ei împărtășesc multe aspecte și opțiuni cu tabelele standard, dar vin cu propriile caracteristici și capabilități unice care sunt alimentate de Azure Cosmos DB.

Ca și în cazul tabelelor standard, tabelele elastice sunt incluse cu Dataverse utilizarea capacității bazei de date.

Urmărește acest videoclip pentru a afla despre mesele elastice.

Când să luăm în considerare Dataverse tabelele elastice?

Tabelele elastice sunt concepute pentru a gestiona volume mari de date în timp real. Cu tabelele elastice, puteți importa, stoca și analiza volume mari de date fără probleme de scalabilitate, latență sau performanță.

Tabelele elastice au capabilități unice pentru schema flexibilă, scalare orizontală și eliminarea automată a datelor după o perioadă de timp.

Tabelele elastice se scalează automat pentru a ingera zeci de milioane de rânduri în fiecare oră. Procesele de fundal pot aduna semnalele IoT, pot prezice cerințele de întreținere și pot programa în mod proactiv tehnicienii.

Luați în considerare un scenariu în care Contoso este un retailer cu milioane de clienți existenți. Contoso are o bază de date mare de clienți și caută să crească vânzările, păstrând în același timp clienții. Pe baza istoricului anterior al clienților, aceștia caută să organizeze evenimente de vânzare flash de 24 de ore cu diferite cupoane care vizează clienții și produsele lor. Ei au estimat că numărul de cupoane necesare va fi de peste 100 de milioane pentru fiecare campanie de vânzare flash. Marketing intenționează să desfășoare mai multe campanii de 24 de ore care vizează diferite segmente de clienți.

Cerința pentru aplicația de marketing Contoso este că trebuie să poată ingera până la 100 de milioane sau mai multe detalii cupon în câteva ore, să citească milioane de cupoane pe oră și să trimită cupoane clienților.

Tabelele elastice se vor scala automat pentru acest scenariu cu randament ridicat.

De exemplu, în scenariul de mai sus, un tabel elastic numit Cupon cu milioane de înregistrări poate fi asociat cu Dataverse tabele standard, cum ar fi Contact (informații despre client) și Ofertă (un tabel standard personalizat). Deoarece tabelele elastice sunt izolate de tabelele standard, performanța aplicației generale de marketing nu va fi afectată negativ. În plus, capacitatea time-to-live cu tabel elastic (Cupon în acest scenariu) permite eliminarea automată a datelor după perioade fixe și asigură optimizarea capacității de stocare.

Folosiți mese elastice atunci când:

  • Datele dvs. pot fi nestructurate sau semistructurate sau dacă modelul dvs. de date s-ar putea schimba constant.
  • Aveți nevoie de scalare orizontală automată.
  • Trebuie să gestionați un volum mare de solicitări de citire și scriere.

Utilizați tabele standard atunci când:

  • Aplicația dumneavoastră necesită o consistență puternică.
  • Aplicația dvs. necesită modelare relațională și are nevoie de capacitate tranzacțională între tabele și în timpul etapelor de execuție a pluginului.
  • Aplicația dvs. necesită îmbinări complexe.

Alegerea tabelului ar trebui să se bazeze pe nevoile specifice ale aplicației dumneavoastră. O combinație a ambelor tipuri de tabele ar putea fi adecvată.

Scalare orizontală și performanță

Pe măsură ce datele dvs. de afaceri cresc, tabelele elastice oferă scalabilitate automată nelimitată în funcție de volumul de lucru al aplicației, atât pentru dimensiunea de stocare, cât și pentru debit, cum ar fi numărul de înregistrări create, actualizate sau șterse într-un interval de timp dat.

Dacă scenariul dvs. de afaceri necesită un volum foarte mare de scrieri de date, creatorii de aplicații pot folosi Dataverse mai multe API-uri de solicitare, cum ar fi CreateMultiple, UpdateMultiple și DeleteMultiple, pentru a obține un randament mai mare în Dataverse limitele de accelerare. Mai multe informații: Ghid pentru dezvoltatori: mesaje privind operațiunile în bloc și Optimizați performanța pentru operațiunile în bloc

Îndepărtarea automată a datelor

Politicile Time to Live (TTL) vă asigură că lucrați întotdeauna cu informațiile cele mai actualizate și precise, optimizând resursele și reducând riscurile. Valoarea TTL live este setată în secunde pe o înregistrare și este interpretată ca o delta din momentul în care o înregistrare a fost modificată ultima dată.

Schemă flexibilă cu coloane JSON

Tabelele elastice vă permit să stocați și să interogați date cu structuri diferite, fără a fi nevoie de scheme sau migrări predefinite. Nu este nevoie să scrieți cod personalizat pentru a mapa datele importate într-o schemă fixă. Mai multe informații: Ghid pentru dezvoltatori: interogați coloanele JSON în tabelele elastice Tabelele elastice vă permit să stocați și să interogați date cu structuri diferite, fără a fi nevoie de scheme predefinite sau migrări. Nu este nevoie să scrieți cod personalizat pentru a mapa datele importate într-o schemă fixă. Mai multe informații: Ghid pentru dezvoltatori: interogați coloanele JSON în tabele elastice

Considerații atunci când utilizați mese elastice

Deși tabelele elastice sunt excelente pentru a gestiona un volum mare de solicitări la scară, avantajele vin cu câteva compromisuri, de care trebuie reținute:

  • Tabelele elastice nu acceptă tranzacții cu mai multe înregistrări. Aceasta înseamnă că operațiunile de scriere multiple care au loc ca parte a execuției unei singure cereri nu sunt tranzacționale între ele. De exemplu, dacă aveți un pas de plug-in sincron înregistrat pe PostOperation scena pentru Create message pe o masă elastică, orice eroare din plug-in-ul dvs. nu va derula înapoi înregistrarea creată Dataverse. Validările în preplug-in-uri vor funcționa în continuare conform așteptărilor, deoarece rulează înainte de etapa principală.
  • Tabelele elastice susțin o consistență puternică numai în cadrul unei sesiuni logice. În afara contextului sesiunii, este posibil să nu vedeți imediat modificările unui rând. Mai multe informatii: Ghidul dezvoltatorului: Nivel de consecvență
  • Tabelele elastice nu acceptă filtre pentru tabelele asociate atunci când se creează vizualizări, căutare avansată sau orice interogare în general folosind API. Dacă trebuie să filtrați frecvent coloanele de tabel înrudite, vă recomandăm să denormalizați coloanele din tabelele înrudite, care trebuie să filtreze în tabelul principal în sine. Luați în considerare un retailer cu două tabele elastice: client și adresa. Un client are multe adrese. Doriți să returnați rezultatele interogării pentru toți clienții din tabelul clienți a cărui valoare a orașului din tabelul cu adrese este New York. În acest exemplu, atunci când interogați tabelul clienți, doriți să aplicați un filtru pe coloana oraș din tabelul de adrese aferent. Acest lucru nu este acceptat pentru mese elastice. O modalitate de a face acest lucru este de a denormaliza coloana oraș în tabelul Client, astfel încât toate valorile orașului clienților să fie prezente în tabelul clienți.

Mesele elastice au suport

  • Creați, preluați, actualizați, ștergeți (CRUD) operațiuni, inclusiv operațiuni multiple API (pentru debit ridicat), ștergere în bloc și solicitări de la pluginuri.
  • Relații:
    • Unu-la-mai-mulți
    • Multi-la-unu când tabelul N este un tabel standard
  • Înregistrează calitatea de proprietar, urmărirea modificărilor, auditarea, mobil offline și Dataverse căutarea.
  • Coloana fișier cu atributul tip fișier

Suport pentru funcții de securitate

Mesele elastice aderă la Dataverse modelul de securitate.

Când creați o masă elastică, puteți seta:

  • Deținută fie de utilizator, fie de organizație
  • Securitate la nivel de câmp

Funcții nu sunt acceptate în prezent cu mese elastice

Caracteristicile tabelului nu sunt acceptate în prezent cu tabelele elastice:

  • Reguli de business
  • Diagrame
  • Fluxuri de business
  • Un Dataverse conector pentru Power BI
  • Relații multi-la-mulți (N:N) cu tabele standard
  • Cheie alternativă
  • Detectare dubluri
  • Coloane calculate și cumulate
  • Coloane valutare
  • Compararea coloanelor în interogări
  • Partajarea mesei
  • Indici compoziți
  • Operațiuni în cascadă: Ștergere, Repare, Atribuire, Partajare, Anulare partajare
  • Comandă pe coloanele de căutare
  • Interogări agregate:
    • Valoarea distinctă a attribute1 în timp ce comandați după attribute2 valoare
    • Paginare atunci când aveți mai multe distincte
    • Distinc cu ordine multiplă după
    • Ordonați după și grupați împreună
    • Grupați după pe entitate de legătură (uniunea exterioară din stânga)
    • Distinct pe tabelele deținute de utilizator 
  • Conexiuni la masă
  • Echipe de acces
  • Queues
  • Atașament

Tipurile de date pe coloane nu sunt disponibile momentan cu tabelele elastice:

  • Moneda
  • Formula
  • Format de număr întreg, altul decât Niciunul (Durată, Cod de limbă și Fus orar)
  • Căutare pe baza opțiunii Client

Creați o masă elastică

Creați o masă elastică la fel ca orice altă masă nouă din Dataverse.

  1. conectați-vă la Power Apps și selectați Tabele în panoul de navigare din stânga. Dacă elementul nu se află în panoul lateral, selectați …Mai multe, apoi selectați elementul dorit.
  2. Selectați Tabel nou > Setați proprietăți avansate pe bara de comandă.
  3. În panoul de proprietăți din dreapta, introduceți a Nume afișat și a Nume plural.
  4. Extindeți Opțiuni avansate, apoi selectați Elastic ca tabel Tip. Selectați Elastic ca tip de tabel
  5. Selectați proprietățile dorite, apoi selectați Salvare.

Coloana Time to live este creată automat pentru un tabel elastic. Puteți adăuga valoarea perioadei de timp în secunde, după cum este necesar. Datele sunt șterse automat după perioada de timp specificată.

Mai multe informații despre tabele: Opțiuni avansate

Probleme cunoscute

  • Când time to live (TTL) este utilizat pe un rând, rândul este șters din tabelul elastic când expiră TTL. Dacă este sincronizat cu un lac de date folosind Azure Synapse Link for Dataverse înainte de expirarea TTL, nu va fi șters din lacul de date.
  • Restaurarea la un moment dat nu restaurează înregistrările „actualizate”, deoarece actualizările nu sunt copiate de rezervă. Sunt restaurate numai înregistrările create și șterse.
  • Dacă o anumită coloană dintr-un tabel elastic este ștearsă, valoarea coloanelor nu este eliminată din rândurile tabelului dacă are date. Înainte de a șterge o anumită coloană, ștergeți datele din toate rândurile pentru coloană.

Tabelele elastice cu volum mare și gestionarea limitelor de limitare Dataverse API

Folosiți mesaje de operare în bloc. Acest lucru vă permite să obțineți de 10 ori debitul cu aceleași limite de limitare Dataverse API. Dezvoltatorii pot face referire la mai multe linkuri furnizate în secțiunea de mai jos.

Pentru dezvoltatori

Tabelele elastice au comportamente și capacități diferite față de tabelele standard atunci când dezvoltatorii le folosesc cu Dataverse API-uri. Următoarele articole pentru dezvoltatori descriu aceste diferențe:

Consultați și

Creați și editați tabele folosind Power Apps