Re: Proposed module: tracker



Joe Shaw wrote:
Hi,

On Mon, 2007-01-08 at 20:47 +0100, Steve Fr�naux wrote:
Jamie McCracken wrote:

in any event tracker can be configured to not index at all or only index metadata and/or contents. It can also be used a stand alone metadata DB so I think tracker should be flexible enough for most cases where you only want a subset of its features.
In that case, could it be used as a metadata storage for application data concerning files ? Such applications are nautilus or gedit or evince...

Also, didn't rhythmbox have a project to use tracker as its music database ? What's the status of it ?

I'm not sure I understand this world view.  People in this thread have
been saying things like, "We need a metadata solution."  But I haven't
seen anyone yet articulate what the "metadata problem" is, or how
Tracker specifically is supposed to solve it.

I know that Jamie recently said that he's only proposing the Tracker
indexer and search tool for inclusion, but as long as Tracker includes
the metadata stuff, it's just as much a part of the desktop as the other
stuff, unless it's shipped separately.

Using Tracker as a general store feels makes me feel very uncomfortable.
Most of these are not necessary cons against Tracker per se, but apply
more generally to idea of a centralized, generic data store:


all these also apply to EDS too yet no one complains?

A central store has been successfully used in BeOs and Vista also has similiar.

Tracker is object to object with key values as properties so it can do more complex stuff (like a playlist object is a collection of music files). It now has metadata relationships so much smarter searches are available.

If we ever want first class objects or semantic web style functionality then stores like tracker/EDS are needed.

They are not slower - in many cases they result in far fewer disk seeks. The key is to get stuff in bulk (like get all the properties in one call as opposed to getting each individual ones separately). This eliminates the IPC overhead (something GConf needs too)

We are planning to back up all metadata in either exattrs or an XMP format. This also helps with moving data off machine and preserving metadata.

And one API is easier to learn than a multitude for different metadata and keyword systems (honestly how many systems do we need to do tagging and metadata?).

And no it should not be more cumbersome than existing methods + you get the benefit of powerful search on the metadata (and I dont mean just the limited searches of indexers but the database sql ones that do substring wildcards and RegExp too)

Some examples of how tracker can improve the desktop :

Lets take the .desktop files that make the menu slow - tracker can cache these in its database, use inotify to keep them up to date and spit them out considerably faster than manually parsing each .desktop file.

Another example is if rhythmbox used tracker as its database then its pretty much guaranteed to have an up to date listing of all music files with no need to watch or scan directories for files. Another music app could also connect to it and get the same benefit with much less code.
(the same can apply for GThumb/Fspot with photos)

Tracker can create a faster and more powerful desktop but yeah to prove that I would probably have to write Topaz :)


--
Mr Jamie McCracken
http://jamiemcc.livejournal.com/




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