В настоящее время у меня есть настройка db_data_config в solr, которая может легко выполнить полный импорт для нескольких баз данных.
Мой конфиг примерно такой:
<dataSource name="db1" driver="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="database1"/>
<dataSource name="db2" driver="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="database2"/>
<document name="items">
<entity name="item" pk="id" query="select id,description from ItemTable" dataSource="db1">
<field column="id" name="id"/>
<field column="description" name="description"/>
<entity name="itemprice" query="select price from PriceTable where id='${item.id}'" dataSource="db1">
<field column="price" name="price_db1_f"/>
</entity>
<entity name="itemprice" query="select price from PriceTable where id='${item.id}'" dataSource="db2">
<field column="price" name="price_db2_f"/>
</entity>
... etc for 'x' amount of times.
</entity>
</document>
Идея заключается в том, что существует одна основная БД хостинга, которая содержит всю необходимую нам информацию, но есть несколько баз данных с разными ценами для каждого товара.
Как лучше всего использовать deltaImport для захвата изменений в одной из баз данных дочерних объектов? ... I.E. если db2 имеет изменение цены, я бы хотел, чтобы моя дельта подобрала это изменение при запуске deltaImport.