473,416 Members | 1,721 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,416 software developers and data experts.

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


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

Nov 17 '05 #1
2 2162
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]
- mv*@spam.guard.caspershouse.com

"Samuel R. Neff" <in**********@newsgroup.nospam> wrote in message
news:te********************************@4ax.com...

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

Nov 17 '05 #2
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.
"Samuel R. Neff" <in**********@newsgroup.nospam> wrote in message
news:te********************************@4ax.com...

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

Nov 17 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

49
by: Steven Bethard | last post by:
I promised I'd put together a PEP for a 'generic object' data type for Python 2.5 that allows one to replace __getitem__ style access with dotted-attribute style access (without declaring another...
17
by: John Bentley | last post by:
John Bentley: INTRO The phrase "decimal number" within a programming context is ambiguous. It could refer to the decimal datatype or the related but separate concept of a generic decimal number....
17
by: Andreas Huber | last post by:
What follows is a discussion of my experience with .NET generics & the ..NET framework (as implemented in the Visual Studio 2005 Beta 1), which leads to questions as to why certain things are the...
4
by: Cool Guy | last post by:
I don't understand the third paragraph under the heading 'Generic type instantiations' on <http://msdn.microsoft.com/vcsharp/2005/overview/language/generics/>: | The .NET Common Language Runtime...
1
by: INeedADip | last post by:
I am trying to use the following generic (reflection) class as the ICamparer parameter for a generic list..but I get the error: "Unable to cast object of type 'GenericComparer' to type...
0
by: Wiktor Zychla [C# MVP] | last post by:
We do have generic classes, methods and delegates. My question is: what reason prevents us from having generic properties and indexers? // impossible public List<T> GetList<T> { get { ... }
9
by: mps | last post by:
I want to define a class that has a generic parameter that is itself a generic class. For example, if I have a generic IQueue<Tinterface, and class A wants to make use of a generic class that...
3
by: Boris | last post by:
I have a class which should like this ideally: generic <typename T> public ref class ManagedClass { T ^managedMember; UnmanagedClass<U*unmanagedMember; }; I actually would like to specify...
9
by: tadmill | last post by:
Is it possible to pass a generic parameter of the same class to to its constructor, where the "T" type passed in the constructor is different than the "T" type of the instanced class? ie, ...
2
by: ADN | last post by:
Hi, I have a method which calls my service factory: class person { public int ID { get; set: } public string Name {get; set;} } IList<Personmypeople = __serviceFactory.Fetch(new Person())
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.