Well, I'd vote for MySQL. That amount of hits seems way to heavy to leave it all to the server.

I guess also it depends a bit on your data and the nature of your queries too. With MySQL you get the advantages of a relational database, so you can put your data sources together on the fly by joining tables as you need them. That makes your data manipulation much simpler. Also SQL is a very efficient language. Much better to process your query in the database than churn through heaps of result data in perl. And you don't have to rewrite the whole XML file everytime you want to change some piece of data in the middle of it. With 100,000 users you're going to have some big XML files of a real lot of small ones - sounds complicated and flakey to me.

The idea of having XML in the DB is sound though, if you do it thoughtfully.

Anyway, that's my opinion but I use MySQL a lot and I'm not so brilliant with perl.

K


On 04/02/2004, at 3:16 PM, Bill Stephenson wrote:


If you're busy please forgive me and ignore this, if you have time to offer an opinion I'd really like to hear from this list on this subject;

If I am building a web app from the ground up, what's the best way to deal with storing/retrieving data? For arguments sake let's say the app will have 2500 users to begin with that each hit the server an average of 50 times a week. Each request delivers 40k of data. Users can search through their saved records where each record contains 5-50k of data. Users can have up to 2000 records. In 5 years the app will have, maybe, 25,000 users. In 10 years, say, 100,000 users. If it ever has more users than that, I'll write a help wanted message.

I'd like to store using XML in a separate text file for each record created because it's easy and gives me flexibility. I can add data fields without tweaking tables in a MySQL database. I can add users easily and keep their data in a separate directory that is easy to locate. I'm told that storing/retrieving data in text files is slow and so is parsing that data. I've never used XML::Parser but I thought I'd give it a spin.

I hear MySQL is speedy, but it seems to me that it adds complexity to such a degree that it may not be an even trade off. I could store data in an XML format in a single field in a MySQL database, but I'd still have to parse it.

As computers keep getting faster, and memory and storage cheaper, isn't it beneficial to program in the most simple, human readable, least learning required, method?

In short, I'm lazy. I'd rather code this all in perl. Do I really need to learn about and use MySQL or will computers get fast enough that it won't matter anyway.

Kindest Regards,

Bill Stephenson


+

Kynan Hughes

phone 9281 2088
fax 9211 4433
mobile 0411 231099

Additive design pty ltd
Amitabha pty ltd
http://www.additive.net.au


Level 4, 104 Commonwealth St Surry Hills NSW 2010 Australia

+



Reply via email to