- From: Dan Brickley <Daniel.Brickley@bristol.ac.uk>
- Date: Thu, 19 Apr 2001 08:45:15 -0400 (EDT)
- To: www-archive@w3.org
- Cc: barstow@w3.org
for archival / reference. ---------- Forwarded message ---------- Date: Thu, 19 Apr 2001 11:05:13 +0200 From: Alberto Reggiori <areggiori@webweaving.org> Reply-To: rdfdb@yahoogroups.com To: Eric Lease Morgan <eric_morgan@ncsu.edu> Cc: rdfstore@yahoogroups.com, xml4lib@sunsite.berkeley.edu, oss4lib-discuss@lists.sourceforge.net, etb@jrc.it, dirkx@covalent.net, rdfdb@yahoogroups.com Subject: [rdfdb] Re: [rdfstore] rdfstore and rdfdb Hello Eric, I will try to answer to your question especially concerning the RDFStore part and how the DBMS remote storage has been implemented. I cc this message to the rdfdb mailinglist hoping that somebody will complete the comparinson with rdfdb [1] > Could somebody here compare and contrast RDFStore and rdfDB for me? RDFStore [2] is a perl extension that includes an RDF API, parser and a hashed data database storage. The API started as a pure perl implementation of the Stanford Java RDF API Draft and it is not taking is way towards a full blown perl tie extension. I.e. tied scalars will model properties, tied hashes will model resources having a list of properties and RDF containers will be modeled either using tied arrays or hashes. A perl SiRPAC and strawman parser is bundled with RDFStore. The package does also include a generic data storage system that allows to serialise RDF models, resources, properties and property values either to disk or in-memory data structures. It does support several different persistent storage models such as sdbm, BerkeleyDB (standard and sleepycat) and DBMS. The latter is a custom TCP/IP based storage library that allows to a perl script to transparently read/write hashed data values sitting on a remote database server; such an extension has been designed in early 1998 by a collogue of mine and me for another project. DBMS is a fast networked transactional object store that uses multiple single key hash based BerkeleyDB along with Object Serialization in Perl and an optimized network routing daemon with a single thread/process per database. The acutal running code consists of two parts: the TCP/IP deamon (written in C) and a perl extension to tie hashes to DBMS storages. The deamon can handle multiple connections concurrently, where each table accessor is given its own thread of execution by forking. Having them forked means no locking overhead; the dbmsd supports only original BerkeleyDB 1.85 style interface. All oprerations are atomic and serialised using a FIFO like algorithm; the storage support arbitrary sized data. To reduce latence and avoid 'stagger' situations dbms uses non blocking IO and extensive buffering, but the dbms server is still 100% IO limited. The DBMS system has been tested in the past to use threading instead (like rdfdb) of forking but it did not show any serious performance (in part because both on FreeBSD 3.2 and on Linux 2.2.3 threads were not yet that efficient). rdfdb on the other side supports threading and has a human-readable telnet interface (a user could telnet to DBMS too but the interface is a bit cryptic :). Guha server implements the inxeding and storage completely in C while RDFStore keep the indexing/query logic on the client perl side. A simple SQL like intefrace is supported but rdfdb together with a perl DBI extension. RDFStore will soon support both SQL style interface and DBI connections as well. More information about the RDFStore DBMS implementation is available at [3]. > > I understand the value of XML, specifically RDF. As a librarian I would like > to create and save RDF records representing my journals, databases, and > Internet resources to a database and then provide as many as three different > Web interfaces to the collection: > > 1) simple/advanced search > 2) browse in a manner similar to Open Directory Project > 3) customizable interface as in MyLibrary@NCState > (see http://hegel.lib.ncsu.edu/development/mylibrary/) > I have to implement something similar for a project I am working on and I decideded to use apache+mod_perl+RDFStore to get similar functionalities. Hope this helps regards Alberto [1] http://www.xml.com/pub/a/2000/08/09/rdfdb/ [2] http://rdfstore.jrc.it/ [3] http://rdfstore.jrc.it/dbms.html ------------------------ Yahoo! Groups Sponsor ---------------------~-~> Secure your servers with 128-bit SSL encryption! Grab your copy of VeriSign's FREE Guide, "Securing Your Web site for Business." Get it now! http://us.click.yahoo.com/4cW4jC/e.WCAA/bT0EAA/CxaWlB/TM ---------------------------------------------------------------------_-> To unsubscribe from this group, send an email to: rdfdb-unsubscribe@egroups.com Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
Received on Thursday, 19 April 2001 11:39:14 UTC