Shared Access 2003 database performance
I've to create a Access 2003 database and share it among 100 users, users won't be doing any modifications, only viewing several reports that are generated daily (and once) using a scheduled task on the host machine.
Would a simultaneous 100 users break the performances down in that context?
What would you advise me regarding this workflow?
Exclude:
-
开发者_开发百科
- Using a database server (sqlserver,...etc) is out of topic
- I've already thought about outputting the reports into static html, but now I want to first evaluate the sharing of the whole database (because filtering capability might be needed)
- I'd like to avoid replication
You have used the word "host". Remember, Access is not a true client-server engine: it merely provides access to the data; consumers pull the data down to their local machines, where their local Access runtime or local Access development version executes the query against the downloaded data. Entire "freight trains" of data can come down across the wire to the desktop.
Some years ago we had a large database that the customer wanted in Access (eventually moved it to Oracle). Some queries would eat up 90%-100% of available LAN bandwidth for 15-30 seconds, during which time other write operations to completely different databases on the LAN would time-out, and data corruption would result.
So the main concern of your scenario would be the effects of possibly severe degradation on other applications. It will depend on the size of your database and the nature of your queries behind the reports.
I'd recommend "canning" the reports if you can, so that each running of a report does not invoke the query that instantiates the data behind it.
EDIT: An alternative, if one is necessary, would be to have a web server running on the same machine as the Access "host" executing the queries, and serving the end-result reports out to the consumers' browsers as HTML. This would reduce bandwidth consumption. The LAN becomes "the cloud".
If you give each user their own copy of the front end and linked to the data source then you might get away with 100 users if the network is up to scratch. I have about 100 users mostly read only on an access DB but they are not all using it at the same time
You can automate the front end installation using the excellent autoFE updater www.autofeupdater.com/
精彩评论