如何在OpenSearchServer 1.4中的爬虫数据库中创建SQL Update

时间:2014-12-30 01:23:15

标签: database search web-crawler server

1)我们已经使用" sql select"配置了一个爬虫。创建索引,一切都可以 我们可以抓取一个使用oss搜索。

我们使用此请求:

SELECT   concat(archive.dossier.numero,archive.cote_plan_classement.id) idsearch,  
        archive.dossier.titre,
        archive.dossier.numero,
        archive.dossier.type_id,
        archive.dossier.cote_id,
        archive.cote_plan_classement.id pc_code_id,
        archive.cote_plan_classement.label acpc_label,
        archive.cote_plan_classement.note acpc_note
FROM archive.dossier;
left outer join archive.cote_plan_classement
on archive.cote_plan_classement.id = archive.dossier.cote_id;

2)我们的问题是" sql update"请求在爬虫 我们不知道配置它

我们希望在数据更改时更新索引,只更新数据,而不是所有索引

你可以帮帮我吗? 你有解决方案吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

“SQL Update”实际上是用于在爬网过程运行时更新数据库。例如,您可以选择在每个爬网的特定表中插入当前日期。

我们经常做的是配置两个抓取过程:

  • 一个完整的,每晚或每周运行
  • 一个增量,经常运行。此过程使用特定的WHERE子句。对于 运行只会索引最后一个数据的进程的示例 一天,对于PostgreSQL:SELECT ... WHERE mod_date > current_date - 1 (如果列“mod_date”包含最后修改日期)

此处未使用“SQL Update”。

另一方面,您可以非常经常地运行爬网过程,并在WHERE中添加一个测试,您只能获取其mod_date在您在上一次爬网期间插入特定表的日期之后的文档,这要归功于“SQL”更新“功能。

每次对数据库进行修改时,您还可以选择通过API启动数据库爬网过程。您将在此页面上找到通过API运行数据库搜寻器的文档:http://www.opensearchserver.com/documentation/faq/crawling/how_to_use_variables_with_database_crawler.md(您还将学习如何使用变量,这可能非常有用)。

亚历山大