1

我目前正在尝试将多个数据库(两个 MySQL 和一个 PostgreSQL)索引到一个相同的索引中,以便对网站进行研究。我已经成功地在不同的核心(和不同的索引)上分别导入了每个 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>
4

1 回答 1

2

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

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

.. 或者如果您需要更多关于转换的逻辑,您可以使用ScriptTransformer来完成。

于 2016-02-04T11:51:44.857 回答