出于性能原因清除铲斗是否重要?

问题描述 投票:1回答:2

我的应用程序不断将文档插入存储桶。它永远不会删除它们,假设数据一旦达到分配给桶的最大ram限制就会旋转。

但是满桶对数据检索的速度有什么影响?我是否需要确保在不再需要文档以保持性能时将其删除? Ephermal和Couchbase桶之间在这方面有区别吗?

couchbase
2个回答
0
投票

假设数据一旦达到分配给桶的最大ram限制就会旋转

这是一个很好的假设。你应该在继续之前测试它。如果数据库一旦达到极限就停止接受新文件,我就不会感到惊讶了。


0
投票

这是一个非常广泛的问题,我建议阅读Couchbase Server文档。这是一个快速TL; DR:

Couchbase Server中有三种类型的buckets,每种类型在充满时表现不同。

Couchbase Bucket

Couchbase Bucket将文档写入磁盘并将其缓存在内存中。它有两种不同的喷射模式;仅限价值和全额。仅限值模式仅从内存中删除文档的值,其中full可以从内存中删除文档的值和元数据。这意味着配置了仅限值弹出的Couchbase存储桶可以变满并停止接受写入,这在完全弹出时不会发生。如果Document不在内存中,它将从较慢的磁盘中获取。

短暂的斗

临时存储桶只将文档存储在内存中,可以看作是memcached存储桶的替代品。可以控制铲斗满载时的行为方式,有两种模式。没有弹出 - 没有数据弹出,而是新写入被拒绝。在这种情况下,由应用程序来删除数据。基于最近使用的算法删除NRU弹射数据。在这两种情况下,当存储桶从Couchbase服务器视图点填满时,性能不会下降。从应用程序的角度来看,由于必须从另一个源获取数据,因此可能会出现性能损失。

Memcached Bucket

在这种情况下,当存储桶已满时,memcached存储桶的行为就像具有NRU弹出的临时存储桶。临时存储桶比memcached存储桶有许多改进,应该使用它们。

© www.soinside.com 2019 - 2024. All rights reserved.