Il nostro cliente ha un database MS SQL che contiene 1 milione di record di fatturazione del cliente. Utilizzando il database, il nostro cliente desidera che i suoi clienti siano in grado di accedere a un sito Web di frontend per poter visualizzare, modificare e scaricare le fatture della propria azienda. Date le dimensioni del database e il numero elevato di clienti che possono accedere al sito Web in qualsiasi momento, siamo preoccupati per le prestazioni del motore di base dati e le prestazioni di rendering delle fatture delle pagine Web.
Il database di 1 milione di fatture è per soli 90 giorni di vendite, quindi rimuoveremo le fatture di oltre 90 giorni dal database. La maggior parte delle fatture ha più elementi pubblicitari. Possiamo facilmente convertire le nostre fatture in vari formati di dati, così per esempio è facile per noi convertire da SQL a XML con lo schema correlato e XSLT. Qualsiasi conversione di dati verrebbe eseguita su un altro server in modo da non sovraccaricare il server dell'interfaccia Web.
Abbiamo deciso di eseguire il sito Web su un server Web IIS di .NET Framework utilizzando MS SQL su MS Azure.
-
Come suggeriresti di strutturare il nostro database per ottenere le migliori prestazioni? Ad esempio, dovremmo inserire tutte le fatture di tutti i clienti che si trovano all'interno degli stessi codici postali a 5 o 6 cifre nella stessa tabella? Oppure potremmo impostare una directory home separata per ogni cliente su IIS e inserire le fatture di ciascun cliente nella directory home di ciascun cliente in formato XML?
-
In secondo luogo, quale suggeriresti sarebbe il metodo migliore per rendere le fatture dei clienti su una pagina Web e consentire ai clienti di modificare per ottenere le migliori prestazioni? Il set di dati XML di ADO.net ci sembra intrigante come metodo, ma non l'abbiamo mai usato.