skambc 2015-03-04 07:15 采纳率: 0%
浏览 1654

solr设计大数据量索引删除问题

solr索引了大量数据,随着时间的累积,数据量越来越大,根据时间来删除历史数据,用deletebyquery来删除的话
,执行时间过长,最后optimize的时间也很长,易用性不是很好。有什么好的方法来解决删除历史索引这个问题吗?

  • 写回答

1条回答 默认 最新

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2023-02-26 12:25
    关注

    该回答引用ChatGPT

    Solr索引中删除历史数据的方法取决于许多因素,例如您的数据量、硬件配置和性能需求等。以下是一些可供参考的解决方案:

    • 使用Solr索引分片
      您可以将Solr索引分成多个片段,然后只需删除需要的片段,而不是整个索引。这种方法的好处是可以显着降低删除操作的执行时间,并且可以减少optimize的时间。这种方法需要在Solr配置中进行设置。
    • 使用Solr索引回滚
      Solr索引回滚是一种快速恢复索引的方法。当你删除历史索引时,可以先创建一个索引快照,然后在删除操作失败或需要恢复时,可以使用回滚操作快速恢复到快照状态。这种方法需要在Solr配置中进行设置。
    • 使用Solr索引副本
      如果您的Solr集群中有多个节点,则可以创建多个索引副本,使得您可以在不影响生产环境性能的情况下进行历史数据删除。您可以在副本节点上执行删除操作,以便在主节点上继续提供服务。这种方法需要在Solr配置中进行设置。
    • 使用Solr软删除
      Solr软删除是一种不实际删除文档,而是将其标记为删除状态的方法。这种方法不会立即从索引中删除数据,但是可以通过重新索引或optimize操作来彻底删除数据。这种方法的好处是可以更快地执行删除操作,而不需要等待optimize完成。

    需要注意的是,这些解决方案可能需要在Solr配置中进行设置和调整,以适合您的需求和环境。您可以根据您的具体情况选择最合适的方法。

    评论

报告相同问题?

悬赏问题

  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥30 求解达问题(有红包)