Thoughts from Dan Miser RSS 2.0
 Wednesday, August 30, 2006
I've been tasked with adding text searching through documents to our application. Since we need to support multiple databases, I didn't want to use the native DBMS indexing options. Looking around, I came across Lucene.Net. It is an open source port of the Java version of Lucene, which is a lightning fast search engine over indexes of documents. The list of features is rather extensive, but my favorite feature would be the advanced search capabilities, including proximity search. There is also a very impressive open source project based on Lucene.Net called SeekAFile which adds functionality over Lucene.Net, and works extremely well, too.

I wanted to centralize the index storage of Lucene.Net, though, since it would be possible to have multiple app servers located in different physical locations, and allowing access from one machine to another could prove problematic. This meant that storing the index to the central database. I found a source code sample that would do this on a Firebird database. I have now converted that to work with MSSQL and Oracle, and it works very well. Yes, it's a bit slower than using the native file system directory provided with Lucene.Net, but it solves the problem we set out to solve.

Wednesday, August 30, 2006 9:22:00 AM (Central Standard Time, UTC-06:00)  #    Comments [8] -
.NET
Tracked by:
http://www.google.com/search?q=mgeyeysd [Pingback]
http://www.google.com/search?q=xnxopedp [Pingback]
http://gawds.org/blogs/cache/2/buycialisonline.htm [Pingback]
http://stephenpollard.net/mt-static/themes/2/buy-cialis.htm [Pingback]
http://bordercollie.org/Members/pm_sent/2/xanax.htm [Pingback]
http://jimbyrne.co.uk/ATutor/content/4/hoodia.htm [Pingback]
http://bordercollie.org/Members/pm_sent/1/hoodia.htm [Pingback]
http://stephenpollard.net/mt-static/themes/1/tramadol.htm [Pingback]
http://gawds.org/blogs/cache/1/ultram.htm [Pingback]
http://jimbyrne.co.uk/ATutor/content/4/buy-cialis-online.htm [Pingback]
http://basset.net/boards/cache/lang_cache/4/buycialis.htm [Pingback]
http://basset.net/boards/cache/lang_cache/5/nexium.htm [Pingback]
http://basset.net/boards/cache/lang_cache/5/paxil.htm [Pingback]
http://jimbyrne.co.uk/ATutor/content/4/adipex.htm [Pingback]
http://gawds.org/blogs/cache/2/adipex.htm [Pingback]
http://gawds.org/blogs/cache/1/health.htm [Pingback]
http://stephenpollard.net/mt-static/themes/1/health.htm [Pingback]
http://gawds.org/blogs/cache/1/tramadol.htm [Pingback]
http://basset.net/boards/cache/lang_cache/5/xanax.htm [Pingback]
http://stephenpollard.net/mt-static/themes/1/buy-cialis-online.htm [Pingback]
http://basset.net/boards/cache/lang_cache/4/hoodia.htm [Pingback]
http://bordercollie.org/Members/pm_sent/2/paxil.htm [Pingback]
http://basset.net/boards/cache/lang_cache/5/zyrtec.htm [Pingback]
http://jimbyrne.co.uk/ATutor/content/3/tramadol.htm [Pingback]
http://www.google.com/search?q=xziqseit [Pingback]
http://www.google.com/search?q=ccblwtvf [Pingback]
http://www.google.com/search?q=lfrvzdnb [Pingback]
http://www.google.com/search?q=jtyznidb [Pingback]
http://www.google.com/search?q=zxrsvbve [Pingback]
http://www.google.com/search?q=huxciaxq [Pingback]
http://9np-information.info/28662444/index.html [Pingback]
http://9ny-information.info/93823286/risk-india-stock-market.html [Pingback]
http://9nd-information.info/65503583/wedding-speech-to-the-bride.html [Pingback]
http://9nv-information.info/47926747/index.html [Pingback]
http://9nj-information.info/00912371/index.html [Pingback]
http://9nw-information.info/46710909/index.html [Pingback]
http://9nw-information.info/61953050/kettle-corn-business.html [Pingback]
http://9nd-information.info/05935895/index.html [Pingback]
http://9nt-information.info/67227196/index.html [Pingback]
http://9ni-information.info/49766958/auto-car-car-com-cylinder-future-html-new-y... [Pingback]
http://9qo-information.info/96795538/index.html [Pingback]
http://9qr-information.info/84797987/index.html [Pingback]
http://9op-information.info/90602626/index.html [Pingback]
http://9oo-information.info/96721403/avon-community-school-corp-.html [Pingback]
http://9ql-information.info/96632042/index.html [Pingback]
http://9qk-information.info/42020625/index.html [Pingback]
http://9qr-information.info/77657873/ricevitori-dvb.html [Pingback]
http://9qf-information.info/08773753/calendario-granfondo.html [Pingback]
http://9ok-information.info/06975368/to-outline-suitability-for-a-sales-job.html [Pingback]
http://9ol-information.info/26521238/burning-games-alcohol-120.html [Pingback]
http://9qq-information.info/75295378/index.html [Pingback]
http://9qs-information.info/47801717/index.html [Pingback]
http://9rx-information.info/69295309/index.html [Pingback]
http://9ry-information.info/74104409/index.html [Pingback]
http://9sm-information.info/31545367/index.html [Pingback]
http://9ru-information.info/96384920/index.html [Pingback]
http://9rb-information.info/78336125/index.html [Pingback]
http://9rw-information.info/62541209/index.html [Pingback]
http://9re-information.info/77692574/index.html [Pingback]
http://9rq-information.info/57917173/index.html [Pingback]
http://9sl-information.info/03620158/index.html [Pingback]
http://9sj-information.info/94288668/robin-hood-urca.html [Pingback]
http://9uaej-le-informazioni.info/23297362/index.html [Pingback]
http://9uaep-le-informazioni.info/03260813/valle-varaita-piemonte-produttore-mob... [Pingback]
http://9uafh-le-informazioni.info/56359065/index.html [Pingback]
http://9uaej-le-informazioni.info/49520109/index.html [Pingback]
http://9uafg-le-informazioni.info/22342082/index.html [Pingback]
http://9uaes-le-informazioni.info/89791004/memphis-amerisuites-memphis-cordova.h... [Pingback]
http://9uafd-le-informazioni.info/23589324/index.html [Pingback]
http://9uagd-le-informazioni.info/69174476/index.html [Pingback]
http://9uagp-le-informazioni.info/16549413/unita-supplementare-intrastat.html [Pingback]
http://9uahc-le-informazioni.info/86166262/index.html [Pingback]
http://9uahs-le-informazioni.info/33325950/vic-street-via-martucci-napoli.html [Pingback]
http://9uahc-le-informazioni.info/52731430/index.html [Pingback]
http://9uagl-le-informazioni.info/64719927/index.html [Pingback]
http://9uagt-le-informazioni.info/87530500/mce-presale.html [Pingback]
Saturday, September 02, 2006 5:03:00 AM (Central Standard Time, UTC-06:00)
Why don't you leave it using Firebird or Interbase ?
Monday, September 04, 2006 11:21:00 AM (Central Standard Time, UTC-06:00)
Because we don't support Firebird or Interbase with our applications at this point. Adding yet another database implementation would not be ideal, so I'll use the databases that we support.
Thursday, November 02, 2006 12:18:00 PM (Central Standard Time, UTC-06:00)
Howdee!

I just read the blog about Lucene.Net you wrote on August 30.

I'm having a quite similar problem at the moment: I would like to get the Lucene Index into a MySQL Database rather than the index-file. You did almost the same (but with MS SQL instead of MySQL).



Could you provide me a little help and give me some advise, what one might have to do and how?



Thank you very much,

saimen
saimen
Thursday, November 02, 2006 12:39:00 PM (Central Standard Time, UTC-06:00)
I copied the Firebird code, and then updated it to use MSSQL and Oracle components vs. the Firebird components. You also need to convert the Firebird data tables, and for good measure, I moved away from the stored procedures included in Firebird, and made the code inline instead.



Once you have that done, you just rebuild Lucene.Net, and you can now start using your custom class instead.
Thursday, November 02, 2006 4:38:00 PM (Central Standard Time, UTC-06:00)
Can you explain in some additional detail how you are using Lucene in a distributed fashion? Are there seekafile services running on each app server in the network, all concurrently updating the central database? or did you create the index once? did you build a crawler? I'm just trying to understand the motivation and use of the central db server to store the index.

thanks.
Monday, November 06, 2006 8:19:00 AM (Central Standard Time, UTC-06:00)
Dear Dan

Thank you for your fast reply here! Unfortunately, I'm not very used to C#. As you already have experience in porting it to MySQL: Would you like to port it to MySQL as well? (Paid, of course)

Please send me an e-mail to moove AT gmx.net if you're interested. We could then talk about the details... I look forward to hearing from you.

Greetings from Switzerland,

saimen
saimen
Monday, November 06, 2006 11:44:00 PM (Central Standard Time, UTC-06:00)
Hi... I download "Sample Lucene Web application" from "http://www-128.ibm.com/developerworks/library/wa-lucene2/index.html#download"....

But when i am going to search some things.. Its not working.. Can u help me regarding this..





I am using eclipse for compile perpose
Ritesh
Tuesday, November 14, 2006 1:13:00 PM (Central Standard Time, UTC-06:00)
I did a quick store implementation (more out of curiosity than anything) that simply encapsulated the RAMDirectory called an NHibernateDirectory. After everything was done to the index in the RAMDirectory (which was pretty fast, but then again I wasn't exactly dealing with a lot of data), the NHibernateDirectory flushed everything to the underlying NHibernate configured database. In that fashion, I was able to create a way to store the index into the database, where the database was any database that I was able to configure NHibernate to use in a configuation file.
Jon
Comments are closed.
Navigation
Archive
<October 2008>
SunMonTueWedThuFriSat
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2008
Dan Miser
Sign In
Statistics
Total Posts: 310
This Year: 25
This Month: 1
This Week: 0
Comments: 605
All Content © 2008, Dan Miser
DasBlog theme 'Business' created by Christoph De Baene (delarou)