有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java需要帮助重新构建和优化大型solr索引

我有一个可用的Solr索引,但我需要帮助重新设计它,使其更小、更快、资源密集度更低

当前:

  • 一个指数保存了过去10年的数据
  • 每天有5千个新的文本文件被编入索引
  • 索引大小每年约为40GB,因此10年加起来为400GB

要求:

  • 每晚使用新文件更新索引的能力
  • 能够从src文件重建索引-希望能加快速度
  • 能够保持当前大量的刻面字段(30个左右)
  • 能够保持“突出显示”-因此可以显示提取的文档中的文本

问题:

  1. 从头开始重建索引时,有哪些折衷(构建时间、内存需求、处理需求)以及何时发出“提交”和“优化”?:

    • 构建一个单一的10年指数(在构建期间难以分发)
    • 每年建立1个索引-然后合并它们
    • 每月、每周或每天构建1个索引,然后将它们合并在一起
  2. 如何合并(折衷是什么):

    • 使用cmd行lucene索引合并工具,或solr的web实例,或JavaAPI
    • 合并时间需要多少临时磁盘空间(除了源索引+最终索引大小)
    • 合并是否需要内存
    • 一次合并两个更好还是同时合并所有
    • 有没有办法让lucene cmd行索引合并工具输出进度
  3. 如何运行索引:

    • 一个大索引
    • 切分指数-多核心-每年在自己的核心
  4. 如何应用每日更新:

    • 应用于主索引
    • 创建新的每日核心作为新的碎片,而不是合并
    • 创建新的每日核心,并将每日核心与完整索引合并
  5. 内存、磁盘和CPU的注意事项是什么?您认为单机需求是什么(对于开发/原型环境,而不是互联网规模的生产)

  6. 我需要不断强调。有没有办法不存储文本字段,或者缩小??在不删除在搜索结果中突出显示的功能的情况下减少最终索引的大小

共 (1) 个答案