|
Today I had to pull a bunch of raw server logs and find out what I can from them. It's a bunch of text files, so I loaded them into Access to a staging table with a memo field to hold the entire line, and a PK int ID.
In this little set, I've got about 1.1 million rows, probably about 600 bytes wide on average. They come in pretty quick, but what's more important, a query to delete rows whose first character is # ran in seconds.
The internal VBA code to parse the individual fields out of the line runs slow as anything, and pegs one of my CPUs, but that's to be expected. Server code interacting with the database from the outside would run much faster. Anyway, the code parses out the log record into a relational format - a row with fields. Then it does an insert, and deletes the row from the staging table if it's successful.
Once the data is moved over, it's FAST. Queries that exploit an index return in milliseconds. The worst case is seconds if I can narrow the number of records that need to be evaluated with string expressions.
From a web server, you'll have more than just one connection, but if you pool and multiplex them, Access is pretty quick.
|