Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

大key拆分阈值bigkeythreshold单位是bit还是byte? #121

Open
yhxjack opened this issue May 19, 2023 · 4 comments
Open

大key拆分阈值bigkeythreshold单位是bit还是byte? #121

yhxjack opened this issue May 19, 2023 · 4 comments

Comments

@yhxjack
Copy link

yhxjack commented May 19, 2023

如题,看到源码中只写了bigkeythreshold=16384,但是不知道这个参数的单位是多少
如果是bit,那表示大key的大小是0.002M
如果是byte,那表示大key大小是0.016M
问题很幼稚,不过确实不太懂,还望大佬们解答下

@yangbodong22011
Copy link
Member

@yhxjack bigkeythreshold 的含义是说,对于太大的 hash、list、set、zset 的子元素超过 16384,并不是 byte or bit。
另外,这并不幼稚,说明我们文档确实没写清楚,感谢反馈,我们后续会更新文档。

@yhxjack
Copy link
Author

yhxjack commented May 22, 2023

@yhxjack bigkeythreshold 的含义是说,对于太大的 hash、list、set、zset 的子元素超过 16384,并不是 byte or bit。 另外,这并不幼稚,说明我们文档确实没写清楚,感谢反馈,我们后续会更新文档。

我主要是做云原生的,对redis不要懂,我对大key的理解应该是说redis的key太大导致传输或者校验会有问题,这个大key和redis-shake中说的大key是一个概念吗

@yangbodong22011
Copy link
Member

@yhxjack 是一个概念,在 RedisFullCheck 中,key 太大的话,校验也会非常慢,因此这个参数可以控制当校验大key时,是否快速校验,比如值比较下 field 的个数是否相同,就不比较具体 filed 的每一个值了。

@yhxjack
Copy link
Author

yhxjack commented May 22, 2023

@yhxjack 是一个概念,在 RedisFullCheck 中,key 太大的话,校验也会非常慢,因此这个参数可以控制当校验大key时,是否快速校验,比如值比较下 field 的个数是否相同,就不比较具体 filed 的每一个值了。

不是很理解呀,如果类型是单一的string呢,是不是需要大小的限制呢?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants