Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Using an XML file to house 'information' instead of MySQL DB - advisable ? 1

Status
Not open for further replies.

c0deM0nK424

Programmer
Oct 28, 2007
126
GB
Either i'm not taking into consideration something obvious, as to why almost everyone would utilise a database to house some information about entities and their respective attributes. I prefer the term objects and properties but whatever.

I wanted to know if traversing through a series of XML files would be 'faster' than querying a MYSQL DB.

and if for instance, say we had an XML file called Consultants - an XML file called Projects - an XML file called - Skills and finally another XML file called Skills Profile (for each consultant, they are scored out of '10' in a respective skill.

A 'Skill' can be technical or non-technical and under technical skills you'd get things like Java, C++, Oracle DB, Perl etc

you can see whats going on i hope, its kind of like a 'Consultancy Skills Profiling Matrix' tool.

whereby If and when I need to know who the BEST GUY / GIRL is for a particular 'project', based on their proficiency in a certain skill type, they get the project. I assign them to the project.


Is this already too 'complex' for an XML file based system of some sort ?? Remember the idea here is that changes get made TO THE XML files themselves. Changes should also be UNDOABLE , so some mechanism like a 'rollback' should be in place.

the front end of this tool is simply a website/web app which presents big boxes with the appropertiate headings. Think of it so simple, that an 8 year old would know where to go to find out about skills or consultants, navigate deep and navigate back out of it with ease. So its not a website par se, its more like a website application thats UI is based on those cool mid 90's User Friendly Software we all loved back in the day.

Is what im talking about, already in practice ? I was thinking the following:

a) use simpleXML and PhP as the engine to write the web based tool/app.

b) create session ids as per when consultant(s) 'log in' to the system to update project status, notes etc.

c) I am master admin. I observe what this team of 8 consultants do. I also make decisions about who goes on what job.



Can all the required info I mentioned above be neatly defined in a set of XML schemas ?

A Consultant will be an object / entity in its own right.

A Consultant XML file will house many consultants who will have a set of attributes that tell you about them. Like a profile. First Name, Last Name, Date of Birth, Date joining firm, Date of last proj. completion, number of projects completed, department and what eever else.



Would it be mighty foolish to adopt an XML based data repositry system for something like this ?

or can it be done ? if so how would things like 'security' be dealt with here ? More importantly - how could we know if a consultant was 'on the job' or 'available' , in real time using just XML data ??

thoughts on this would be appreciated.

 
Using an XML file to house 'information' instead of MySQL DB - advisable

It depends.

is the only sensible answer given the lack of pertinent information.

Chris.

Indifference will be the downfall of mankind, but who cares?
Time flies like an arrow, however, fruit flies like a banana.
Webmaster Forum
 
Would it be mighty foolish to adopt an XML based data repositry system for something like this ?

It Depends.

can it be done ?
Sure it can.

if so how would things like 'security' be dealt with here ?
It depends.

More importantly - how could we know if a consultant was 'on the job' or 'available' , in real time using just XML data ??

It Depends.


Most of things you asked will depend on how you build the XML scheme.

However, the real question you should be answering really is: how convenient is it to have XML files?

How convenient will it be to manage them?
How convenient will it be, when you have to add data to them? Remember, you would need to read the entire file and re-write it each time you need to add data somewhere other than at the end of the file.
How much data are you expecting to add to them for the lifetime of the project?

How will performance be impacted when the number of people, skills projects etc.. grows.

What you propose can certainly be done, by the thing is why would you do it?

Why do you believe XML files will be easier or more convenient than a database?

SO at the end of the day, like Chris points out, it really depends:

On your skill level with managing XML files, and what you expect the complexity of the data to be like, and whether you are prepared to sort through plain text files to put together a profile.

For this type of thing a DB will always be easier and faster to implement than XML files.

Basically all you are trying to do is, build a database out of XML files. Why reinvent the wheel?




----------------------------------
Phil AKA Vacunita
----------------------------------
Ignorance is not necessarily Bliss, case in point:
Unknown has caused an Unknown Error on Unknown and must be shutdown to prevent damage to Unknown.

Web & Tech
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top