如果有路径集(path.data),如何在elasticsearch中存储分片?

时间:2013-02-24 07:50:42

标签: path elasticsearch

我有一个节点elasticsearch集群,并使用两个存储shadrs的路径对其进行配置,例如path.data:/partone,/parttwo。 1 GB硬盘安装在/ partone文件夹上,5 GB硬盘安装在/ parttwo文件夹中。我使用了大约483 MB的文件来索引,然后在这个节点中出现了536644个文档。当我删除/ partone文件夹中的孔文件时,文档数变为531833.这意味着一些文档存储在/ partone文件夹中。

我从elasticsearch网站上读到如下: 多个数据位置允许对其进行条带化。条带化很简单,将整个文件放在其中一个位置,并根据具有最大可用空间的位置决定放置文件的位置。

我的问题是如果条带化是基于具有最大可用空间的位置,则孔文件应存储在parttwo文件夹中,其大小比partone文件夹大,不是吗?为什么在folderone中存在一个小文件?

1 个答案:

答案 0 :(得分:0)

您引用的段落是指实际的Lucene索引。有一些与ES如何执行复制有关的细节,也可以存储在较小的驱动器上。那些被清除的ES将数据刷新到Lucene。例如,使用-Des.path.data=/d/data/foo,/tmp/foo,在将维基百科索引几分钟并执行-XPOST /_flush后,我看到:

% du -ks /d/data/foo /tmp/foo
205680  /d/data/foo
776     /tmp/foo
% df -h /d/data/foo /tmp/foo
Filesystem                     Size  Used Avail Use% Mounted on
/dev/sda5                      294G   28G  251G  10% /d
/dev/disk/by-uuid/074cc648...  106G   91G   11G  90% /

然而,我很惊讶,在删除了/partone中的某些文件之后,您可以对文档进行统计。我删除/tmp/foo后,我的索引无效。