内容定义组块实现 Chunker

BSD
Google Go 查看源码»
跨平台
2016-12-18
王练

Chunker 是基于滚动 Rabin Hash 实现内容定义组块(CDC)。 

CDC 算法是一种变长分块算法,它应用数据指纹(如Rabin指纹)将文件分割成长度大小不等的分块策略。与定长分块算法不同,它是基于文件内容进行数据块切分的,因此数据块大小是可变化的。

package chunker

import "github.com/restic/chunker"

对于以十六进制系数表示法对指定的多项式列表进行过滤,可以使用以下脚本:

# create x over F_2 = GF(2)
x := Indeterminate(GF(2), "x");

# test if polynomial is irreducible, i.e. the number of factors is one
IrredPoly := function (poly)
	return (Length(Factors(poly)) = 1);
end;;

# create a polynomial in x from the hexadecimal representation of the
# coefficients
Hex2Poly := function (s)
	return ValuePol(CoefficientsQadic(IntHexString(s), 2), x);
end;;

# list of candidates, in hex
candidates := [ "3DA3358B4DC173" ];

# create real polynomials
L := List(candidates, Hex2Poly);

# filter and display the list of irreducible polynomials contained in L
Display(Filtered(L, x -> (IrredPoly(x))));
的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

MooseFS之Chunkserver是如何存储文件的?

文件以chunk大小存储,每chunk最大为64M。小于64M的,该chunk的大小即为该文件大小,超过64M的文件将被均分,每一份(chunk)的大小以不超过64M为原则;文件可以有多份copy,即除原始文件以外...

2015/10/27 13:34
146
0
mfs分布式文件系统的配置

通过对mfs分布式文件系统中各个模块的拆分组合,较为详细且清晰的实现其配置

2015/07/16 14:46
2.3K
0
OpenNLP-引言

#第一章 引言# ##概述## Apache OpenNLP包是一个基于机器学习的工具,用于处理自然语言。它支持常用的NLP任务,例如分词(tokenization),句子切分(sentence segementation),命名试题提取...

2014/09/10 20:23
412
0
Moosefs 分布式存储

Moosefs 分布式存储

2015/07/21 17:10
37
0
Moosefs分布式文件系统集群部署

mfs分布式存储 共享存储 DRBD解决单点故障

2014/08/05 14:39
217
1
Moosefs小结

mfs分布式文件存储

2014/06/15 00:11
382
0
IPFS 服务的Python API参考

IPFS支持Python接口访问,这里是其API参考手册。 相关连接: IPFS 服务的Python访问 通过Helm在Kubernetes集群上安装IPFS IPFS在Kubernetes部署的服务开放 Run IPFS in a Docker container I...

2018/08/30 21:14
129
0

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部