Grandezza tabella e numero record da gestire:

martedì 29 luglio 2008 - 10.42

trinity Profilo | Guru

Una tabella sql server 2005 quanti record può gestire? per esempio nel mio caso ho creato un progetto dove ci sono 400 clienti che ogni giorno quindi x 365 scrivono ciascuno in media dai 40 ai 100 record il che vuol dire nella peggiore dei casi che in un anno scrivono circa 14600000 milini di record....è troppo per una tabella sql potrei per esempio in una sola tabella contenere circa 5 anni e poi semmai creare una tabella di appoggio storico?

ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

alx_81 Profilo | Guru

>Una tabella sql server 2005 quanti record può gestire? per esempio
>nel mio caso ho creato un progetto dove ci sono 400 clienti che
>ogni giorno quindi x 365 scrivono ciascuno in media dai 40 ai
>100 record il che vuol dire nella peggiore dei casi che in un
>anno scrivono circa 14600000 milini di record....è troppo per
>una tabella sql potrei per esempio in una sola tabella contenere
>circa 5 anni e poi semmai creare una tabella di appoggio storico?
Dipende anche dalla lunghezza del record e dal livello di normalizzazione a cui arrivi. Chiaro è che più record ci sono, più avrai bisogno di indici studiati bene, e cmq prima o poi avrai un pochino di rallentamenti. Non esistono numeri precisi, ma fossi in te adotterei una soluzione di storicizzazione su tabella apposita (con uno schema apposta che gestisca lo storico, tenendola "svecchiata" per i dati che effettivamente non servono più). Inoltre, puoi pensare al partizionamento orizzontale dei dati, magari per data di caricamento.
Per ulteriori informazioni sul partitioning leggi qui:
http://technet.microsoft.com/en-us/library/ms345146.aspx
>
>ciao
>Cirillo Fabio
>www.wondernet.biz
>fabio@wondernet.biz
>http://blogs.dotnethell.it/fabiocirillo/
>http://wnetsoftware.blogspot.com

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

trinity Profilo | Guru

in effetti potrei nella tabella scrivere un anno intero poi lascirmi i record che mi servono nel corso del successivo anno e storicizzare gli altri dati inserendoli in una tabella storico che poi diventerebbe enorme ma non fa niente alla fine uno storico presume un elevato quantitativo di dati e quindi tempi di elaborazione + lenti


Interessante la partizione, in questa tabella che ti posto come potrei partizionare secondo te?


Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra


Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

alx_81 Profilo | Guru

>in effetti potrei nella tabella scrivere un anno intero poi lascirmi
>i record che mi servono nel corso del successivo anno e storicizzare
>gli altri dati inserendoli in una tabella storico che poi diventerebbe
>enorme ma non fa niente alla fine uno storico presume un elevato
>quantitativo di dati e quindi tempi di elaborazione + lenti
Infatti. Con lo storico, devi stare attento ad "educare" bene il cliente. Che in un futuro non si aspetti tempi di risposta sempre super veloci. Alcune elaborazioni potrebbero essere pesanti. E' importante che sia istruito a dovere. In questo modo, la parte "online" sarebbe più snella e lo storico, sempre fruibile, sarebbe gestito da processi diversi da quelli per i dati in linea.
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

trinity Profilo | Guru

vero hai ragione, ma se puoi il discorso della partizione mica hai dei books in italiano? dove spiegamo il tutto?

Tu la mia tabella come la partizioneresti?

Ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

alx_81 Profilo | Guru

>vero hai ragione, ma se puoi il discorso della partizione mica
>hai dei books in italiano? dove spiegamo il tutto?
eccoti il link
http://msdn.microsoft.com/it-it/library/ms188706.aspx

>Tu la mia tabella come la partizioneresti?
eh bisogna conoscere molto bene le situazioni reali. Non posso esserti molto di aiuto, il tutto pretenderebbe un'analisi accurata della situazione. Leggi il link che ti ho dato. Ci sono già interessanti nozioni applicabili
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5