Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 Other Forums
 MS Access
 Disconnected recordsets and client resources?

Author  Topic 

MikeB
Constraint Violating Yak Guru

387 Posts

Posted - 2003-03-28 : 09:21:22
How can I calculate / determine the resources used by the system when creating diconnected recordsets? I am using C++, ADO. For example, lets say that my application opens a dozen or so different recordsets (disconnected so they use the client machine resources correct?) containing a combined 300,000 records? How would I go about seeing if I am going to strain the resources of a machine? Or am I being rediculous to think this would even be much of a problem?

Mike B

robvolk
Most Valuable Yak

15732 Posts

Posted - 2003-03-29 : 08:30:44
300,000 rows is gonna use up some memory, whether it will strain the client's computer depends on how powerful their CPU is and how much RAM they have.

One thing I'd strenuously suggest is to re-examine why that kind of volume is being offloaded to the client in the first place. Are they simply browsing those rows, or are they doing some kind of heavy processing on it? IMHO it's questionable to have that kind of volume transmitted over the network to a client computer to be worked on. I'm not saying it's never a good idea, but it really only makes sense when ALL OTHER possibilities have been tried and determined to be worse.

Go to Top of Page

jsmith8858
Dr. Cross Join

7423 Posts

Posted - 2003-03-29 : 09:09:06
Is the data stored in Access, or being retrieved from a SQL database by Access?

The reason I ask is, if the data is stored in Access, no matter what you do the client is processing every record because there is no server. Saying (SELECT SUM(Field) FROM Table), while returing only 1 record, requires that the client access every record in the table to return the SUM(). The JET engine is a really good engine, but is not a client/server engine and every time you acces the data the client uses the regular network protocol to directly access the raw .MDB file and pull out data.

That why there are concurrency issues with Access as well -- because of network read/write caching and file locking algorithms, it is nearly impossible for more than about 4 clients to efficiently share the same MDB file without poor performance or it getting corrupted. This is no fault of the JET engine (I will always insist it is an excellent single user database engine!), just a fact of life when multiple computers are reading/writing a network file at the same time.

If the data is stored in SQL --- well, never mind!




- Jeff
Go to Top of Page

robvolk
Most Valuable Yak

15732 Posts

Posted - 2003-03-29 : 09:16:31


Must. Read. Forum. Name.

Go to Top of Page

jsmith8858
Dr. Cross Join

7423 Posts

Posted - 2003-03-29 : 09:32:37
Maybe you just haven't had your morning cup of "Weiner Melange" yet?

http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=24930

- Jeff
Go to Top of Page
   

- Advertisement -