Re: Basic questions on indexing of images



On Tue, 2005-03-08 at 12:54 +0100, Kristian Berg wrote:
> we will have a worker which
> watches the f-spot photo database for changes. When these occur, it will
> update the info in the data stored by FileSystemQueryable. Since the
> photo database stores both filenames and metadata, it would be possible
> to get the indexed data from lucene based on the filename? If so, an
> updater shouldn't be too hard to write.

Yes, you can access the indexed data by filename, but the problem is
knowing exactly what change has occurred in the f-spot db.  We can
easily determine when *something* has changed by watching the db, but I
don't think (and I could be wrong) that there is a trivial way to know
which specific records in the db have changed and thus which images need
to be re-indexed.

Doing this efficiently might require changes to f-spot.  One approach
would be to add a "last modified" field to the photo db that f-spot
would update every time a photo's metadata changed.  Then when beagle
noticed that the photo db had changed, it could search for all photos
which had been changed since the last time we indexed f-spot metadata,
and re-index them accordingly.  This would also make it easy to
efficiently find photos that were added or changed while the daemon
wasn't running.

> > The second approach would be to do a separate search of the f-spot
> > metadata at query-time...
> Something like the google search?

No, this would still be a hack to the file system backend.  I'm just
suggesting that rather than duplicating the f-spot metadata in our
index, we could attach it to hits after the fact... but doing it the
first way is probably easier.

-J





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