Table Of Contents

Previous topic

Gestió de media

Next topic

Visualització

This Page

Ús del Solr

Solr és un motor de cerca sobre els documents indexats, més característiques per categorització i filtrat de resultats. Utilitzar Solr adequadament és primordial per tal de proveir als usuaris d’un accés fàcil als objectes ontològics. Solr no hauria de ser utilitzat directament, sino a través del serveis REST que parteixen de les especificacions de mapeig JSON (ja esmentades a la Configuració).

Clear

Neteja totes les dades indexades.

Ruta servei: http://{host:port}/{appname}/solr/clear
Mètode HTTP: GET
Retorna: "success" o "error"

Commit

Realitza commit (innecessari ja que és automàtic)

Ruta servei: http://{host:port}/{appname}/solr/commit
Mètode HTTP: GET
Retorna: media file

Schema

Genera el “schema” de la configuració de mapeig JSON.

Ruta servei: http://{host:port}/{appname}/solr/clear
Mètode HTTP: GET
Retorna: "success" o "error"

NOTA: El solr ha de ser reiniciat per tal de carregar el nou esquema.

Reload

Realitza una actualització (servei update del Solr) esborrant totes les dades prèvies. Aquest procés por trigar una mica.

La indexació Solr resultant es desa a l’arxiu: (SOLR_PATH)/data.xml

Ruta servei: http://{host:port}/{appname}/solr/reload
Mètode HTTP: GET
Retorna: "success" o "error"

Update

Realitza una actualització (servei update del Solr) de l’index amb els objectes actualitzats o introduïts en els darrers M minuts (per defecte són 60 minuts).

La indexació Solr resultant es desa a l’arxiu: (SOLR_PATH)/data.xml

Aquest servei no actualitza a l’index els objectes eliminats, per reflectir això cal crider el servei “reload”

Ruta servei: http://{host:port}/{appname}/solr/update?time=MINUTS
Mètode HTTP: GET
Retorna: "success" or "error"

Autocomplete

Realitza un autocompletar donada una cadena de text. El JSON resultat ve directament del motor Solr.

Ruta servei: http://{host:port}/{appname}/solr/autocomplete?s=Search
Mètode HTTP: GET
Retorna: Resultat JSOn o "error"

“s” Paràmetre de cerca que contindrà la cadena de text

Example d’autocompletar

http://internetdomain.org/ac/solr/autocomplete?s=Ja

Resultat OK

{
    + "responseHeader": { ... },                    // Irrellevant
    + "response": { ... },                          // En autocompletar la resposta principal també és irrellevant
    - "facet_counts": {

         - "facet_fields": {
                - "Birth": [ ]
                - "Country": [
                    + "Jamaica","1",
                    + "Japan","1",
                 ]
                - "Person": [
                    + "Jack the ripper","1",
                    + "James Bond","1",
                    + "James Franco","1"
                    + "James Stewart","1"
                 ]
            }
        }
}

Fixa’t que en la cerca d’autocompletar, els resultats “facet” comprenen els camps marcats com “autocomplete” al mapping.json (veure Configuració).

Configuracions de cerca

És possible personalitzar modes de cerca des del servidor. Això es fa editant o creant l’arxiu search.json al directori CONFIGURATIONS_PATH/mapping/. Configurar cerques permet afegir filtrat addicional a les peticions del client per focalitzar els resultats a una vista particular. Suposem que volem que les cerques focalitzin només a persones i països, i per neixements entre 1900 i 1950. L’adequada configuració del search.json quedaria així:

{
    "name":"mycustomsearch"
    "type":"search",
    "value":["ObjectType:Person", "ObjectType:Country", "Birth:[1900 TO 1950]" ]
},

{
    "name":"default"
    "type":"search"
    // cerca per defecte, es pot deixar en blanc si no volem filtrat adicional
}

Per usar aquesta configuració, utilitzem el paràmetre “config” amb valor “mycustomsearch”

Example Cerca

http://internetdomain.org/ac/solr/search?s=James&config=mycustomsearch

Si la configuració no s’especifica, l’utilitza la configuració “default”. Si no hi ha el fitxer search.json, no hi ha filtrat adicional.

Per obtenir les configuracions de cerca disponibles, es pot utilitzar el següent servei:

Ruta servei: http://{host:port}/{appname}/solr/configuration
Mètode HTTP: GET
Retorna: Resultat JSON o "error"