OCCUPAZIONE DI BANDA DI UNA QUERY?

lunedì 27 novembre 2006 - 12.39

MarcodotnetHell Profilo | Junior Member

Vorrei sapere quanta banda occupa una query che lavora su un database in rete a 100M/bit con ACCESS 2003. Inoltre volevo sapere se c'era la possibilità di inserire in una mia applicazione un monitor di rete per vedere l'occupazione di banda ecc.. tipo delle api di windows richiamabili da codice.

lbenaglia Profilo | Guru

>Vorrei sapere quanta banda occupa una query che lavora su un
>database in rete a 100M/bit con ACCESS 2003.

Access è un database file server, ovvero il motore del DBMS (Jet Engine) risiede su ogni singolo client mentre il file .mdb può eventualmente risiedere anche su un server remoto in una share.
Quando un client esegue una query, tutti i dati coinvolti dalla query stessa devono essere trasferiti sul client per l'elaborazione. Ad esempio, se esegui una JOIN tra due tabelle con diverse migliaia di righe, tutti i dati di entrambe le tabelle verranno spostati sul client anche nel caso in cui la query restituirà solo 1 riga.
Come puoi ben capire il traffico di rete generato sarà decisamente importante. In un DBMS server side come ad esempio SQL Server, MySQL, Oracle, PostreSQL, DB2, ecc. il motore risiede sul server remoto pertanto tutte le elaborazioni delle query avverranno in locale sul server.
Quando un client sottomette una query, l'unico traffico di rete generato sarà attribuito alla query stessa ed alle righe restituite.
In questo caso il traffico di rete generato per una query analoga alla precedente sarà pressoché trascurabile.

>Inoltre volevo sapere
>se c'era la possibilità di inserire in una mia applicazione un
>monitor di rete per vedere l'occupazione di banda ecc.. tipo
>delle api di windows richiamabili da codice.

Qui glisso dato che l'argomento è OT su questo forum

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

MarcodotnetHell Profilo | Junior Member

Ciao ti ringrazio della risposta
Ti spiego il mio problema così magari mi puoi consigliare. Io ho una query di ricerca abbastanza grande che mi deve ricercare un record da una tabella che spesso ha 70.000 record. Il database si trova in rete su una machina che fa da server. Quando eseguo la query nella mia rete locale questa mi restituisce il risultato in 1 secondo quando la eseguo in'un'altra rete sempre a 100 m/Bit come la mia ci impiega più di 10 minuti e non iresco a capire cosa succede. La Query è una select su una tabella.
Grazie anticipatamente.
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