By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,433 Members | 776 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,433 IT Pros & Developers. It's quick & easy.

difference between xml dataset and sql/access?

P: n/a
I'm nearly done writing the first version of my tracking app and I'm
starting to re-think the way I store my database. Currently I have my
database setup as an xml dataset. Before I started the program I choose
to go with a dataset because I was unclear if the end user would have to
have access installed if I went with an access database.

Recently I'm starting to realize (or think) that this isn't the case.
And, from what I gather, the xml dataset is loaded completely into
memory while an access database would not be loaded completely into
memory (please correct me if I'm wrong).

I'm also not sure which is faster.

If those of you who have experience with both, or either, could
enlighten me I'd really appreciate it. From what I've seen in access c#
code samples, it wouldn't be that difficult to convert my app to use a
different type of database.

If you have different suggestions that aren't just xml or access please
also let me know.

thanks
Benny
Nov 17 '05 #1
Share this Question
Share on Google+
5 Replies


P: n/a
Access databases are not loaded completely in memory, it sounds like
your XML is. Depending on the size of your database, this could go
either way. small database would favor your xml probably, large would
definitely favor the Access db.

Larger databases lend themselves to RDBMs, such as Jet, which Access
uses as its database engine. Larger databases also lend themselves to
SQL databases.

generally, the larger the dataset, the more you would want to go with an
sql database. the smaller the dataset, the more reliably you could use
a flat-file database, such as XML. Jet (a.k.a. Access) DBs are
generally regarded as a small to mid-tier databases.

hope that helps.

Benny Raymond wrote:
I'm nearly done writing the first version of my tracking app and I'm
starting to re-think the way I store my database. Currently I have my
database setup as an xml dataset. Before I started the program I choose
to go with a dataset because I was unclear if the end user would have to
have access installed if I went with an access database.

Recently I'm starting to realize (or think) that this isn't the case.
And, from what I gather, the xml dataset is loaded completely into
memory while an access database would not be loaded completely into
memory (please correct me if I'm wrong).

I'm also not sure which is faster.

If those of you who have experience with both, or either, could
enlighten me I'd really appreciate it. From what I've seen in access c#
code samples, it wouldn't be that difficult to convert my app to use a
different type of database.

If you have different suggestions that aren't just xml or access please
also let me know.

thanks
Benny

Nov 17 '05 #2

P: n/a
Let's say i'm storing anywhere from 100 to 1000 records (it could go
higher but I don't plan on anyone having more than 1000)

That seems small... should I go with access? is it faster? It would
save some memory i assume...

jeremiah johnson wrote:
Access databases are not loaded completely in memory, it sounds like
your XML is. Depending on the size of your database, this could go
either way. small database would favor your xml probably, large would
definitely favor the Access db.

Larger databases lend themselves to RDBMs, such as Jet, which Access
uses as its database engine. Larger databases also lend themselves to
SQL databases.

generally, the larger the dataset, the more you would want to go with an
sql database. the smaller the dataset, the more reliably you could use
a flat-file database, such as XML. Jet (a.k.a. Access) DBs are
generally regarded as a small to mid-tier databases.

hope that helps.

Benny Raymond wrote:
I'm nearly done writing the first version of my tracking app and I'm
starting to re-think the way I store my database. Currently I have my
database setup as an xml dataset. Before I started the program I
choose to go with a dataset because I was unclear if the end user
would have to have access installed if I went with an access database.

Recently I'm starting to realize (or think) that this isn't the case.
And, from what I gather, the xml dataset is loaded completely into
memory while an access database would not be loaded completely into
memory (please correct me if I'm wrong).

I'm also not sure which is faster.

If those of you who have experience with both, or either, could
enlighten me I'd really appreciate it. From what I've seen in access
c# code samples, it wouldn't be that difficult to convert my app to
use a different type of database.

If you have different suggestions that aren't just xml or access
please also let me know.

thanks
Benny

Nov 17 '05 #3

P: n/a
With 1000 records I'd pretty much flip a coin on it. Any speed
advantage would be negligible, I'd guess. You will use more memory with
XML, but that's probably only about 10 megs or so (what size is your db,
anyway?) and on modern systems that is almost nothing.

jeremiah

Benny Raymond wrote:
Let's say i'm storing anywhere from 100 to 1000 records (it could go
higher but I don't plan on anyone having more than 1000)

That seems small... should I go with access? is it faster? It would
save some memory i assume...

Nov 17 '05 #4

P: n/a
The database is pretty small... Just for fun i added 8420 records and
saved the xml file out. The xml file it generated is 5.61 MB. Of
course this is the minimalist version of each node added, but it should
show about how small these records are.

jeremiah johnson wrote:
With 1000 records I'd pretty much flip a coin on it. Any speed
advantage would be negligible, I'd guess. You will use more memory with
XML, but that's probably only about 10 megs or so (what size is your db,
anyway?) and on modern systems that is almost nothing.

jeremiah

Benny Raymond wrote:
Let's say i'm storing anywhere from 100 to 1000 records (it could go
higher but I don't plan on anyone having more than 1000)

That seems small... should I go with access? is it faster? It would
save some memory i assume...

Nov 17 '05 #5

P: n/a
First things i was trying to understand what has access or dataset to
do with access with installed on the user terminal.
If you have defined your data access layer in a generic fashion you can
connect to any kind of database. I think you have to read some articles
on how to make DAL components.

-------
Regards ,
C#, VB.NET , SQL SERVER , UML , DESIGN Patterns Interview question book
http://www.geocities.com/dotnetinterviews/
My Interview Blog
http://spaces.msn.com/members/dotnetinterviews/

Nov 17 '05 #6

This discussion thread is closed

Replies have been disabled for this discussion.