Difference between revisions of "Solr Engine"

From WebLab Wiki
Jump to navigationJump to search
m (moved Solr Indexer to Solr Engine: The name of the service on the forge is solr-engine and not solr-indexer)
(No difference)

Revision as of 12:39, 6 March 2012

Indexing and search service based on remote Solr
Details
Service Interfaces Indexer, Searcher, Analyser
Exchange model: WebLab 1.2.2
Versions: <ListSubPages />
Licence LGPL 2.1
Supported OS Windows/Linux/MacOS
Integrated COTS SolR
Binary solr-engine-2.1.1.war
Sources solr-engine-2.1.1-sources.jar
Javadoc solr-engine-2.1.1-javadoc.jar
SVN Engine%2Fsolr-engine%2F solr-engine
Maven Artifact

<groupId>org.ow2.weblab.webservices</groupId>

<artifactId>solr-engine</artifactId>

<version>2.1.1</version>
Release Note


It's a search engine based on on Apache Solr and it allows (1) to index text based content, (2) to enable text search with possibly advanced set f queries and (3) provide search support through multiple analyser services. The list of services available is:

  • <solr-engineURL>/indexer : standard text indexing service ;
  • <solr-engineURL>/searcher : search service accepting StringQuery, SimilarityQuery and ComposeQuery ;
  • <solr-engineURL>/highlighter : analyser service applied on ResultSet and which allow to create snippet and highlight relevant text given a text query ;
  • <solr-engineURL>/resultSetMetaEnricher : analyser service applied on ResultSet and which add metadata on the item linked to the result hits ;
  • <solr-engineURL>/facetSuggestion : analyser service applied on ResultSet or StringQuery and which provide facets as query suggested ;
  • <solr-engineURL>/dataoperator : technical interface that allows to get reports and manage dataset (ie indexes) stored on service side.


Configuration

One single configuration file - <solr-engine-home>/WEB-INF/cxf-servlet.xml - enable to configure all services.

UsageContext effects

Examples of SOAP Input/Output

Known Limitations

All services need to connect to a standard Solr server that should be started in background. This component has a strong dependency to the index configuration (ie definition of fields) and server configuration (ie query-handler) of the remote solr server. A default solr-home with all necessary files is present in the source of the component:

src/main/resources/solr/

This should be used as solr-home to meet basic needs and provide a good start for fine tuning.

Dependencies

List off all dependencies of this service:

+- org.ow2.weblab.core.helpers:rdf-helper-jena:jar:1.3.2:compile
|  \- com.hp.hpl.jena:jena:jar:2.6.4:compile
|     +- com.hp.hpl.jena:iri:jar:0.8:compile
|     +- com.ibm.icu:icu4j:jar:3.4.4:compile
|     \- xerces:xercesImpl:jar:2.7.1:compile
+- org.ow2.weblab.core.helpers:rdf-helper-jena-selection:jar:1.5.3:compile
|  \- joda-time:joda-time:jar:1.6.2:compile
+- org.ow2.weblab.services:dataoperator:jar:1.2.2:compile
+- org.ow2.weblab.core.helpers:samples:jar:1.0:test
+- org.apache.solr:solr-solrj:jar:3.3.0:compile
|  +- org.apache.lucene:lucene-core:jar:3.3.0:compile
|  +- commons-httpclient:commons-httpclient:jar:3.1:compile
|  |  \- commons-codec:commons-codec:jar:1.5:compile (version managed from 1.2)
|  +- commons-io:commons-io:jar:2.0.1:compile (version managed from 1.4)
|  +- org.apache.geronimo.specs:geronimo-stax-api_1.0_spec:jar:1.0.1:compile
|  +- org.apache.zookeeper:zookeeper:jar:3.3.1:compile
|  |  +- log4j:log4j:jar:1.2.16:compile
|  |  |  \- javax.mail:mail:jar:1.4.1:compile (version managed from 1.4)
|  |  |     \- javax.activation:activation:jar:1.1:compile
|  |  \- jline:jline:jar:0.9.94:compile
|  +- org.codehaus.woodstox:wstx-asl:jar:3.2.7:compile
|  |  \- stax:stax-api:jar:1.0.1:compile
|  \- org.slf4j:slf4j-api:jar:1.6.1:compile
+- org.apache.solr:solr-core:jar:3.3.0:test
|  +- org.apache.solr:solr-noggit:jar:3.3.0:test
|  +- org.apache.lucene:lucene-analyzers:jar:3.3.0:test
|  +- org.apache.lucene:lucene-highlighter:jar:3.3.0:test
|  +- org.apache.lucene:lucene-memory:jar:3.3.0:test
|  +- org.apache.lucene:lucene-misc:jar:3.3.0:test
|  +- org.apache.lucene:lucene-queries:jar:3.3.0:test
|  |  \- jakarta-regexp:jakarta-regexp:jar:1.4:test
|  +- org.apache.lucene:lucene-spatial:jar:3.3.0:test
|  +- org.apache.lucene:lucene-spellchecker:jar:3.3.0:test
|  +- org.apache.lucene:lucene-grouping:jar:3.3.0:test
|  +- org.apache.solr:solr-commons-csv:jar:3.3.0:test
|  +- commons-fileupload:commons-fileupload:jar:1.2.2:test (version managed from 1.2.1)
|  +- org.apache.velocity:velocity:jar:1.6.4:test
|  |  +- commons-collections:commons-collections:jar:3.2.1:test
|  |  \- oro:oro:jar:2.0.8:test
|  +- org.apache.velocity:velocity-tools:jar:2.0:test
|  |  +- commons-beanutils:commons-beanutils:jar:1.7.0:test
|  |  +- commons-digester:commons-digester:jar:1.8:test
|  |  +- commons-chain:commons-chain:jar:1.1:test
|  |  +- commons-validator:commons-validator:jar:1.3.1:test
|  |  +- dom4j:dom4j:jar:1.1:test
|  |  +- sslext:sslext:jar:1.2-0:test
|  |  +- org.apache.struts:struts-core:jar:1.3.8:test
|  |  |  \- antlr:antlr:jar:2.7.2:test
|  |  +- org.apache.struts:struts-taglib:jar:1.3.8:test
|  |  \- org.apache.struts:struts-tiles:jar:1.3.8:test
|  \- org.slf4j:slf4j-jdk14:jar:1.6.1:test
+- org.mortbay.jetty:jetty:jar:6.1.26:test
|  +- org.mortbay.jetty:jetty-util:jar:6.1.26:test
|  \- org.mortbay.jetty:servlet-api:jar:2.5-20081211:test
+- commons-lang:commons-lang:jar:2.4:compile
+- org.slf4j:slf4j-log4j12:jar:1.6.1:test (scope not updated to runtime)
+- org.ow2.weblab.core:model:jar:1.2.2:compile
+- org.ow2.weblab.core:extended:jar:1.2.2:compile
+- org.ow2.weblab.core:annotator:jar:1.2.4:compile
+- org.apache.cxf:cxf-rt-frontend-jaxws:jar:2.4.0:compile
|  +- xml-resolver:xml-resolver:jar:1.2:compile
|  +- asm:asm:jar:3.3:compile
|  +- org.apache.cxf:cxf-api:jar:2.4.0:compile
|  |  +- org.apache.cxf:cxf-common-utilities:jar:2.4.0:compile
|  |  +- org.apache.ws.xmlschema:xmlschema-core:jar:2.0:compile
|  |  \- org.apache.neethi:neethi:jar:3.0.0:compile
|  |     +- wsdl4j:wsdl4j:jar:1.6.2:compile
|  |     \- org.codehaus.woodstox:woodstox-core-asl:jar:4.1.1:compile
|  |        \- org.codehaus.woodstox:stax2-api:jar:3.0.2:compile
|  +- org.apache.cxf:cxf-rt-core:jar:2.4.0:compile
|  |  +- com.sun.xml.bind:jaxb-impl:jar:2.1.13:compile
|  |  \- org.apache.geronimo.specs:geronimo-javamail_1.4_spec:jar:1.7.1:compile
|  +- org.apache.cxf:cxf-rt-bindings-soap:jar:2.4.0:compile
|  |  +- org.apache.cxf:cxf-tools-common:jar:2.4.0:compile
|  |  \- org.apache.cxf:cxf-rt-databinding-jaxb:jar:2.4.0:compile
|  +- org.apache.cxf:cxf-rt-bindings-xml:jar:2.4.0:compile
|  +- org.apache.cxf:cxf-rt-frontend-simple:jar:2.4.0:compile
|  \- org.apache.cxf:cxf-rt-ws-addr:jar:2.4.0:compile
+- org.apache.cxf:cxf-rt-transports-http:jar:2.4.0:compile
|  +- org.apache.cxf:cxf-rt-transports-common:jar:2.4.0:compile
|  \- org.springframework:spring-web:jar:3.0.5.RELEASE:compile
|     +- aopalliance:aopalliance:jar:1.0:compile
|     +- org.springframework:spring-beans:jar:3.0.5.RELEASE:compile
|     +- org.springframework:spring-context:jar:3.0.5.RELEASE:compile
|     |  +- org.springframework:spring-aop:jar:3.0.5.RELEASE:compile
|     |  +- org.springframework:spring-expression:jar:3.0.5.RELEASE:compile
|     |  \- org.springframework:spring-asm:jar:3.0.5.RELEASE:compile
|     \- org.springframework:spring-core:jar:3.0.5.RELEASE:compile
+- xalan:xalan:jar:2.7.1:compile
|  \- xalan:serializer:jar:2.7.1:compile
|     \- xml-apis:xml-apis:jar:1.3.04:compile
+- commons-logging:commons-logging:jar:1.1.1:compile
+- junit:junit:jar:4.8.2:test (scope not updated to compile)
\- javax.servlet:servlet-api:jar:2.4:provided