我想创建一个数据库网络发布者。
Solr 搜索功能非常适合我的需求(分面搜索、全文搜索等)。
我的问题是我需要在网络上同步数据。
我读到 MySQL 数据库必须在 Solr 中导入。
我计划使用一个源 MSSQL 数据库,复制到 Web 服务器上的 MySQL 数据库上。我需要在这个数据库上使用 Solr。
是否有解决方案可以使复制的 SQL 数据库上的更改可以自动回显到 Solr 索引上?我不想每次修改时都导入整个数据库,这会使我的产品使用起来很复杂。
谢谢你。
我想创建一个数据库网络发布者。
Solr 搜索功能非常适合我的需求(分面搜索、全文搜索等)。
我的问题是我需要在网络上同步数据。
我读到 MySQL 数据库必须在 Solr 中导入。
我计划使用一个源 MSSQL 数据库,复制到 Web 服务器上的 MySQL 数据库上。我需要在这个数据库上使用 Solr。
是否有解决方案可以使复制的 SQL 数据库上的更改可以自动回显到 Solr 索引上?我不想每次修改时都导入整个数据库,这会使我的产品使用起来很复杂。
谢谢你。
您不需要每次都索引完整的数据库,这就是Delta 导入的用途。您只需将其配置为在需要时导入增量。
您可以使用DataImportScheduler来保持数据同步。这是保持 Solr 索引同步的最常用方法。
还有其他方法,您可以在数据库中设置触发器来触发 Solr 的 REST 服务,该服务将反映所有插入/更新/删除文档的更改。
此外,由于 db (通常)用于处理某些应用程序,您可以设置一个过滤器(Java Web 应用程序的 javax.servlet)来拦截请求并将它们推送到 Solr,甚至在它们到达数据库之前。