<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ODM Technology &#187; lucene</title>
	<atom:link href="http://blog.odmtech.com/tag/lucene/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.odmtech.com</link>
	<description>Ord's Blog</description>
	<lastBuildDate>Sat, 04 Jul 2009 15:22:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Local Solr</title>
		<link>http://blog.odmtech.com/2009/06/12/local-solr/</link>
		<comments>http://blog.odmtech.com/2009/06/12/local-solr/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 16:15:20 +0000</pubDate>
		<dc:creator>Ord</dc:creator>
				<category><![CDATA[OBID]]></category>
		<category><![CDATA[geocoding]]></category>
		<category><![CDATA[gis]]></category>
		<category><![CDATA[lucene]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[solr]]></category>

		<guid isPermaLink="false">http://blog.odmtech.com/?p=94</guid>
		<description><![CDATA[For searching at our Open Business Information Directory project we have been using a Solr server.  Based on the Apache Lucene library, it consistenly works well for the type of searches we need to do.  Since a lot of the applications for business data will be local searches, we looked at ways to implement distance [...]]]></description>
			<content:encoded><![CDATA[<p>For searching at our <a href="http://obid.org">Open Business Information Directory</a> project we have been using a <a title="Solr" href="http://lucene.apache.org/solr/">Solr</a> server.  Based on the Apache Lucene library, it consistenly works well for the type of searches we need to do.  Since a lot of the applications for business data will be local searches, we looked at ways to implement distance algorithms.  For a quick solution, we turned to LocalLucene/LocalSolr.  This package adds distance search to Solr, so that we can send queires for matching within a certain radius of a point.  LocalLucene is available from <a href="http://sourceforge.net/projects/locallucene/">SourgeForge</a>.</p>
<p>Getting started takes some doing.  First of all, we need to perform geocoding of  our records.  It is worth noting that not every record needs to be geocoded &#8211; ones that aren&#8217;t coded just won&#8217;t appear in proximity searches.  To get up and running quickly, we used a postal code database to get a rough location of the records that weren&#8217;t already geocoded.</p>
<p>For the changes to the Solr installation, I referred to the helpful tutorial at <a href="http://www.gissearch.com/localsolr">GISSearch.com</a>.  Once the changes had been made, I reindexed our records.  This was the longest part of the process &#8211; even though I only processed the Canadian records for this test, there are still over a million to go through.  If the server wasn&#8217;t being used I could have shut it down, deleted the indexes and rebuild to save some time.</p>
<p>Along the way, a few problems came up.  First was that a version build with the latest sources didn&#8217;t work, I had to revert to some earlier stable versions.  At GISSearch there is an example package that has a compiled solr that works, so that is a good place to start if you are having issues there.  The other big problem was that a bug in the phps output writer was preventing the searches from running.  Switching to xml or json output solves that.</p>
<p>Using Local Solr instead of writing our own solutions has saved a lot of development time.  We still need to do some performance testing to see how it will hold up under heavy usage, but so far it looks like with a dedicated server for geo searching we will be able to keep up with the loads.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.odmtech.com/2009/06/12/local-solr/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
