首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当硬盘空间可用时,可用写入块的空闲时间百分比较小

当硬盘空间可用时,可用写入块的空闲时间百分比较小
EN

Stack Overflow用户
提问于 2017-12-13 18:25:27
回答 2查看 234关注 0票数 2

我们发现了这个问题。配置如下:

代码语言:javascript
复制
Aerospike version : 3.14
Underlying hard disk : non-SSD

Variable Name   Value
memory-size 5 GB
free-pct-memory 98 %
available_pct   4 %
max-void-time   0 millisec
stop-writes 0
stop-writes-pct 90 %
hwm-breached    true
default-ttl 604,800 sec
max-ttl 315,360,000 sec
enable-xdr  false
single-bin  false
data-in-memory  false

有人能帮我们解决这个问题吗?这可能是什么潜在的原因?

EN

回答 2

Stack Overflow用户

发布于 2017-12-14 02:21:43

Aerospike仅写入空闲块。一个块可以包含任意数量的符合条件的记录。如果您的写/更新模式使得一个块永远不会低于50%的活动记录(碎片整理的默认阈值:defrag-lwm-pct),那么您就有一堆无法利用的“空”空间。在managing storage页面上阅读有关碎片整理的更多信息。

对于看不到任何写入的集群,从这种情况下恢复要容易得多。您可以增加碎片整理-lwm-pct,以便更多数据块符合条件并进行碎片整理。

另一个原因可能是硬盘速度不够快,无法跟上碎片整理的步伐。

您可以在Aerospike KB - Recovering from Available Percent Zero中阅读有关可能的分辨率的更多信息。不要读过“在节点上停止服务...”

票数 3
EN

Stack Overflow用户

发布于 2017-12-14 07:17:48

您基本上没有对持久性存储设备(每个节点75 per )进行碎片整理。从您发布的快照中,您在3个节点上有大约100万条记录,其中2100万条记录已过期。因此,看起来您正在使用非常短的ttl写入记录,而碎片整理无法跟上。

当您处于以下状态时,您是否可以发布几行的输出:

代码语言:javascript
复制
$ grep defrag /var/log/aerospike/aerospike.log

$ grep thr_nsup /var/log/aerospike/aerospike.log

您的写入/更新负载是多少?我怀疑您只是在创建简短的ttl记录和读取,而不是更新。

根据您正在做的事情,增加defrag-lwm-pct实际上可能会使情况变得更糟。我也会调整nsup-delete-sleep从100微秒的默认值,但这将取决于您的日志greps上面显示什么。所以把它们张贴出来,让我们看看。

(编辑:此外,即使在持久性存储上超过50%的HWM,您也看不到驱逐的事实,这意味着您的nsup线程需要很长时间才能运行。这再次指向需要为您的设置调整的nsup-delete-sleep值。)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47790686

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档