Почему у меня разные документы в статусе и индексе?
Поэтому я следую учебному пособию по Storm-Crawler-ElasticSearch и играю с ним.
Когда Kibana используется для поиска, я заметил, что число обращений к имени индекса "status" намного больше, чем "index".
Пример:
В левом верхнем углу вы можете увидеть, что по индексу "status" 846 обращений. Я предполагаю, что это означает, что он пролистал 846 страниц.
Теперь с индексом 'index' показано, что всего 31 попадание.
Я понимаю, что функционально индекс и статус различны, так как статус просто отвечает за метаданные ссылки. Проблема в том, что кажется, что StormCrawler анализирует многие страницы и не индексирует их.
Так что я хотел бы получить такое же количество показов по "индексу" с отображаемым контентом. Вместо всего 31.
2 ответа
Индекс "status" содержит информацию обо всех URL-адресах, которые сканер получил или обнаружил. Это примерно эквивалентно crawldb в Nutch. Индекс 'index' содержит страницы, которые были извлечены, проанализированы и, ну, в общем, проиндексированы.
Теперь, если вы посмотрите на поле "status" в индексе состояния, вы обнаружите, что есть разные значения, указывающие, был ли URL ОБНАРУЖЕН, ВЫБРАН и т. Д. См. WIKI о статусе потока. Те, которые помечены как DISCOVERED, еще не получены и поэтому не могут быть в индексе index. Если вы фильтруете содержимое индекса состояния по статусу:FETCHED, вы должны увидеть число, сопоставимое с целевым индексом.
Модуль Elasticsearch в SC содержит шаблоны для kibana, которые позволяют увидеть разбивку URL-адресов по статусу. Если вы еще этого не сделали, я бы порекомендовал вам посмотреть видеоуроки на Youtube.
Так что я хотел бы получить такое же количество показов по "индексу" с отображаемым контентом. Вместо всего 31.
Это в конечном итоге дойдет, вам просто нужно дать сканеру время, чтобы он выполнил свою работу (и сделал это вежливо). Помните, что сканер обнаруживает URL-адреса быстрее, чем их получает. Прежде чем спросить о скорости, пожалуйста, прочитайте FAQ.
Перенаправления и ошибки Fetch - еще одна возможная причина различий. Они существуют в индексе статуса, но не в индексе контента.