Guia de Indexação SOLR

De IBICT
Edição feita às 10h45min de 8 de maio de 2015 por Ronniebrito (disc | contribs)

(dif) ← Edição anterior | ver versão atual (dif) | Versão posterior → (dif)
Ir para: navegação, pesquisa


Índice

Apagar todo o índice

./vufind.sh stop
sudo rm -rf solr/biblio/index solr/biblio/spell*
./vufind.sh start

Indexar um novo conjunto de metadados

Criar um arquivo .properties

/usr/local/vufind2/import# cp ojs.properties revistarSEER.properties 

Definir a diretriz xslt no arquivo .properties indicando o arquivo que contém com as tranformações de metadados necessárias

 xslt = ojs.xsl 

Criar o arquivo .xsl

Adicionar transformação de metadado

/usr/local/vufind2/import/xsl$ pico revistasSEER.xsl

por exemplo, atribuir ao campo SOLR title_language o valor do campo dc:language

    <!-- TITLE_LANGUAGE -->
                <xsl:if test="//dc:title/@xml:lang" >
                        <xsl:if test="string-length() > 0">
                            <field name="title_language">
                                <xsl:value-of select="concat(
                                 php:function('VuFind::mapString', normalize-space(string(//dc:title[1]/@xml:lang)), 'language_map_iso639-1.properties'),'|',
                                 php:function('VuFind::mapString', normalize-space(string(//dc:title[2]/@xml:lang)), 'language_map_iso639-1.properties'),'|',
                                 php:function('VuFind::mapString', normalize-space(string(//dc:title[3]/@xml:lang)), 'language_map_iso639-1.properties'),'|',
                                 php:function('VuFind::mapString', normalize-space(string(//dc:title[4]/@xml:lang)), 'language_map_iso639-1.properties'))" />
                            </field>
                        </xsl:if>
                </xsl:if>


Adicionar um novo campo ao schema do SOLR

/usr/local/vufind2/solr/biblio/conf# vi schema.xml

e adicionar um novo registro

<field name="title_language" type="string" indexed="true" stored="true" multiValued="true"/>

Criar uma faceta a partir de um campo texto

Adicionar ao schema um campo do tipo "textFacet"

<field name="title_languageStr" type="textFacet" indexed="true" stored="false"/>

Copiar o arquivo facets.ini para a pasta

/usr/local/vufind2/config/vufind# cp facets.ini ../../local/config/vufind/

Editar o arquivo e adicionar a diretiva

title_languageStr = "Idioma Titulo"

Em seguida limpar o cache do template Zend, apagando o conteudo das pastas em /usr/local/vufind2/local/cache

Importar os registros individuais

php import-xsl.php ../local/harvest/12/1423749202_oai_ojs_www_abhr_org_br_article_582.xml revistarSEER.properties

Importar um diretorio inteiro

source /etc/profile 
/usr/local/vufind2/harvest# ./batch-import-xsl.sh ../local/harvest/REVISTAS ../import/revistarSEER.properties

Reiniciar o VUFind

Isso recarregar os novos metadados

./vufind.sh restart

http://labcoat.ibict.br:8080/solr/#/

Reiniciar a base do SOLR

 
/usr/local/vufind2/solr/biblio# rm -R index/