Options for generic full-text search without using database-specific full-text engine?

Options for generic full-text search without using database-specific full-text engine?

Post by Samuel R. » Sun, 12 Jun 2005 01:37:54



What options are available for doing full-text searches of database
data without using a database-specific full-text engine?

The only option I've found is Google's Search Appliance but it's an
expensive hardware solution and we prefer a software solution.

In the past I've used development languages that had OEM Verity
support which was wonderful but as far as I can tell the only
out-of-the-box search available in ASP.NET is Index Server which
indexes only documents, not database content. I also didn't see
anything available retail from Verity.

DotLucene also seems to be only for documents, although I'm sure we
could write some middleware to extract database data and serve it up
to DotLucene as a document (which is basically what Google's appliance
does). We could to the same thing using Index Server, it's just a lot
of hassle.

Other options?

The reason we're looking for a database-agnostic approach is the
application is currently written for Sybase but we're hoping to switch
it to MSSQL in the future and also would ideally like to be able to
reuse this module with our Oracle based applications.

Thanks,

Sam
 
 
 

Options for generic full-text search without using database-specific full-text engine?

Post by Nicholas P » Sun, 12 Jun 2005 02:36:13

Sam,

Why not abstract out what you need the database to do, and then write a
general framework around that? Basically, have an interface which will
perform the search, or call to the database (in the implementation). Then,
when you migrate, you don't have to change your code, you just have to
substitute the implementation of that interface to something MSSQL specific.

This way, you can write the part of the engine which will take the
results from the database and then send them off to whatever application you
need.

Hope this helps.


--
- Nicholas Paldino [.NET/C# MVP]
- XXXX@XXXXX.COM

 
 
 

Options for generic full-text search without using database-specific full-text engine?

Post by bradle » Sun, 12 Jun 2005 03:53:50

Have you considered storing your text seperately from the database in .txt
files? The file naming convention could be based on the primary key ID of
the record that would normally contain the text column. Once done, you
choice of search indexing methods is more flexible.