[2005] Advice on reading database
My next assignment (at work) is to revamp an application written many years ago. This app stores its data in a flat file database in a simple folder hierarchy, nothing complicated just text files. My task is to modify the app so that it can be used remotely, it would access the database using the internet rather than via files on a LAN.
My immediate thought was just to change any local database 'reads' over to some VB code using a web client. But... my fear is that this may turn out to be slow since every access would require many 'reads' over the web of the various files. My second thought was to make a local copy of the database on the users computer and manage a mirror. Should be faster, but I have to write some sync code. Thirdly I considered loading the database dynamically (into arrays of variables).
Before I get stuck into the wrong choice, what do you think would be the best approach? Since these databases already exist, I dont appear to have the option of converting them all into some other form.
Re: [2005] Advice on reading database
If you genuinely want to access a database via the Net then the modern approach would be to put the database and a Web service on the same server then your clients will interact with the Web service.
Re: [2005] Advice on reading database
Hmm, this is somewhere I havent been before, so is interesting from that point of view. The database contains orders to be picked from a warehouse and delivered to shipping. Both used to be on a LAN, but the company is now going to use two remote warehouses.
I'm limited with what I can do to the existing database, since it's read/written by a legacy VAX based system. In its simplest form, the app only needs to read one remote text file (a list of orders) which is easily handled by creating a single streamreader in a web client. In its most complicated form, a remote user could request a "summary" whereby the app has to read a lot of files and collate all the data. Needless to say this functionality is needed yesterday by an app that wasnt designed to support this :(
I guess this is one of these occasions where I should do a 'wet lab exercise' and see what performance I actually get.