Dataverse: Performance e Limiti
Comprendere i limiti di API, le allocazioni di richieste e le migliori strategie per l’ottimizzazione delle query in Microsoft Dataverse.
Panoramica sui limiti di performance
Microsoft Dataverse è una piattaforma altamente scalabile, ma come ogni sistema distribuito cloud-based, impone limiti e soglie per garantire stabilità, sicurezza e prestazioni uniformi per tutti gli utenti. I limiti di performance rientrano principalmente in tre categorie: capacità di archiviazione, limiti di richieste e limiti API. Comprendere e gestire questi elementi è fondamentale per progettare soluzioni resilienti e performanti nel tempo.
1. Limiti di capacità di archiviazione
Ogni tenant Dataverse dispone di una capacità predefinita composta da tre aree di storage: database, file e log. Queste capacità variano in base alle licenze acquisite e possono essere estese tramite add-on di capacità. Secondo le linee guida, i valori di base per un nuovo cliente sono:
- Database: 10 GB
- Log: 2 GB
- File: 20 GB
Gli ambienti di tipo Trial, Preview, Support e Developer sono esclusi dal conteggio di capacità. È possibile acquistare capacità aggiuntiva per scenari complessi o multi-ambiente.
2. Limiti di richieste (Request Allocations)
Ogni utente Dataverse dispone di una quota giornaliera di richieste verso la piattaforma, calcolata in un intervallo di 24 ore. Tali richieste includono:
- Interazioni dirette degli utenti finali attraverso app model-driven o canvas.
- Chiamate API provenienti da Power Automate, Power Apps o integrazioni esterne.
- Connettori Dataverse utilizzati da flussi o applicazioni.
Il numero di richieste consentite varia in base alla tipologia di licenza: da un minimo di 6.000 fino a un massimo di 250.000 richieste per utente ogni 24 ore. Se la quota viene superata, le chiamate successive vengono temporaneamente rifiutate fino al reset del periodo.
3. Limiti API
I limiti API si applicano a livello di ambiente e sono valutati in finestre temporali di 5 minuti per ogni server web all’interno di un gruppo di scalabilità. Questo meccanismo previene l’abuso delle risorse e garantisce un’equa distribuzione del carico. Microsoft consente di richiedere un lifting dei limiti API per progetti di migrazione dati o implementazioni enterprise.
4. Impatto sulle migrazioni e sui caricamenti massivi
Durante le attività di migrazione o sincronizzazione massiva, è importante pianificare l’uso delle API in modo efficiente. Microsoft suggerisce l’utilizzo del metodo ExecuteMultiple per ridurre il numero di chiamate e migliorare le prestazioni complessive. Inoltre, in progetti di grande scala, è possibile richiedere una deroga temporanea ai limiti API per evitare interruzioni.
Per ulteriori dettagli tecnici: Eseguire richieste multiple in Dataverse.
5. Ottimizzazione delle query
Le query inefficienti possono compromettere le performance complessive dell’applicazione. Alcune best practice per l’ottimizzazione includono:
- Limitare il numero di colonne restituite, selezionando solo quelle necessarie.
- Usare i filtri e l’indicizzazione per ridurre il volume dei dati elaborati.
- Preferire le query delegabili nelle Canvas Apps per evitare limiti di delega.
- Utilizzare il client-side Web API per interazioni rapide e leggere.
- Evitare loop di richieste eccessive, consolidando le chiamate in batch.
6. Monitoraggio e prevenzione dei colli di bottiglia
Dataverse fornisce strumenti di monitoraggio integrati nel Power Platform Admin Center per analizzare l’utilizzo delle API e identificare i colli di bottiglia. È buona pratica configurare avvisi automatici e analizzare i log per ottimizzare le prestazioni nel tempo.
Consulta la Power Platform Admin Center per accedere ai report di utilizzo e alle metriche di capacità.
7. Strategie di caching e async loading
Per migliorare l’esperienza utente, è possibile implementare strategie di caricamento asincrono e caching locale, specialmente per componenti client-side. Il caricamento differito delle IFrame o delle Canvas Apps non essenziali riduce i tempi di rendering iniziale delle form. Inoltre, il caching di dati statici consente di ridurre le chiamate ripetitive al server.
8. Considerazioni sulle prestazioni lato client
Le estensioni client-side, come JavaScript o PCF, devono essere progettate con attenzione. Microsoft raccomanda:
- Usare Dataverse Business Rules quando possibile, poiché sono più performanti degli handler JavaScript.
- Evitare script complessi sull’evento OnLoad delle form.
- Consolidare le chiamate a servizi esterni in un’unica API wrapper.
Queste pratiche riducono il carico complessivo e migliorano la reattività dell’interfaccia.
9. Capacità add-on e scalabilità
Microsoft consente l’acquisto di capacità aggiuntive per storage e richieste, permettendo una scalabilità proporzionale alla crescita dell’organizzazione. L’uso combinato di Managed Environments e policy DLP garantisce inoltre che le risorse siano utilizzate in modo controllato e conforme.
10. Diagramma architetturale
Il seguente schema illustra la relazione tra richieste utente, API e limiti di capacità:
Questo flusso rappresenta la sequenza di interazioni e i punti di controllo in cui vengono applicati i limiti di performance e capacità.
Domande frequenti
Come posso aumentare i limiti di richieste API in Dataverse?
È possibile acquistare add-on di capacità o richiedere un aumento temporaneo tramite il supporto Microsoft, soprattutto per progetti di migrazione dati o test di carico.
Le query lente possono influire sui limiti API?
Sì. Query inefficienti generano più richieste e consumano risorse aggiuntive. È raccomandato ottimizzare le query e utilizzare filtri e colonne indicizzate.
Come monitorare l’uso delle API?
Attraverso la Power Platform Admin Center è possibile visualizzare le metriche di utilizzo API per ambiente e utente, individuando pattern anomali e colli di bottiglia.
Ottimizza le tue soluzioni Dataverse
Approfondisci le strategie di performance e governance per Dataverse consultando la documentazione ufficiale Microsoft e i nostri articoli correlati.