2012-09-04 20 views
7

Ho un SolrCloud configurato in questo modo: exploration of SolrCloud, la differenza è che io uso Solr 4.0.0 Beta. Poco configurazione:Configura DataImportHandler in SolrCloud con ZooKeeper

  • ZooKeeper sulla porta predefinita 2181
  • 3 istanze di Solr esecuzione su porte diverse

Questo è solo a scopo di test. La configurazione desiderata è con 3 istanze di ZooKeeper (una per ogni istanza Solr). Riesco a indicizzare alcuni file XML con il comando curl.

Domande:

  1. Come posso configurare DIH/collezione? Sono riuscito a cambiare il solrconfig.xml (config per dataimport-handler), aggiungere in lib il driver corretto per la connessione DB, ma in solr admin ottengo "mi dispiace, nessun gestore di dataimport definito!" Le modifiche possono essere guardate in zookeeper (vedo il file data_config.xml) e nel pannello di amministrazione di solr posso vedere la versione aggiornata di solrconfig.xml.

  2. Qualsiasi buon tutorial per una distribuzione di produzione di solrcloud (con una specie di configurazione voluta menzionata prima) su una macchina singola o multipla per Ubuntu 12.04 LTS?

Qualsiasi consiglio sarebbe apprezzato! Grazie in anticipo!

risposta

4

Normalmente la configurazione DIH non ha nulla a che fare se si sta utilizzando una singola istanza Solr o più istanze in una configurazione di solrCloud. DIH scriverà i dati nell'indice Lucene dell'istanza corrente, quindi spetterà a zooKeeper di spingerlo in giro sulle altre istanze.

Assicurarsi che il DIH è propertly configurato:

In solrconfig.xml, tutte le librerie necessarie sono caricati. Questo significa che i due vasi DIH:

<lib dir="../../../dist/" regex="solr-dataimporthandler-4.3.0.jar" /> 
<lib dir="../../../dist/" regex="solr-dataimporthandler-extras-4.3.0.jar" /> 

così come gli altri vasetti potrebbe essere necessario (come database driver JDBC, ecc).

Ancora in solrconfig.xml assicurarsi che il gestore DIH è dichiarato, qualcosa di simile:

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> 
    <lst name="defaults"> 
     <str name="config">data-config.xml</str> 
    </lst> 
</requestHandler> 

Infine, il file di configurazione avete dichiarato nel gestore DIH (dati-config.xml) dovrebbe essere nel stessa dir "conf" come solrconfig.xml e dovrebbe avere un contenuto adeguato, qualcosa come:

<dataConfig> 

<dataSource type="JdbcDataSource" name="myDataSource" driver="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@someHost:1521:someDb" user="someUser" password="somePassword" batchSize="5000"/> 

<document name="myDoc" > 
    <entity name="myDoc" dataSource="myDatasource" transformer="my.custom.Transformer" query="select col1, col2, col3 from table1 where whatever" /> 
</document> 

</dataConfig> 
+1

Sì, questo funziona anche per me. Ho usato solr per anni, ma standalone lo ha sempre tagliato per me. ora che non funziona, solr cloud è nuovo per me. Ho trovato difficile fare in modo che il bridge capisse che la configurazione è memorizzata nella struttura del file zookeeper. –

Problemi correlati