工具

Atlas 修复索引

qianmoQqianmoQ· 更新于 2026-09-27· 阅读 4 分钟· 0 次阅读

登录后可跨设备保存划线和私人笔记登录

Atlas 索引修复

简介

本文档介绍 JanusGraph 的 Atlas 索引修复工具的使用方法,其中使用 HBase 作为后端数据存储,使用 Solr 作为索引存储。

该工具的必要性

在极少数情况下,实体创建时可能已将实体存入数据存储,但相应的索引却未在 Solr 中创建。由于 Atlas 的基本搜索在很大程度上依赖 Solr,这会导致搜索时无法返回该实体。请注意,高级搜索不受此影响。

位置

该工具是 Atlas 常规安装的一部分,位于 tools/atlas-index-repair 目录下。

执行工具的步骤

完全恢复

如果用户需要恢复所有索引,可以在不带任何命令行参数的情况下执行该工具来完成:

atlas-index-repair/repair_index.py

这将导致 vertex_index、edge_index 和 fulltext_index 被完全重建。建议在执行此恢复之前,先删除这些索引中的现有内容。

注意事项

请注意,完整索引修复是一个耗时的过程。根据数据量的大小,该过程可能需要数天才能完成。在恢复过程中,基本搜索功能将不可用。请务必为该活动预留足够的时间。

选择性恢复

要对某个 Atlas 实体执行选择性恢复,请指定该实体的 GUID:

atlas-index-repair/repair_index.py [-g <guid>]

示例:

atlas-index-repair/repair_index.py -g 13d77457-2a45-4e92-ad53-a172c7cb70a5

请注意,Atlas 将使用 REST API 来获取实体,因此需要根据安装环境配置正确的身份验证机制。

对于使用用户名和密码的 Atlas 安装,请使用:

atlas-index-repair/repair_index.py [-g <guid>] [-u <user>] [-p <password>]
  • guid:[可选] 指定需要更新索引的 guid
  • user:[可选] 指定 Atlas 实例的用户名
  • password:[可选] 指定 Atlas 实例的密码

示例:

atlas-index-repair/repair_index.py -u admin -p admin123 -g
    13d77457-2a45-4e92-ad53-a172c7cb70a5

对于使用 Kerberos 作为认证模式的 Atlas 安装,请执行以下操作:

  • 将以下内容添加到 repair_index.py 中的 DEFAULT_JVM_OPTS

    -Djavax.security.auth.useSubjectCredsOnly=false -Djava.security.auth.login.config=atlas_jaas.conf
  • kinit -kt /etc/security/keytabs/atlas.service.keytab atlas/fqdn@DOMAIN

对于使用 SSL 的 Atlas 安装,需要确保添加 Solr 证书或根 CA 证书,请使用以下 atlas-application 属性:

  • keystore.file {keystore jks 文件路径}
  • truststore.file {truststore jks 文件路径}
  • cert.stores.credential.provider.path {jceks 文件路径}

示例:

kinit -kt /etc/security/keytabs/atlas.service.keytab atlas/fqdn@EXAMPLE.com
    atlas-index-repair/repair_index.py -g 13d77457-2a45-4e92-ad53-a172c7cb70a5

评论

登录后参与评论

正在加载评论…