У нас есть база данных MySql (новости), которая имеет следующие поля - posting_id, дата, имя, валюта, страна, срок действия .... и т. Д.
База данных содержит более 1200000 записей.Ежедневно добавляется около 200000 плюс новые записи и удаляется примерно одно и то же число.
posting_id является уникальным идентификатором для каждой записи.
Пожалуйста, помогите написать сценарий дельта-импорта, чтобы индексфайл обновляется в соответствии с записями в базе данных MySql (новости) каждый день.Если posting_id не найден в базе данных (новостях), то то же самое удаляется из индексированного файла solr, а записи с новым posting_id индексируются.
Следующее не работает
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
batchSize="-1"
autoReconnect="true"
socketTimeout="0"
connectTimeout="0"
url="jdbc:mysql://xxxx/livenews?zeroDateTimeBehavior=convertToNull"
user="admin"
password="admin"/>
<document>
<entity name="news"
pk="id"
query="select * from news"
deltaImportQuery="SELECT * from news WHERE id='${dih.delta.id}'"
deltaQuery="SELECT id FROM news WHERE updated_at > '${dih.last_index_time}'"
>
<field column="posting_id" name="posting_id"/>
<field column="date" name="date"/>
<field column="name" name="name"/>
<field column="currency" name="currency"/>
<field column="country" name="country"/>
<field column="expiry" name="expiry"/>
</entity>
</document>
</dataConfig>```