473,657 Members | 2,686 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

storing xml in filesystem or db?

Hi All,

I've searched the web for an article explaining the many tradeoffs between
storing your XML in a database vs the filesystem but I haven't really found
anything of note.

This is the little I've come up with:

FileSystem Pros:

1) more scaleable than db, although I haven't seen data on how much more
2) you can index your xml files using third party tools (although from what
I've found there seems to be a distinct dearth of these for the windows
platform. LOTS for unix and co.)

FileSystem Cons:

1) if you have any data in a db you must be very careful with integrity.

DB Pros:

1) many dbs now (and Yukon later) will allow you to do xpath or xquery
against xml. not sure what the indexing support is like...
2) if you have other data in db then you can get it from a single source

DB Cons:

1) xml support seems to have been grafted on to most major rdbms, and is
still a big question mark...
2) less scaleable than filesystem

If anyone can point me to resources that address this question I would be
grateful. References to good xml file indexers for windows, case studies on
performance differences, details on Yukon + xml, etc. would all be very
useful...

--
Lucas Fletcher
lu***@dealersin notions.com
http://dealersinnotions.com
Nov 11 '05 #1
1 1882
See below for some additional datapoints.

Best regards
Michael Rys

--
This posting is provided "AS IS" with no warranties, and confers no rights.
Use of included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm.

"Lucas Fletcher" <lu***@dealersi nnotions.com> wrote in message
news:uJ******** ******@TK2MSFTN GP12.phx.gbl...
Hi All,

I've searched the web for an article explaining the many tradeoffs between
storing your XML in a database vs the filesystem but I haven't really found anything of note.

This is the little I've come up with:

FileSystem Pros:

1) more scaleable than db, although I haven't seen data on how much more
2) you can index your xml files using third party tools (although from what I've found there seems to be a distinct dearth of these for the windows
platform. LOTS for unix and co.)

FileSystem Cons:

1) if you have any data in a db you must be very careful with integrity.

DB Pros:

1) many dbs now (and Yukon later) will allow you to do xpath or xquery
against xml. not sure what the indexing support is like... We will support indexing of native XML datatypes.
And if your XML represents relational data, you can already use XPath
against annotated schema views to query your data... 2) if you have other data in db then you can get it from a single source
There are some additional advantages such as recovery, concurrency control
etc, that you don't get from a basic filesystem.
DB Cons:

1) xml support seems to have been grafted on to most major rdbms, and is
still a big question mark... Actually that is not the case anymore (at least not for Yukon and for
Oracle). 2) less scaleable than filesystem This depends on what you use as your scaling criteria. If you scale query
performance, then the DB should be better.

If anyone can point me to resources that address this question I would be
grateful. References to good xml file indexers for windows, case studies on performance differences, details on Yukon + xml, etc. would all be very
useful...
For public details on Yukon you currently have to either enroll into the
Beta1 release (which is full, but wait list places are still available if I
remember correctly) or wait until early next year when the public beta
ships.

As to resources: Did you look at Ron Bourret's web page on XML and
databases? --
Lucas Fletcher
lu***@dealersin notions.com
http://dealersinnotions.com

Nov 11 '05 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

12
5316
by: Ryan Stewart | last post by:
I am in extremely urgent need (by tomorrow) of a way to store files in and retrieve files from an Oracle database using TopLink as an intermediary. I have the JSPs for it, and it works for small files, but larger ones like Word documents and Excel Spreadsheets give an error saying that the data is too large for the field. Can anyone help with this? Our file object has a fileData field which is an array of bytes which is mapped in TopLink to...
7
3481
by: Benoit St-Jean | last post by:
I am looking at options/ways to store 12 million gif/jpg images in a database. Either we store a link to the file or we store the image itself in the database. Images will range from 4k to 35k in size and there will be 12 millions of them (at the beginning)... I expect a 8% growth every year. We will also have to perform some cleanup jobs to delete images that are not longer referenced by the master table. We'll also have to...
6
3040
by: bissatch | last post by:
Hi, I am currently writing a news admin system. I would like to add the ability to add images to each article. What I have always done in the past is uploaded (using a form) the image to a folder on the server and then in the database table that I INSERT the news article, I'll store the path of the uploaded image. To me this seems a bad idea as if the image paths were changed on the
2
2703
by: Jeff Davis | last post by:
I have virtual hosted users on a server and some of them have a postgresql database. I'm concerned about the outside possibility that a user could create an infinite loop and fill up the partition on which everyone's database resides. Anyway, it occured to me that I could create a special file for each database user of limited size, and make a filesystem on top of that file. The file could be owned by the user. Then, each user could have...
2
2059
by: Joolz | last post by:
Hello everyone, Sorry if this is a FAQ, but I've groups.googled the subject and can't find a definite answer (if such a thing exists). I'm working on a db in postgresql on a debian stable server, ext3 filesystem. The db will contain files, not too many (I expect somewehere between 10 and 100 files max to be inserted daily), and not too big (mostly pdf files, some images. The size will rarely be larger than 1Mb). My plan was to store...
9
2366
by: Adam J Knight | last post by:
Hi all, Just wondering whats everyones prefered method of storing images ? 1) File System 2) Database (SqlServer) (Seems to be easier, but has a performance hit) Appreciate some insight!!! Cheers,
7
1878
by: Mike | last post by:
I have developed an application, for psyc patients.... they type in very personal information in a web form to help them work through problems in their lives. Once they enter the info, I encrypt the data and store it in a MySQL database. Users can then print, edit, delete or share the information they entered with their therapist. I'm not happy storing this in the database for two reasons: (1) my host places restrictions on my database...
3
1900
by: Lucky_Syringe | last post by:
I wrote this script to display different files from a database and properly display them by their respective MIME types. I have two questions: the first is that it just so happens not to work, and I'm just wondering if there are any discrepancies that I can't see that maybe someone else can, and the second is what would be the benefits and the drawbacks of storing different types of files in a database, for example files like jpeg and gif...
5
3418
by: GaryE | last post by:
Hello: I am having trouble linking a couple of files using the boost::filesystem. I am using MSVC 6.0. Here is an abbreviated version of my problem: foo.h: #ifndef __FOO_ #define __FOO_ #include "boost/filesystem.hpp"
0
8407
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8837
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
8512
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8612
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
7347
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6175
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
4329
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2739
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
1732
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.