473,480 Members | 2,048 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

rdf vs. databases

I'm a newbie to RDF and have been facing a fundamental question as read
more about RDF. RDF positions itself away from plain XML
representations of data saying XML suited for representing data with
containment hierarchies, and where "order" is important, whereas RDF
has a flatter structure, represents only references among different
entities. That sounds just like what a relational database is supposed
to do, and those are critieria when deciding whether to used an XML DB
or a relational DB to store your data.

Where does RDF fit in, and how does it compare to relational databases.
I keep hearing that databases are not good for "semi-structured" data,
but am not yet able to understand how RDF addresses that. Mozilla for
example uses RDF for very structured (table of content) data.

What would be points of comparison where RDF is better suited to store
and query my data?

Revi S.

Aug 29 '06 #1
1 2443
re*********@yahoo.com wrote:
I'm a newbie to RDF and have been facing a fundamental question as read
more about RDF.
It seems like you have a fairly good grasp of things.
RDF positions itself away from plain XML
representations of data saying XML suited for representing data with
containment hierarchies, and where "order" is important, whereas RDF
has a flatter structure, represents only references among different
entities.
Yes. Think of RDF as a data model first, and the RDF/XML serialisation
syntax very much second.
That sounds just like what a relational database is supposed
to do, and those are critieria when deciding whether to used an XML DB
or a relational DB to store your data.
This very much _isn't_ what a relational DB is about.

A relational database (as they're currently implemented, not however
Codd might have seen them) imposes two constraints on the data:
- It's stored in rectangular row/column tables, and there are
facilities for joining across these tables to make similar row/column
views. There may be nulls, repetition and lack of normalisation in
these views.
- There is a pre-existing data model that must be configured before
data can be stored.

Both of these are pretty much contrary to RDF's graph model of data.
Hasn't it all gone quiet about XML DBs since 5 years ago? 8-)

IMHO, XML DBs are a bad idea. They're just not very useful. The XML
data model is tree structured and has poor (albeit some, using ID and
IDREF) facilities for graphs outside this. XML also depends on having
the whole universe represented in a single document and falls down
badly on trying to refer to entities outside this document.

IMHE, XML DBs were all too often the last gasp of vendors with tired
old non-relational hierarchical databases to sell. It's very easy to
produce an XML database, it's just hard to make a useful one.

The "real world" doesn't often have data in it that conforms to XML's
constraints, and this is really why XML databases aren't ever going to
become useful. "Real world" data is either highly constrained (we're
all told how our tax records will be held, and this is the same for all
of us) or data isn't constrained. The first of these is a good fit for
the RDBMS model, which is why commercial operations buy so many RDBMS.
They're powerful, cheap and appropriate.

The second case is closer to RDF. Data floats around as loosely
connected entities that we can just about fit onto a graph model. It's
also "semi-structured" data, which means we can usually describes its
structure when we see it, but we can't predict its structure _before_
we've seen it. A "database" that can store such information must
necessarily allow a highly dynamic data model.

Where does RDF fit in, and how does it compare to relational databases.
A data model is not a query mechanism, nor an engine / process for
executing this. Therefore RDF is simply a different class of thing to
databases, let alone a relational database. You can compare an "RDF
database" to a relational database, but first you must imagine an RDF
database -- and this concrete product would itself be different from
the abstract notion of RDF as just a model.

For one thing, our "RDF database" must not only incorporate an RDF data
model and some execution processor, but it must also implement an RDF
query language so we can communicate with it. Which query language will
it use? There are a number of these, and the choice would itself
influence our RDF database -- so assuming that there's only one
possible "RDF database" would be like saying that all relational
databases would also use SQL.

I keep hearing that databases are not good for "semi-structured" data,
but am not yet able to understand how RDF addresses that. Mozilla for
example uses RDF for very structured (table of content) data.
Why should an ability to work with the difficult case of "semi
structured" data make a tool inappropriate for the easier case of
structured data ?

Secondly, "semi structured" data is often highly structured, it's just
that we don't know what this structure will be until run-time, when we
see the data (and not always then). it certainly doesn't mean that the
data "has no structure", it just means that the structure isn't
available to us so easily, or so early-on.

RDBMS can store some things, and they're powerful and efficient. The
things they can store represent most of the things we have wanted to
store so far.

RDFDBMS can store anything from our current IT worldview, but they're
complicated and problematic.

XMLDBMS store more sorts of thing than RDBMS, but not usefully so.
They're simpler than RDFDBMS, but they're still not as developed or
powerful as RDBBMS.

What would be points of comparison where RDF is better suited to store
and query my data?
Look into current work, like SPARQL (and other work done by its
contributors)

Aug 29 '06 #2

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

Similar topics

2
478
by: Gary L. Burnore | last post by:
REQUEST FOR DISCUSSION (RFD) unmoderated group comp.databases.mysql This is an invitation to discuss the following proposal to create newsgroup comp.databases.mysql. Please note that YOU CANNOT...
8
2663
by: William Drew | last post by:
REQUEST FOR DISCUSSION (RFD) unmoderated group comp.databases.mysql This is an invitation to discuss the following proposal to create newsgroup comp.databases.mysql. Please note that YOU...
0
1623
by: Cara | last post by:
LAST CALL FOR VOTES (of 2) unmoderated group comp.databases.etl Newsgroups line: comp.databases.etl Extraction, transformation, loading issues. Votes must be received by 23:59:59 UTC, 12 Dec...
1
3169
by: Hai-Chu Hsu | last post by:
Hi, I want to restore my databases from the old SQL Server installation into a new installation of SQL Server. My new installation of SQL Server has different data path from the old...
0
2266
by: Cara Altman | last post by:
REQUEST FOR DISCUSSION (RFD) unmoderated group comp.databases.etl This is a formal Request For Discussion (RFD) for the creation of a world-wide unmoderated Usenet newsgroup...
3
7723
by: Amit | last post by:
Hi when I try to run LIST ACTIVE DATABASES AT DBPARTITIONNUM <partnum> or LIST ACTIVE DATABASES GLOBAL, I always get an error message. Does anyone know why? I'm on v8 fp 5 output : db2 => list...
1
3297
by: com | last post by:
Extreme Web Reports 2005 - Soft30.com The wizard scans the specified MS Access database and records information such as report names, parameters and subqueries. ......
6
2864
by: Andy | last post by:
Someone posted this official proposal to create comp.databases.postgresql.general again. He wrote his own charter. As far as I know, he did not consult any of the postgresql groups first. There...
6
1673
by: Tjerk Wolterink | last post by:
Don't know wether this is the right newsgroup, anyways: Has anyone some experience with Native XML Databases. Im planning to use this: http://exist.sourceforge.net/ It has many advantages...
3
2160
by: AK | last post by:
Hi Our product uses MS-SQL Server 2000. One of our customer has 10 installations with each installation stroring data in its own database. Now the customer wants to consolidate these databases...
0
7071
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
6726
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...
0
6861
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...
0
5318
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,...
1
4763
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...
0
4468
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
2987
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
2974
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
557
muto222
php
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

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.