lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "lucene user" <luz...@gmail.com>
Subject Re: Searching user-private annotations associated with indexed documents
Date Mon, 26 Nov 2007 23:43:02 GMT
Here are the three options that seem practical to us right now.

(1) Do The annotation search in postgres using LIKE or the
   postgres native full text search. Take the resulting list
   of file ids and use it to build a filter for the lucene query,
   the way we currently do for folders.

(2) Add a second lucene index that contains only annotations.
   First retrieve a list of file ids satisfying the annotation
   query from this index and use it to create a filter for the
   main lucene query on the archive.
   Whenever annotation text is edited,
     if blank, delete annotation from index
     otherwise add or replace annotation in index.

(3) Add a second lucene index that contains contentrefs.
    This index would contain the same fields as the arhicve index
    plus the following:
      database_id: list of systemuser_id and contentref_id.
      annotation:  list of all annotation text for this
                   system user and content ref.
      folders:     list of all folder names for this systemuser and
                   content ref

    Whenever an article is added to or removed from a folder,
    or its annotation text is edited, the following would occur:
      See if it has an entry in the lucene index for the database.
      if so,
        extract the lucene document from the index.
        if the updated list of folders that contain it is empty,
           delete this document from the lucene database index.
        otherwise,
          update the folder and annotation in the document object.
          delete this document from the index.
          add the updated document object to the index.
      if not,
        extract the lucene document for the article from the archive index
        add the database_id, folders, and annotation fields to this object
        add the document object to the lucene database index.

Got a better idea on this?

Thanks!!

On Nov 26, 2007 5:33 PM, lucene user <luz290@gmail.com> wrote:
> Folks
>
> I have some additional textual data that is user specific, basically
> annotations about documents. I would like to be able to do
> **combined** searches, looking for some words in the document and some
> in my users' private annotations about that document. Any suggestions
> about how I should handle this? The annotations are changeable by
> users at any time so we have to be ready to delete them and add others
> at any time when the user does edit an annotation.
>
> Do I need a second Lucene index? Can I do a query against two indexes
> at the same time? If so, how?
>
> The annotations will be very small but highly volatile. The database
> of documents will grow large but nothing will be deleted from it.
>
> Thanks!
>

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message