SolR 5:如何在一个核心中索引多个数据库

时间:2016-02-04 08:46:54

标签: solr solr5

我目前正在尝试将多个数据库(两个MySQL和一个PostgreSQL)索引到一个相同的索引中,以便在网站上进行研究。 我已经成功地在不同的Core(和不同的索引)上分别导入每个Mysql库。

编辑:问题是我为每个表都有一个id,这些表之间相互冲突。我怎么能说每个数据库都有不同的Solr ID?

代码

    <entity name="database1" dataSource="ds-database1" query="SELECT id, my_column FROM table_database1">
        <field column="id" name="id" />
        <field column="my_column" name="ts_my_column" />
    </entity>


    <entity name="database2" dataSource="ds-database2" query="
            SELECT id, column_example
            FROM table_database2" >
        <field column="id" name="id" />
        <field column="column_example" name="ts_columnsexample" />
    </entity>

1 个答案:

答案 0 :(得分:2)

使用DIH时,您可以使用TemplateTransformer在值前面添加内容,或者可以在SQL中执行此操作:

SELECT CONCAT('db_1_', id) AS id ...

..如果你需要更多关于转型的逻辑,你可以用ScriptTransformer来做。