ManagableIndex is a flexible indexing framework. It comes with managable field, keyword and efficient range indexes. Via the management interface, you can for example configure * how to combine values to be indexed from various attributes * how to normalize terms, e.g. for case insensitive searches * to ignore stop terms to keep your indexes small * to convert terms into an efficient form This is how ManagableIndex supports efficient "DateTime" and "DateIndexes" * how to handle acquisition and calling of values New in version 0.4: * efficient 'integer', 'DateTime' and 'Date' indexes * efficient "RangeIndex"es (I expect them to be considerably more efficient than "DateRangeIndex"es) * optimization for "AdvancedQuery"s descending sorting More information and download: <http://www.dieter.handshake.de/pyprojects/zope#ManagableIndex> Note: This may be the last version with its current open source unrestricted use license. I consider whether I will expressly forbid the use of my software by institutions of the European Union (Councel of Ministers, Commission, Parliament, ...). This is in protest against a recent decision of the Councel to make software patentable. This decision ignores a Parliament vote that pleaded to keep logic (algorithms, business rules) un-patentable. -- Dieter
At 08:20 PM 5/22/2004 +0200, Dieter Maurer wrote:
ManagableIndex is a flexible indexing framework.
Great job! ManagableIndex certainly is flexible. In fact, it seems to have all (well most) of those things that all the Indexes seemed to be missing when I first dove into ZCatalog a while back. Pluggable Indexes helped, but they are a lot of work to get to where you want to go. I loaded ManagableIndex up and (after installing OFolder), it worked right away on my CMFCalendar using the new DateTimeInteger TermType. My Hope: What I'd like next is to be able to index a pair of dates (start, end attributes on Events in the CMFCalendar). Actually, one pair is easy: what I'd like is to make a RepeatEvent that is a single RepeatEvent object, but it sends a sequence of start/end pairs to the index to be stored for searching. The Calendar would show events on each day (e.g., Wednesday morning staff meetings), but will all point to the same RepeatEvent. I think that ManagableIndex either has this ability already, or is not very far away from it. Thanks Dieter. =Paul
Hi Paul, Paul Howell wrote at 2004-5-22 20:59 -0400:
At 08:20 PM 5/22/2004 +0200, Dieter Maurer wrote: ... Great job! ManagableIndex certainly is flexible.
Thank you!
... What I'd like next is to be able to index a pair of dates (start, end attributes on Events in the CMFCalendar). Actually, one pair is easy: what I'd like is to make a RepeatEvent that is a single RepeatEvent object, but it sends a sequence of start/end pairs to the index to be stored for searching. The Calendar would show events on each day (e.g., Wednesday morning staff meetings), but will all point to the same RepeatEvent. I think that ManagableIndex either has this ability already, or is not very far away from it.
It cannot yet do that. But is not difficult to achieve... You need to implement a new index type "RangeListIndex" which relates to "RangeIndex" in the same way as "KeywordIndex" to "FieldIndex". When you are ready to forget about the "aggregate" combiner, then you can directly carry over the implementation of "KeywordIndex" to your new "RangeListIndex". The new index would probably inherit from "RangeIndex" in order to use its "storage" methods. -- Dieter
participants (2)
-
Dieter Maurer -
Paul Howell