Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
LENTEZZA DI CONNESSIONE CON SQL SERVER 2000
mercoledì 28 gennaio 2004 - 23.23
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
H2MARON
Profilo
| Junior Member
161
messaggi | Data Invio:
mer 28 gen 2004 - 23:23
Premessa: Abbiamo appena iniziato a studiare Vb.NET.
Ho la necessità di gestire tabelle di sql server 2000 con grandi quantitativi di record (es: > 100000). Utilizzando ogni tipo connessione (Dataset, OLEDB...ecc...) le prestazioni non cambiano!(es per visualizzare in un Datagrid o caricare in un array circa 93000 record ci impiego dai 14 a 35 sec.)
Configurazione nostra rete: Server di dominio con 4 Processori 2GB ram. OS: windows 2000 Server.
Client: Pentium4 1.5 GB 256MB di ram. OS:Windows 2000 PRO
RETE a 100Mb.
NOTA BENE: con VB6 connessione ADO la stessa Tabella viene caricata nella metà del tempo (6/7 sec.)
In attesa di una vostra risposta vi ringraziamo e vi facciamo i complimenti per il sito!!
e mi raccomando AIUTATECIIII!!!!!!
CIAO!
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
gio 29 gen 2004 - 00:02
Ciao e Benvenuti,
mi sembrano un po' tantini 100 mila records da bindare su una datagrid, no ?
Anche perchè proprio a livello fisico di una persona come si fa a consultare una datagrid di 100 mila records ???
Inoltre voi come procedete ? Create un SqlDataAdapter, poi riempite un DataSet e quest'ultimo lo bindate alla vostra DataGrid ? Se fosse questo il caso, attenzione ! Il DataSet è una struttura dati che sta poi in memoria (RAM) e quindi andreste a fare un dump del Database SQL da disco alla memoria RAM del server che hosta l'applicazione Web.
Riguardo VB6 purtroppo il confronto è abbastanza difficile visto che si tratta di 2 tecnologie completamente diverse proprio dal punto di vista architetturale.
Vi consiglio anche di vedere un po' se il DB Sql funziona bene, magari facendo dei test con il Query Analyzer. Avete un DBA che vi gestisce il Database ? Avete fatto un tuning ottimale ?
Fateci sapere.
grazie e ciao
david
H2MARON
Profilo
| Junior Member
161
messaggi | Data Invio:
gio 29 gen 2004 - 14:51
Grazie ora proviamo...
Comunque posso dirvi che il DB non ha problemi.
Effettivamente 100000 sono tanti è so che è difficile che capiti...
Abbiamo fatto prove bindando un grid...quindi con un DataAdapter e Un dataset...
di una tabella con 1000 record, poi con 4000 e poi con 8000...fino ai 4000 nessun problema...dopo inizia a rallentare vistosamente!
I risultati migliori li abbiamo ottenuti comunque con una StoreProc. dal server...
La nostra domanda serviva più a noi per capire se stavamo affrontando la strada giusta visto che abbiamo appena iniziato a studiare .NET e che la lentezza non fosse causata da nostri errori!
Appena abbiamo fatto prove dettegliate o appena ci sorgo altri problemi saremo felici di riccontattarvi...
Grazie Tante per il momento...e apresto!!!
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
gio 29 gen 2004 - 21:28
Ciao,
no non commettete errori, però ci sono dei concetti di base da sapere, come dicevo quando usate un dataset e utilizzate il metodo Fill del DataAdapter succede che i record vanno a finire nel Dataset il Dataset è contenuto in memoria e quindi tendenzialmente all'aumentare dei record restituiti le pretazioni calano di conseguenza, bisogna capire come calano.
Dovresti se siete in grado fare un tracking del problema ed eventualmente con il perfmon.exe di Windows monitorare l'uso di memoria del server quando fate queste operazioni per capire che uso ne viene fatto.
ciao
david
Torna su
Stanze Forum
Elenco Threads
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 !