My company has a program that stores data on the server and also maintains a copy on the end-users computer. The local copy is used to speed up reads (primarily for reporting). Every time an insert, update, or delete happens it first happens on the server, then the modified data is copied to the client.
We are currently using SQL Express 2005 as the local DB. The #1 source of problems we have (~35,000 computers run the software daily) is SQL. It could be some other program modifies our instance, some other software causes SQL to become unstable, SQL won't install due to some error on the machine, etc.
Are there any other alternatives to using SQL as the local DB? We would stream everything from the server as needed, but our salesmen refuse to allow us to have minimum specs on our software, so we have customers with dial-up and hundreds of thousands of historical records that they run reports on.
I've seen some XML based solutions but I don't know if they could handle large volumes of data.