RangeRequest
Range函数的请求Message类
声明
class RangeRequest(RangeRequest self, buffer key = nil, buffer rangeEnd = nil, int limit = 0, int revision = 0, int sortOrder = 0, int sortTarget = 0, bool serializable = false, bool keysOnly = false, bool countOnly = false, int minModRevision = 0, int maxModRevision = 0, int minCreateRevision = 0, int maxCreateRevision = 0)
参数
参数名 | 描述 |
---|---|
self | |
key | key 是范围的第一个键。 如果没有给出 range_end,则请求只查找键。 |
rangeEnd | range_end 是请求范围的上限 [key, range_end) 。如果 range_end 为 '\0',则范围是所有键 >= key.如果 range_end 是键加一(例如,“aa”+1 == “ab”,“a\xff”+1 == “b”),则Range请求获取所有以 key 为前缀的键。 如果 key 和 range_end 都是 '\0',那么 range 请求返回所有的 key。 |
limit | limit 是对请求返回的键数的限制。 当 limit 设置为 0 时,它被视为无限制。 |
revision | 修订是用于指定查询键值的revision。如果revision小于或等于零,则Range返回最新的键值存储。如果修订已被压缩,则 ErrCompacted 作为响应返回。 |
sortOrder | 返回结果的排序方式 NONE = 0; // default, no sorting ASCEND = 1; // lowest target value first DESCEND = 2; // highest target value first |
sortTarget | sort_target 是用于排序的键值字段。 KEY = 0; VERSION = 1; CREATE = 2; MOD = 3; VALUE = 4; |
serializable | 可序列化设置Range请求以使用可序列化的成员本地读取。 Range请求默认是线性化的; 线性化请求比可序列化请求具有更高的延迟和更低的吞吐量,但反映了集群当前的共识。 为了获得更好的性能,为了换取可能的陈旧读取,可在本地提供可序列化的Range请求,而无需与集群中的其他节点达成共识。 |
keysOnly | 设置时的 keys_only 仅返回键而不是值。 |
countOnly | count_only 设置时仅返回范围内键的数量。 |
minModRevision | min_mod_revision 是返回的键值的修改revision下限; 所有具有较小修改revision的键都将被过滤掉。 |
maxModRevision | max_mod_revision 是返回的键值的修改revision上限; 所有具有较大修改revision的键都将被过滤掉。 |
minCreateRevision | min_create_revision 是返回的键创建revision的下限; 所有具有较小创建revision的键都将被过滤掉。 |
maxCreateRevision | maxCreateRevision 是返回的键创建revision的 上限; 所有具有较大创建revision的键都将被过滤掉。 |