Supports Token List Indexes
From Version 3.1 ObjectDatabase++ supports Token List indexes as well as
B+-Tree and Spatial indexes.This
third type of index structure allows database designers the ability of
providing efficient full text search facilities without the need to create the
index separately and with the speed of the implementation within the ODBMS.
The Token List index takes one or more strings from a database object, splits
it into its various tokens, and indexes those tokens in a B+-Tree.
When a search is carried out, the database only needs to scan each indivisible
token and not the full text of each object, reducing the total amount of time
taken to identify the correct records. Searching the tokens of each object
rather than the full text enables the index search to cancel out objects that
many be locked by another transaction – preventing deadlock.
The Token List searches provides several different mechanisms for the search,
firstly there are the Boolean logical operators: - and; or; xor; not; and ().
Secondly there are token operators: - if a token is to contain a string, "A" or
A; if a token is to start with a string " A"; if a token is to end with a
string "A "; and lastly, is a token is to match a given string " A ". Other
string matching operations such as "A near B", require that a search "A and B",
then the results are scanned by your program to find all matching strings that
A is in fact near B – as this style of search required the full text and is not
helped by any index structure.
|