0
我想高效地使用redis搜索IPv6子網範圍。redis商店128位數
我想存儲在redis中的IPv6數字地址,並按範圍搜索它們。 那些128位整數,例如:
import ipaddress
int(ipaddress.ip_address(u'113f:a:2:3:4:1::77'))
> 22923991422715307029586104612626104439L
和查詢通過範圍:
ZRANGEBYSCORE numerics <subnet-S-start> <subnet-S-end>
無論其,redis的分揀集可以容納2^53的得分,因此我所有的大額整數都被削減,並且我失去了精確度。
有沒有辦法在redis中保存如此大的數字而不會丟失精度?
你有更好的建議嗎? 謝謝
您可能希望將該數字轉換爲字節數組並將其保存,而不是 – Guilherme
Redis可能不是該作業的正確工具。作爲一個例子,Postgres對IPv4和IPv6數據類型有強大的本地支持。 – tadman
@tadman redis對此非常理想,但像往常一樣,使用redis需要一點點工作。 –