在ElasticSearch中比较索引中的文档时检测更改

时间:2018-09-25 15:24:21

标签: elasticsearch elastic-stack

我正在使用弹性搜索将网站抓取数据存储在一个索引中。文档看起来像这样:

{"crawl_id": 1, url": "http://www.example.com", "status": 200}
{"crawl_id": 1, url": "http://www.example.com/test", "status": 200}
{"crawl_id": 2, url": "http://www.example.com", "status": 200}
{"crawl_id": 2, url": "http://www.example.com/test", "status": 500}

我将如何比较2个不同的爬网?例如 当我将crawl_id 2与crawl_id 1进行比较时,我想知道哪些页面已将其状态码从200更改为500,在crawl_id 2中。

我想获取文档列表,但还要汇总这些结果。 例如,一页从200变为500。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

为此,我将使用parent/child documents。父母代表每个网址,孩子代表每个不同的抓取事件。然后,我将通过搜索子代来选择父代(我会忽略此功能是否仍保留或其名称已更改为join data types)。

我还要看看document versions,看看哪个更适合我的要求。