These days computers usually have 2GB or 4GB memory.
I like to use some secure client server model, and well an sql database is likely candidate.
On the other hand I only have about 8000 records, who will not frequently be read or written in total they would consume less then 16 Megabyte.
And it made me wonder what would be good secure options in a windows environment to store the data work with it multi-client single server model, without using SQL or mysql?
Would for well such a small amount of data maybe other ideas better?
Because I like to keep maintenance as simple as possible (no administrators would need to know sql maintenance, as they dont know databases in my target environment).
Maybe storing in xml files or.. something else.
How others would go if ease of administration is the main goal?
Oh and it should be secure to, the client server data must be a bit secure (maybe NTLM files shares https or…etc)
Maybe I should say something of the use, it would be like client ask for a single record and retrieves an answer a single byte is returned those clients won’t launch complex questions, only the maintenance server side might require record editing, clients will only ask not change records. And clients wont perform advanced queries.
1
Very first thing that comes to mind is SQLite. Have you considered giving that a shot? Very light weight and ubiquitous. Easy to use too.
SQLite (in addition to the comments below) is easily backed up and transportable across systems, mobile devices, client machines, embedded systems, servers all because it is a file. It does behave like a SQL system and often is used like a very lite one.
In our corporation we use them as mini databases from major ERP systems were we replicate this data down to mobile devices for offline access. This allows the same logic in our apps on mobile devices regardless of whether they are connected to a beefy server or in some remote location with no network access.
This data can also be encrypted and secure as you would like it to be. Again everything is securely encrypted on the mobile devices and in transmission.
Maintenance on the SQLite db file is very easy. There are many functions that you can use to keep the database light and optimize. I refer to this FAQ often. One command that has helped us in the mobile and embedded world to transfer our database faster is vacuum command for instance. SQLite makes it easy.
One other use of SQLite that I recently saw online (but can’t find the link btu will include it once I do) is that it can be used as a portable filesystem for various computers. It is easy to store and pack searchable data and then easily move it. I gather from your question this might also be of benefit.
I hope this gives a clearer answer and of some of the possibilities for SQLite.
3
If your data model is a simple one or if you do not want to use SQL, you can use Berkeley DB. It basically is an optimized map, which is to be embedded directly in your application; it has APIs for many programming languages, it supports very well multithreaded access and scales to large amounts of data (not distributed like NoSQL key-value databases).