删除快照时,不会删除我的ElasticSearch快照索引目录

时间:2017-03-24 09:39:56

标签: elasticsearch

在我的应用程序中,我们在ElasticSearch中使用每日索引。 每天,我们都会在我们的Snapshot存储库中创建前一天的快照。

几天后,我们删除了Elastic的索引,经过几天后,我们删除了快照。

然而,当我进入$my_snapshot_repositories_path/indices目录时,我仍然看到所有已快照的索引,而它们不再被快照列表API返回(并且meta-XXX和snap-XXX文件不是出现在这些快照的文件系统上)。 但是,所有的indices目录都不包含数据,只有5个空目录,名称为1,2,等等。

这是我的存储库文件层次结构内容:

index
indices
meta-backup_flux-2017.03.24.dat
meta-backup_flux-2017.03.25.dat
meta-backup_flux-2017.03.26.dat

这是索引目录文件层次结构内容:

flux-2017.03.23
flux-2017.03.24
flux-2017.03.25
flux-2017.03.26

他们的内容(所有这些目录都是空的):

drwxr-x--- 2 4096 Mar 31 12:00 0
drwxr-x--- 2 4096 Mar 31 12:00 1
drwxr-x--- 2 4096 Mar 31 12:00 2
drwxr-x--- 2 4096 Mar 31 12:00 3
drwxr-x--- 2 4096 Mar 31 12:00 4

最后,当我在indices目录中执行du -sh *时,我看到所有删除的索引权重都是24KB(Linux上6个目录的大小)。未删除的索引权重约为40MB。

有关信息,我用于搜索的弹性搜索索引存储在计算机上的其他位置。

我做错了吗?

我的ElasticSearch版本:2.4

这是我创建和删除快照的方式:

快照创建:

curl -s -H "Content-Type: application/json" -X PUT -d "{\"indices\": \"flux-2017.03.23\", \"ignore_unavailable\": false, \"include_global_state\": false}" http://0.0.0.0:9200/_snapshot/backup_flux/backup_flux-2017.03.23?wait_for_completion=true

快照删除:

curl -s -H "Content-Type: application/json" -X DELETE http://0.0.0.0:9200/_snapshot/backup_flux/backup_flux-2017.03.23

问候。

1 个答案:

答案 0 :(得分:0)

理想情况下,它应该...但是快速浏览一下ES Docs会显示以下内容:

可以使用以下命令删除存储库:

删除/ _snapshot / my_backup

删除存储库后,Elasticsearch仅删除对该存储库存储快照的位置的引用。快照本身保持不变并保留在适当位置。