Compass : now with more features…

Compass is a first class open source Java Search Engine Framework, enabling the power of Search Engine semantics to your application stack decoratively. Built on top of the amazing Lucene Search Engine, Compass integrates seamlessly to popular development frameworks like Hibernate and Spring. Now in the latest release Compass 1.2, they are providing search capabilities for object models also. Compass allows to map your domain model (Object, pure XML, and the map like Compass Resource) into the search engine simply using either xml or annotations, and integrates with leading ORM libraries (Hibernate, TopLink, OpenJPA) and web frameworks (Spring MVC, Grails) in order to simplify even more the introduction of search into an application.

When we started to work with Compass [with Spring framework and Hibernate and months before the release of Hibernate search] there were no good documentations at all about it. that time we want to use Lucene for our full text search purpose. But because of the complexity of Lucene integration we used Compass as a Mapping framework between Spring and Lucene. My friend Roshan had done a lot of efforts to complete that successfully. Only one or two examples are the guidelines for him. Now Compass is improved a lot. It has a well prepared documentation [ style is looking like Spring’s official documentation], more examples, more and more features… and …. Now Hibernate search is also came to help us for full text search in a great and easy way.

Technorati Tags: , , , , ,


Compass Framework Modules


Excerpted from Compass official Documentation.compass-overview

Compass Core is the most fundamental part of Compass. It holds Lucene extensions for transactional index, search engine abstraction, ORM like API, transaction management integration, different mappings technologies (OSEM, XSEM and RSEM), and more. The aim of Compass core is to be usable within different scenarios and environments, and simplify the core operations done with a search engine.Compass Gps aim is to integrate with different content sources. The prime feature is the integration with different ORM frameworks (Hibernate, JPA, JDO, OJB), allowing for almost transparent integration between a search engine and an ORM view of content that resides in a database. Other features include a Jdbc integration, which allows to index database content using configurable SQL expression responsible for extracting the content.Compass Spring integrate Compass with the Spring Framework. Spring, being an easy to use application framework, provides a simpler development model (based on dependency injection and much more). Compass integrates with Spring in the same manner ORM Frameworks integration is done within the Spring Framework code-base. It also integrates with Spring transaction abstraction layer, AOP support, and MVC library.

Technorati Tags: , ,

Searchmash: Another Google product

Searchmash mixes (mashes) the various types of searches from Google products like web sites, videos from You Tube and Google Video, images, blogs. The wikipedia search results are also mixed with it. It has a simpler interface and some useful user friendly features. There is a small “Ajax feedback” form too.

Technorati : google, searchmash

Google’s secrets

How to get the best result from google search? Here are some keywords which can be used to get the result more accurately. I got this informations from here. If you know more keywords please comment here. Here we go…

Intitle: If we give Intitle: at the beginning of a query word or phrase (intitle:”Java”) restricts your search results to just the titles of Web pages.

Intext: does the opposite of intitle:, searching only the body text, ignoring titles, links, and so forth. Intext: is perfect when what you’re searching for might commonly appear in URLs. If you’re looking for the term HTML, for example, and you don’t want to get results such as, you can enter intext:html.

Link: lets you see which pages are linking to your Web page or to another page you’re interested in. For example, try typing in link:

site: (which restricts results to top-level domains) with intitle: to find certain types of pages. For example, to get any info from a government website the we can give [Searchitem] site:gov.

Daterange: (start date–end date). You can restrict your searches to pages that were indexed within a certain time period. Daterange: searches by when Google indexed a page, not when the page itself was created. This operator can help you ensure that results will have fresh content (by using recent dates), or you can use it to avoid a topic’s current-news blizzard and concentrate only on older results. Daterange: is actually more useful if you go elsewhere to take advantage of it, because daterange: requires Julian dates, not standard Gregorian dates.

population of [country] : We can easily get the population of the country by this query.

rphonebook: and bphonebook: Suppose you want to contact someone and don’t have his phone number handy. Google can help you with that, too. Just enter a name, city, and state. (The city is optional, but you must enter a state.) If a phone number matches the listing, you’ll see it at the top of the search results along with a map link to the address. If you’d rather restrict your results, use rphonebook: for residential listings or bphonebook: for business listings. If you’d rather use a search form for business phone listings, try Yellow Search

filetype:[extension]: If you prefer to see a particular set of results with a specific file type (for example, PDF links), simply type filetype:pdf.

define: To see a definition for a word or phrase, simply type the word “define:,” then a space, and then the word(s) you want defined. For example, the search [define:e=mc2] will show you a list of definitions for “e=mc2” gathered from various online sources.

Technorati tags: Google, Google search secrets