Solr Nutch细分市场磁盘空间需求快速增长

Solr Nutch细分市场磁盘空间需求快速增长,solr,web-crawler,nutch,Solr,Web Crawler,Nutch,我正在运行Nutch(1.16)/Solr(8.5.1)爬行索引系统。我使用大约26000个URL作为种子列表,到目前为止,我已经用/bin/crawl-I-s./URLsdata500索引了约100万页。今天早上,segments文件夹已经增长到120GB,这对于一百万页来说似乎太多了。我每1亿页阅读1TB是一个粗略的空间指南,所以我的运行速度是单是片段的10倍。我还读到我可以删除这些片段,如果它们已经合并到Solr中,并且长期只需要linkdb和ScrawlDB。但可悲的是,导致这一结论的对

我正在运行Nutch(1.16)/Solr(8.5.1)爬行索引系统。我使用大约26000个URL作为种子列表,到目前为止,我已经用
/bin/crawl-I-s./URLsdata500
索引了约100万页。今天早上,segments文件夹已经增长到120GB,这对于一百万页来说似乎太多了。我每1亿页阅读1TB是一个粗略的空间指南,所以我的运行速度是单是片段的10倍。我还读到我可以删除这些片段,如果它们已经合并到Solr中,并且长期只需要linkdb和ScrawlDB。但可悲的是,导致这一结论的对话缺失了

我删除了segments文件夹,并再次开始了这个过程,以获得干净的数字,而不会有测试运行中的遗留问题。在将另外250.000页添加到Solr索引后,segments文件夹再次增长到40GB

所以我的问题是:

  • 当迭代合并到Solr中时,我通常可以删除段文件吗
  • 为什么它们不会被自动删除。就目前情况而言,我需要每隔几天清空那个文件夹
  • 是否有某种方法可以防止段增长过快或更好?是否有某种设置可以在Solr中建立索引后自动删除段
  • 我的细分市场增长如此之快,似乎是在做一些根本错误的事情
  • 如果需要的话,我可以提供配置文件,但是我运行的配置非常普通。我将抓取线程增加到25个,可用RAM增加到24GB

  • 当迭代合并到Solr中时,我通常可以删除段文件吗
  • 是,如果您不想将该段用于其他目的

  • 为什么它们不会被自动删除
  • bin/crawl
    是一个shell脚本,很容易根据需要进行调整,只需在循环中添加命令
    rm-rf“$crawl\u PATH”/segments/$SEGMENT
    。但您也可以从昨天删除段(段名称是时间戳)。有时,如果出现问题,您需要检查该段以找出哪里出了问题

  • 有什么方法可以防止细分市场增长如此之快
  • 如果您不需要爬网页面的原始内容(HTML,也包括PDF等),那么可以在抓取步骤中解析文档。这通常更快,并且节省了段中的空间,因为只存储解析的文本和元数据。这是通过以下方式配置的:

    • 将属性
      fetcher.parse
      设置为true
    • fetcher.store.content
      为false和
    • 在脚本
      bin/crawl
      中删除(注释掉)解析步骤
    ApacheNutch更像是一个构建爬虫程序的工具箱,所以没有单一的方法来使用它。但是bug报告和建议总是受欢迎的

  • 当迭代合并到Solr中时,我通常可以删除段文件吗
  • 是,如果您不想将该段用于其他目的

  • 为什么它们不会被自动删除
  • bin/crawl
    是一个shell脚本,很容易根据需要进行调整,只需在循环中添加命令
    rm-rf“$crawl\u PATH”/segments/$SEGMENT
    。但您也可以从昨天删除段(段名称是时间戳)。有时,如果出现问题,您需要检查该段以找出哪里出了问题

  • 有什么方法可以防止细分市场增长如此之快
  • 如果您不需要爬网页面的原始内容(HTML,也包括PDF等),那么可以在抓取步骤中解析文档。这通常更快,并且节省了段中的空间,因为只存储解析的文本和元数据。这是通过以下方式配置的:

    • 将属性
      fetcher.parse
      设置为true
    • fetcher.store.content
      为false和
    • 在脚本
      bin/crawl
      中删除(注释掉)解析步骤
    ApacheNutch更像是一个构建爬虫程序的工具箱,所以没有单一的方法来使用它。但是bug报告和建议总是受欢迎的