Cores and Indexes

This chapter looks at the cores that are part of the smart.finder standard delivery. They define the structure of the individual indexes as well as the way of searching. The schema files of the individual cores that describe the index can be found under:

/solr.home/<CoreName>/conf/schema.xml

A core represents a single index and its associated transaction log and configuration files (including solrconfig.xml and schema files). An Apache Solr installation can have multiple cores if required, allowing you to index data with different structures on the same server and retain more control over how your data is presented to different audiences.

For more information on schema design, see Apache Solr documentation .

Cores of the standard delivery

The basic delivery of smart.finder consists of a Default Core, a Smart Search Core and a Indexing Management Core.

Core core0

Core0 of the smart.finder is designed for a variety of use cases and can be extended or modified as needed. In the standard delivery, this is the default core.

The schema is derived from the DCMI Metadata Terms of the Dublin Core Initiative , which also includes the Dublin Core Metadata Element Set, Version 1.1, a.k.a ISO 15836 . These Dublin Core metadata elements form the basis of the initial smart.finder schema for indexing all resources.

The scheme and the way it is indexed are extensively extensible and can be adapted to a variety of use cases. If you need changes or extensions to the schema or the indexing, please contact us. We will be happy to advise you on how the adaptations can be made.

This core is primarily intended for use with map.apps Smart Search. As new ArcGIS Server sources are indexed, you can extend the schema of this core as needed.

Core indexingmanagement

This core is used to manage the indexing jobs of the smart.finder. It is only used internally and should not be adapted or changed.

Individual cores

Besides the standard cores that are part of the delivery, you can create additional cores and use them. To be able to do this, a certain amount of knowledge about the structure of Lucene indexes is necessary.

Create a core

A Solr core consists of a set of configuration files, Lucene index files and the transaction log of Solr. All cores must be stored in the solr.home directory. The minimal structure is as follows:

/<core name>
    core.properties
    /conf
        /lang
            ...
        schema.xml
        solrconfig.xml
        tika-config.xml

To create a new core there are a number of possibilities:

When creating a new core, make sure that you define the mandatory fields in the schema. These are:

<field name="id" type="string" indexed="true" stored="true"  multiValued="false" required="true"/>
<field name="timestamp" type="date" indexed="true" stored="true"  multiValued="false" default="NOW"/>
<field name="_version_" type="long" indexed="true" stored="true"/>
<field name="relatedIndexJobId" type="string" indexed="true" stored="true"  multiValued="false" required="false"/>

Using the new core

You can now use the new core for indexing. To do this, go to the Job Manager and create a new indexing job. In the input mask of the indexing job, you can select the target index via the drop-down box 'Name of Index'. The new core is listed here for selection.

Use the following URL to be able to use the new search index in a map.apps app:

https://<yourserver>/smartfinder-search/<CoreName>