Solr Clobtransfomer - PullRequest
       20

Solr Clobtransfomer

4 голосов
/ 21 декабря 2011

Я застрял с ClobTransformer в Solr за последние 3 дня. Я хочу преобразовать поле оракула в текстовое поле в Solr. Я использую несколько ядер, и я начал свои файлы конфигурации и схемы с нуля.

Это мой конфигурационный файл:

<lib dir="../../../dist/" regex="apache-solr-dataimporthandler-.*\.jar" />

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

Это столбцы в моем файле схемы для ядра:

<field name="id" type="string" indexed="true" stored="true" multiValued="false" required="true"/>
<field name="mandp" type="text_en_splitting" indexed="true" stored="true" multiValued="false" />

Это мой data-config.xml для ядра:

<dataConfig>
  <dataSource type="JdbcDataSource" 
              driver="oracle.jdbc.driver.OracleDriver"
              url="jdbc:oracle:thin:@***" 
              user="***"
              password="****"/>
    <document>
        <entity name="wiki" transformer="ClobTransformer"
                 query="Select t.id as id, t.mandp From table1 t">
            <field column="mandp" name="mandp" clob="true" />
        </entity>
    </document>
</dataConfig>

Когда я запускаю solr, я вижу, что файлы dataimporthandler * .jar успешно загружены в консоль. Когда я запускаю импорт данных из http://localhost:8983/solr/wiki/dataimport?command=full-import&clean=false, я не вижу никаких ошибок в консоли и не вижу ничего, связанного с трансформатором или сабом. Таким образом, если я введу что-либо в свой параметр преобразователя (transformer = "bla bla bla"), это не вызовет никаких ошибок в консоли, что может означать, что мой аргумент преобразователя полностью игнорируется или полное ведение журнала отключено.

Когда я запрашиваю solr, я вижу oracle.sql.CLOB@375c929a в поле mandp. Конечно, ничего не произойдет, если я тоже использую класс HTMLStripTransformer. Я хочу использовать оба в этом поле.

Любые идеи приветствуются !!!

Ответы [ 2 ]

4 голосов
/ 21 декабря 2011

Похоже, что ClobTransformer не запущен. Я бы лично изменил имя столбца mandp внутри запроса следующим образом:

Select t.id as id, t.mandp as mandp From table1 t
0 голосов
/ 14 ноября 2014

пожалуйста, добавьте transformer = "ClobTransformer, RegexTransformer" к объекту в файле data-config.xml

...