Re: Making metadata storage SQL-driven



Rodrigo Moya wrote:
On Thu, 2005-09-01 at 07:31 -0400, Luis Villa wrote:

On 9/1/05, Jamie McCracken <jamiemcc blueyonder co uk> wrote:

Rodrigo Moya wrote:

On Thu, 2005-09-01 at 12:10 +0100, Jamie McCracken wrote:


Christian Neumair wrote:


I really wonder why we rely on files for our metadata. It has issues [1]
where a synchronous fopen and read or write operation would really take
too long, requiring us to schedule reads/writes. Without doing any
performance measures, I think this could significantly speed up our
metadata code for big directories. I think we should do the same as
beagle, and rely on a tiny SQL server, doing all our metadata operations
synchronously. I'm not a big fan of EAs, since they seem to be some
different flavors and inconsistencies among various implementations.

[1] http://makeashorterlink.com/?Y364247BB



you are correct and thats why Im building such a system for Gconf/common
config system, general metadata server, schematic storage (like winFS),
indexing and anything else that needs fast structured storage.

My system is called DDS (data desktop server) and is simply a dbus
wrapper around the embedded mysql DB.


please don't use MySQL directly! First, you will impose users to install
and configure a DB server, which might not be possible in all cases.

the *embedded* version of mysql is just a shared object - you dont need
to install the full mysql to get it. RPMs for the *embedded* version are
on mysql's website. The *embedded* mysql is the same as sqlite in that
regard.

I presume that ny metadata system really should be part of the
platform so that other apps can access it; that would rule out mysql
on licensing concerns.


right, mysql is GPL, so can't really link to it from LGPL code.

Dbus IPC wrapper - not an issue!


In gnome-db (and other projects) we asked for a special treatment so
that we could link against their GPL libs from our LGPL ones, but with
no answer so far AFAIK from them.

So, again, for embedded dbs', use SQLite, and, if you use libgda, you
allow admins to set up the database on a different server, like
PostgreSQL, Oracle, MySQL, etc

I cant do that cause I need the full text indexing of mysql for my indexer!

http://dev.mysql.com/doc/mysql/en/fulltext-search.html

unfortuantely thats specific to mysql and not available on other RDBMS.

--
Mr Jamie McCracken
http://www.advogato.org/person/jamiemcc/



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]