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 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题