[cdal资源统计报告] 2019年浪费资源统计
CDAL资源统计报告
陈翀
报告编号 PKU_CS_NCIS_TR2007003
报告编号 PKU_CS_NCIS_TR2007003
提交时间 2007-3-12
北京大学 信息科学技术学院
网络与信息系统研究所,100871
CDAL资源统计报告
陈翀
+(北京大学 信息科学与技术学院, 100871)
摘要:本文针对CDAL资源库藏进行一次较为全面的统计,与之前主要基于资源粒度的统计不同,这次关注资源内部的文件,统计的项目涉及资源总量、重复资源情况、文件总量、文件后缀种类、频度及分布情况、文件命名长度、文件大小、不同后缀类型的文件大小分布;并按照资源内容类别对上述信息进行统计,尤其是不同内容类别中各后缀类型对应的文件大小分布;此外还计算了资源目录内部通常包含的子目录平均深度。统计工作的目的除了进行普查之外,还希望能有助于发现哪些文件特征能够表达文件对所在资源目录或同目录其它文件的代表性。
关键词:统计 文件 大小 扩展名 名字 类别 CDAL
The General Statistic on CDAL Resource
Chen Chong
CNDS Lab, Peking
Abstract: This is a statistic report on CDAL (Chinese Digital Assets Library) resources. What is different with those we did before is we focus on the attributes of files in the resources instead of the resource items themselves. Beside of the size volume, duplication, files number in all and by resource-types, the file attributes like file extension (e.g. the types, the frequency of each extension type, the size proportion of the files with certain extension), file name length (e.g. the general distribution of file name length, the relation with the extension types), and the file size (e.g. the general distribution of file size with different file extensions) have also been counted or analyzed. As CDAL resources have been classified according to the content types manually, we make use of the achievement by compare those of the statistic items mentioned above. Also by these data, we aimed to find out how to evaluate the representation of a file to this holder-directory.
Key words: statistic; distribution; CDAL; digital resources; representation of files;
引言
在2007年1月17-23日,对2003年以来四年间搜集的CDAL资源进行了一次普查,并在2007年3月2-11日进行数据分析。本文记录各项统计数据,并分析所发现的一些有意思的现象。
本文数据可以说明目前CDAL中,各种内容类型、文件格式的资源的分布情况。并且由于CDAL的资源除有少数内容为捐赠或购买,基本来自互联网上尤其是教育网内流传的数字资源。在资源收集的时候也没有专门针对内容类型做筛选,教育网资源种类丰富数量也较多,有理由粗略地认为CDAL的统计数据能够反映互联网流传资源的一些规律。
CDAL数据基本情况概述
在CDAL中,一个资源是指表达独立内容的目录,其中所包含的子目录和文件共同表达一个与资源目录名吻合的主题。资源目录名基本上是从互联网收集时带有的原始命名,很少做修改。一个完整的资源标识包含资源的物理存储地点+分类路径+资源目录名,分类路径是指收集资源时按照资源内容类别加入CDAL分类体系,具体表现在分类目录树中的特定节点对应的路径。
在线的机器3台(head,head2,head4),同时承担服务提供和数据存储。CDAL总资源量、唯一资源量和重复资源量按照资源目录数和存储容量分别为表1所示:
表1:资源概要统计
统计项
资源目录(个)
存储容量(TB)
总资源
16926
7.5
唯一资源
16284,占资源个数总量96.21%
7.3
重复资源
560,占3.31%
0.2
空资源
82,占0.48%
0
*空文件的资源
一些资源目录非空,但是其中包含的文件为空。
0
对表1的说明:
总资源:所有在线存储的库藏的资源数。统计包括唯一资源、重复和内容为空的资源。
重复资源和空资源:是以资源目录计量的。重复资源是指资源的分类路径+资源目录名和其他资源重复;空资源是指资源标识唯一,但实际内容为空。这两种资源需要被删除。
唯一资源:资源在持续搜集的过程中有可能被重复地加入库藏。而且会混杂少数空目录也被误认为是一个资源,这里统计中剔除了这两种情况
唯一资源在不同服务器上的情况如表2。“包含的文件数”一项括号中的数据是在扫描每个服务器资源目录的时候,将其中包含的一些特殊功能文件过滤掉后统计得到的,这些文件包括".listing", ".metadata.dc", "nohup", "MD5SUM"等。后续我们统计用到服务器中的文件数,不加说明则是唯一资源中未作清理的文件数。
表2:各服务器唯一资源
服务器编号(ip)
唯一资源数
包含的文件数*
占用的存储量(TB)
Head(146.41)
4108
135973 (135815)
2.10
Head2(146.42)
11525
431899 (430775)
4.49
Head4(146.20)
649
48424 (48423)
0.62
针对唯一资源的调查统计
文件数:这些资源目录中包含的文件总数616,296个,清除掉上文所说的部分无意义文件之后,总数为615013个。其中的文件允许有重复,因为文件是所属资源的构成部分,它可以用来说明不同的资源内容。
文件命名:多数文件是符合我们惯常的认识——有名字有后缀,但是也有:1)只有文件名没有后缀,例如文件名为“Readme”、“md5sums”,总数为3971个,占全部数量0. 6%;2)只有后缀没有文件名,例如一些功能性的隐含文件“.listing”等,总数为635,占0.1%。
后缀:616,296个文件的不重复后缀类型为3036种,长度从0到58个字符,共31种不同长度。按照长度、所占百分比、出现频率如表3所示,后缀长度的比例和该长度后缀的文件在616,296个文件中占的比例如图1所示。需要说明的是,并非所有的后缀类型都值得列为一类,清理结果见第3.1节。
表3:文件后缀类型长度与所占比例
长度
比例%
对应后缀长的文件数比例%
1
1.25
2.65
2
5.14
5.35
3
75.92
86.90
>3且<=6
7.12
4.94
>6且<=10
5.23
0.01
>10
5.34
0.01
表3说明,从对文件后缀类型长度的统计中可以知道,网络资源常见的后缀类型长度为3,长度超过6的后缀,通常可以不视为约定的后缀类型。
图1:文件名的后缀长度及其对应文件数比重
图1中,横坐标是后缀长度,纵坐标代表比例,红色曲线代表长度为i(i=1,2,3...)的后缀对应的文件数占所有文件数的比例,蓝色代表长度为i的后缀在后缀类型总数中占据的比例。峰值为后缀长度=3。
内容类别:从后缀类型出现频率,后缀类型对应的文件字节数占全部存储量的比重来看,文件数占优势的为图片,文件字节数占优势的为视频和音频。说明CDAL库存中这些多媒体资源是占主要份额的。见表4。
表4:常见后缀类型及反映出的CDAL资源内容分布情况
Rank
后缀类型出现频率TOP5
后缀类型对应的文件字节数占存储总量比重的TOP5
后缀类型
出现频率(%)
文件数
后缀类型
文件字节比重(%)
1
jpg
17.23
106183
avi
28.34
2
mp3
9.32
57439
rmvb
20.46
3
zip
6.84
42183
rm
15.77
4
5.69
35061
iso
7.00
5
txt
5.59
34462
mp3
3.74
结合表4的数据可以对互联网数字资源的预测:流传度最高的网络资源是静态图片和mp3音频类数字资源;各类视频内容占据网上传播文件总字节量的半数以上;由于大文件的传输较多,zip, iso等压缩文件也在数量和文件字节数占重要比重;小巧轻便的纯文本格式在记载和传播信息方面被广泛应用;多数知识类文字内容使用pdf发布。
对文件后缀进一步分析
后缀作为文件类型的标示,可以是:1)创建该文件的专门程序生成;2)创建者人为指定作为文件辅助识别的标记,例如后缀为“readme”、“01”等。
我们不考虑情况2,以及情况1中一些文件切割程序生成的诸如“r01”等形式的后缀,只考虑约定的标准后缀类型,按照前面统计中对后缀模式、长度和所对应文件的数量的发现,制定筛选规则为:
长度>6个字符
出现频度<10次(在整个文件集合中这种后缀对应的文件不超过10个)
全为数字
数字{1到多个}+标点+数字{1到多个}
英文字母{1-2个}+标点{至多出现一个}+数字{1到多个}
过滤之后,得到的后缀相关数据如下:
后缀类型535种,对应的文件数603244个,占总文件数的97.88%。后缀出现频度表现为重尾分布,频度按从大到小排序,排在首位的后缀对应的文件共106183个,第100位的后缀只出现214次,相差近500倍。从清理后的后缀类型对应的文件数比例占到97.88%来看,有理由认为这500多种后缀是我们平时用各种软件、编程语言生成、流传度比较高的标准后缀。
如图2所示,图中横坐标为后缀类型的序号,纵坐标代表后缀类型的出现频度,都取log10。
图2:清理后的后缀类型-出现频度分布
表5:CDAL所有文件的集合中排名前30的后缀类型为:
Rank
Suffix
出现概率
Rank
Suffix
出现概率
Rank
Suffix
出现概率
1
jpg
0.1723
11
exe
0.0200
21
avi
0.01007
2
mp3
0.0932
12
html
0.0180
22
nfo
0.00814
3
zip
0.0684
13
swf
0.0177
23
wma
0.00784
4
0.0569
14
rar
0.0171
24
null
0.00749
5
txt
0.0559
15
rmvb
0.0157
25
Mid
0.00601
6
gif
0.0532
16
wav
0.0143
26
chm
0.00585
7
htm
0.0498
17
bmp
0.0129
27
doc
0.00540
8
rm
0.0254
18
pdg
0.0117
28
rtf
0.00515
9
wmf
0.0231
19
h
0.0112
29
diz
0.00406
10
gz
0.0210
20
c
0.0104
30
dat
0.00405
表5中后缀的出现概率由“拥有这个后缀的文件数量/CDAL所有文件数量”求得。
对文件命名的统计
这里文件名不包括后缀部分。文件的名字长度是指字符数,所有文件名的长度众数为8。按照区间为5进行划分,得出各文件名长度区间对应的文件数量的分布,如图3所示,第一个坐标代表文件名长度为[0,5]的文件数占总文件数量的比例,可以看出大约80%的文件的名字长度小于15个字符。
图3:文件命名长度区间对应文件数比重
进一步,按照top30的后缀类型对应的文件进行命名长度情况调查,发现除wmf, bmp, rtf, dat之外,其他类型都是典型的正偏分布,表现为众数<中位值<均值,表示多数文件命名集中在长度小的区段。我们取众数显示不同后缀类型的文件通常命名长度,如图4所示,横坐标是top30后缀类型,纵坐标是该后缀类型对应的所有文件名长度众数。
图4. 后缀对应的文件命名长度众数
对文件大小的统计
我们猜测不同后缀的文件大小能够反应某种程序所生成一类文件的惯常大小。实际统计发现这种猜测有失偏颇,即使是在一个内容类别中,同一格式的文件大小差别也很大。表5中列出几个反应文件大小分布趋中和离散程度的统计量,基本规律还是呈现正偏态,即多数文件大小小于均值,均值往往被该后缀对应的超大文件拉高。从标准差和极差也可以看出,同样后缀格式的文件大小相差都比较大,这为我们按照文件大小和后缀的关系分析文件代表性带来一定困难,也许需要考虑更细粒度,比如资源目录内;或寻找特定后缀的文件大小分布区间。
表5:top30后缀类型与该类型后缀文件大小(KB)分布情况
后缀
文件平均大小
方差
中值
极差
高频出现区间及出现概率
jpg
131.75
195.75
90.11
14008.32
2,3 0.45451
mp3
4717.09
4384.85
4169.73
121307.14
3,4 0.79925
zip
4707.59
28590.17
2494.46
2013081.6
3,4 0.59873
1840.65
6769.18
606.21
444444.67
2,3 0.54801
txt
16.54
47.45
4.096
2383.87
0,1 0.66144
gif
13.20
36.57
4.096
1384.45
0,1 0.75124
htm
19.86
38.68
12.29
1495.04
1,2 0.61849
rm
73518.09
73308.51
68005.89
901410.82
4,5 0.39889
wmf
21.63
38.19
8.19
790.53
0,1 0.52826
gz
3264.84
34595.80
94.21
1674133.50
2,3 0.28306
exe
6980.05
40317.74
638.98
1145774.08
2,3 0.57626
html
22.75
123.06
8.19
11816.96
0,1 0.60455
swf
1181.34
1099.72
983.04
55992.32
2,4 0.93392
rar
17549.69
65064.59
15024.13
4023078.91
4,5 0.55099
rmvb
156030.36
74766.91
149860.35
1168105.47
5,6 0.82067
wav
384.58
1749.56
32.77
84262.91
1,2 0.67039
bmp
159.98
543.68
8.19
16216.06
0,1 0.51544
pdg
35.74
22.98
32.77
331.78
1,2 0.94623
h
10.65
68.63
4.096
2088.96
0,1 0.83956
c
25.69
174.58
12.29
5533.70
0,2 0.98532
avi
339419.42
317544.36
196952.06
1622847.49
5,6 0.60421
nfo
14.43
228.67
8.19
14966.78
0,1 0.62778
wma
3763.97
3329.51
3530.75
55582.72
3,4 0.86420
null
732.57
12543.62
4.096
284798.98
0,1 0.78337
mid
32.01
33.12
24.58
458.75
1,2 0.79833
chm
3491.68
10247.70
286.72
152518.66
2,3 0.58453
doc
387.18
1143.91
65.54
19709.95
1,2 0.57942
rtf
86.50
617.99
12.29
8056.83
1,2 0.67509
diz
5.46
63.01
4.096
2961.41
0,1 0.99909
文件大小的高频出现区间和出现概率,是将特定后缀类型的所有文件大小取对数(log10),分箱,并统计落入各箱(区间大小)的文件数作为该跨度区间的概率。字段内整数n,m是指文件大小(KB)取log之后的区间起止点,实数f是落入这个对数区间的文件数占所有该后缀类型的文件数的比。
为了和后面按照资源内容类别统计做对照,我们除这全局统计top30的后缀类型,补充了如下10种在各内容类别的资源文件中top10后缀集合中的后缀类型。
dat
0,1 0.48582
png
0,1 0.48965
nlc
1,2 0.92276
asf
4,5 0.58021
mpg
3,5 0.77990
ini
0,1 0.75124
mdl
0,1 0.93470
tga
1,3 0.83172
m3u
0,1 0.99687
x32
1,2 0.62857
tif
3,4 0.36231
按内容类别的不同对资源统计
CDAL资源已按照内容类别进行很好地划分,所以我们本节按此统计资源信息,其中包括这类资源的字节量比重(不同于第三节按照文件后缀的字节量比重统计,这里是按照资源的内容,而同一后缀的文件可能属于不同内容类型)、该类资源的文件后缀种类及频度、在资源目录内部的文件平均层深(文件在资源目录内的目录层深粗略反映了资源内部组织的情况)、文件大小、文件名长度的特征。
对于大类中的内容份量较多的子类,我们单独给出统计数据,如“文字”中的“书”、“影象”中的“电影”、“电视”。表中“影象”一行 “频度最高的后缀类型”是“jpg”,而“电影”、“电视”两大类的字节量之和就接近大类的值,如果不做分开统计,会使人误解该类资源的主要文件格式是jpg。
表6:按照资源类型统计字节量、文件扩展名、文件数、高频扩展名、资源目录平均层深
内容类别
字节量(GB)
扩展名类型-文件数
清理后所剩扩展名类型-相应文件数
Top3扩展名类型
资源目录内平均层深
文字
391.11
1922-201227
273-192867
txt
zip
1
文字-书
154.54
1538-138715
164-131679
txt
zip
1
成套收藏-文字
144.98
98-10069
29-10000
rar
htm
2
声音
420.08
203-83158
70-83010
mp3
wma
txt
1
声音-歌曲
106.44
110-17701
34-17531
mp3
txt
1
声音-乐曲
54.00
64-10574
24-10483
mp3
mid
wma
1
影象
5235.10
420-186557
93-184890
jpg
wmf
htm
1
影象-电影
1946.63
240-16893
48-13140
txt
rm
jpg
0
影象-电视
2761.87
155-35875
47-26599
rmvb
htm
avi
0
软件
772.05
1556-121063
408-116595
zip
gz
c
2
交互式资源
402.85
630-19698
162-18394
wav
mp3
txt
2
表7是按照各主要资源类型,统计扩展名为top10的文件大小的分布情况,因为前面的统计中发现文件大小分散度较大,所以取中值;并将大小取log10,对应在对数坐标中刻度为1的区间,统计每个区间中散布的文件数目。可以得知按资源类型观察文件时,不同扩展名后缀的文件大小分布情况。表中“区间”就是指包含文件数最多的资源大小对数区间,而“文件数最多”就是用“概率”这个字段表示,它的含义是落入这个区间的文件数与该资源类型同样后缀的文件总数之比。表7中文件大小中值的单位是KB,区间的单位是log10(KB)。
表7中出现的文件扩展名类型大部分都被包含在全局统计文件后缀的top30种后缀类型中,没有被包括的种类,我们在表5中追加在后面(一共40种后缀类型由global的top30和各type的top10中的元素构成)。通过对照一种扩展名在不同资源类别中出现时的文件大小高频区间和出现在这个区间的概率,有助于推断包含这种文件特征的目录属于特定资源类别的概率。例如:声音类资源中“rm”后缀的文件大小高频区间在3.0-4.0对数区间(即),而在影像类出现时高频区间都在4.0以上(即)。在实际应用中根据文件大小和后缀类型的关系可以作为判别文件集合属于什么资源类别的一个概率意义的条件。
表7:各内容类别高频后缀对应的文件大小(KB)区间及区间概率
资源类别
top10文件扩展名(降序)
文字-书
txt
zip
gif
htm
jpg
html
pdg
exe
rar
中值
290.816
16.384
4.096
4.096
4.096
122.88
102.4
4.096
2625.536
106.496
区间
2.0,3.0
0.0,1.0
3.0,4.0
0.0,1.0
0.0,1.0
2.0,3.0
1.0,2.0
0.0,1.0
2.0,3.0
2.0,3.0
频率
0.56894
0.53628
0.25504
0.71550
0.52433
0.73216
0.94512
0.63673
0.83194
0.66798
文字
txt
zip
gif
htm
jpg
pdg
exe
rar
chm
中值
475.136
0.0
77.824
12.288
69.632
4.096
16.384
102.4
798.72
14598.14
区间
2.0,3.0
0.0,1.0
3.0,4.0
0.0,1.0
0.0,1.0
2.0,3.0
0.0,1.0
1.0,2.0
2.0,3.0
4.0,5.0
频率
0.56443
0.53220
0.31188
0.68977
0.58643
0.52493
0.63681
0.94512
0.79338
0.40812
成套-文字
rar
htm
txt
gif
exe
chm
swf
zip
doc
中值
598.016
2945.024
36.864
16.384
4.096
589.824
6348.8
454.656
9576.448
102.4
区间
2.0,3.0
4.0,5.0
0.0,1.0
1.0,2.0
0.0,1.0
2.0,3.0
3.0,4.0
2.0,3.0
3.0,4.0
1.0,2.0
频率
0.50225
0.49004
0.63454
0.52339
0.61026
0.71764
0.60159
0.71300
0.46305
0.72020
声音
mp3
wma
txt
rm
wav
mid
jpg
nlc
m3u
ogg
中值
6144.0
3551.232
20.48
622.592
28.672
135.168
20.48
8.192
4.096
10055.68
区间
3.0,4.0
3.0,4.0
0.0,1.0
3.0,4.0
1.0,2.0
1.0,2.0
2.0,3.0
0.0,1.0
0.0,1.0
3.0,4.0
频率
0.82613
0.86467
0.96394
0.55542
0.83188
0.79737
0.43275
0.67125
0.99681
0.74032
歌曲
mp3
txt
wma
jpg
mpg
avi
rm
gif
asf
wmv
中值
4644.864
4.096
3432.448
8.192
63180.8
31477.76
15482.88
4.096
19615.74
13701.12
区间
3.0,4.0
0.0,1.0
3.0,4.0
1.0,2.0
4.0,5.0
4.0,5.0
3.0,4.0
0.0,1.0
4.0,5.0
4.0,5.0
频率
0.96615
0.96999
0.88328
0.58542
0.91258
0.86440
0.47904
0.80916
0.66406
0.50420
乐曲
mp3
mid
wma
txt
mpc
m4a
jpg
mpga
wav
gif
中值
4001.792
24.576
987.136
4.096
5853.184
2945.024
4.096
3018.752
5349.376
4.096
区间
3.0,4.0
1.0,2.0
3.0,4.0
0.0,1.0
3.0,4.0
3.0,4.0
1.0,2.0
3.0,4.0
3.0,4.0
0.0,1.0
频率
0.90774
0.79724
0.77702
0.98936
0.74056
0.68571
0.41025
0.77192
0.93805
0.75
影像
jpg
wmf
htm
rm
rmvb
gif
swf
avi
txt
zip
中值
98.304
45.056
24.576
143507.4
162996.2
45.056
970.752
733323.2
4.096
6184.96
区间
2.0,3.0
1.0,2.0
1.0,2.0
4.0,5.0
5.0,6.0
0.0,1.0
2.0,3.0
5.0,6.0
0.0,1.0
4.0,5.0
频率
0.40692
0.50643
0.87280
0.49865
0.81735
0.70444
0.54993
0.63677
0.94733
0.50331
影像-电影
avi
txt
rm
jpg
rmvb
idx
sub
srt
rar
png
中值
735100.9
4.096
95211.52
192.512
157908.9
28.672
9814.016
36.864
61.44
598.016
区间
5.0,6.0
0.0,1.0
4.0,5.0
1.0,2.0
5.0,6.0
1.0,2.0
3.0,4.0
1.0,2.0
3.0,4.0
2.0,3.0
频率
0.82633
0.96786
0.49705
0.66387
0.91251
0.68277
0.72273
0.91211
0.40137
0.79327
影像-电视
rmvb
htm
avi
jpg
mpg
asf
txt
dat
wmv
rm
中值
144281.6
146206.7
28.672
724.992
81.92
13598.72
69443.58
4.096
360.448
15024.12
区间
4.0,5.0
5.0,6.0
1.0,2.0
5.0,6.0
1.0,2.0
3.0,4.0
4.0,5.0
0.0,1.0
5.0,6.0
4.0,5.0
频率
0.50394
0.81003
0.96901
0.44933
0.82579
0.41941
0.66998
0.93614
0.42879
0.70422
软件
zip
gz
c
h
exe
txt
gif
rar
nfo
bmp
中值
2097.152
544.768
49.152
4.096
730185.7
4.096
4.096
15024.12
4.096
552.96
区间
3.0,4.0
2.0,3.0
1.0,2.0
0.0,1.0
2.0,3.0
0.0,1.0
0.0,1.0
4.0,5.0
0.0,1.0
0.0,1.0
频率
0.83648
0.27956
0.49904
0.81760
0.34992
0.85540
0.90104
0.84982
0.58687
0.71653
交互资源-游戏
wav
mp3
txt
bmp
mdl
tga
exe
vos
zip
ini
中值
90.112
24.576
4.096
77.824
8.192
1445.888
3215.36
12.288
77.824
4.096
区间
1.0,2.0
1.0,2.0
0.0,1.0
1.0,2.0
1.0,2.0
1.0,2.0
2.0,3.0
1.0,2.0
2.0,3.0
0.0,1.0
频率
0.70312
0.50999
0.77993
0.82238
0.56867
0.43948
0.35632
0.70434
0.44542
0.92965
事件
gif
jpg
mid
html
png
wav
doc
x32
tif
中值
94.208
77.824
16.384
12.288
4.096
1130.496
147.456
208.896
229.376
4333.56
区间
0.0,1.0
2.0,3.0
1.0,2.0
1.0,2.0
0.0,1.0
2.0,3.0
1.0,2.0
1.0,2.0
1.0,2.0
3.0,4.0
频率
0.80484
0.62935
0.67961
0.52709
0.82947
0.86026
0.47311
0.66279
0.55421
0.77142
以前面定义的global(top30)+ by_type(top(10))共40种常见扩展名为基础,我们还统计了哪些扩展名几乎不(表示概率<<1)出现在某个类别中。因为我们可以知道每个资源类别包含的所有文件的扩展名列表(经过清理,具体见3.1节说明),如果说,我们定义这40种扩展名为“常见”的,那么某个类别的扩展名列表中没有包括的常见扩展名,也提供了一种类别判定因素。我们将找到的排除类型列在表8。
表8:不出现在资源类别中的常见扩展名
影象
影象-电影
电视
文字
文字-书
成套收藏-文字
声音
声音-歌曲
声音-乐曲
软件
事件
游戏
h
c
null
nlc
mdl
h
c
null
nlc
mdl
wmf
pdg
h
c
null
mid
nlc
mdl
tga
x32
tif
wma
null
tga
wma
null
tga
wmf
rmvb
bmp
pdg
h
c
avi
wma
null
dat
png
nlc
asf
mpg
mdl
tga
m3u
x32
wmf
pdg
h
c
null
mdl
tga
x32
tif
wmf
gz
pdg
h
c
null
diz
nlc
mdl
tga
x32
tif
wmf
pdg
h
c
null
mdl
tga
x32
tif
rmvb
pdg
wma
null
nlc
mpg
mdl
tga
m3u
wmf
pdg
h
c
nfo
wma
null
chm
diz
dat
nlc
mdl
tga
wmf
pdg
h
wma
null
nlc
m3u
x32
tif
附录:资源文件的md5计算
在统计CDAL唯一资源内的文件时,我们同时计算了它们的md5以便于其它分析实验使用。因为我们事先不知道616,296个文件的md5计算需要的时间开销,也不知道是否会在这个数值范围内计算md5会出现碰撞。所以实现进行了调研和实验估算。
是否会产生碰撞
即:算法能否保证对不同文件用md5处理一定得到不同的128bit?
算法本身并不是不同文件一定会得到不同的128位,理论上说肯定存在2个文件处理后得到同样的128位。只不过是这样的可能性是2的128次方分之一,偶而发生的可能性是没有的。故意做出这样的文件也是计算上不可能的。
时间开销估算
md5算法的时间复杂度
时间复杂度:位运算,复制运算,四则运算都是速度很快的元运算。MD5_updata函数是主要运算函数,复杂度为O(n)被调用三次。所以算法整体复杂度仍为O(n)。空间复杂度为O(n+80)。
同时为了查明是否md5计算开销会随着文件大小的变化非线性增加,我们选取大约5KB、2MB、25MB、110MB等不同大小(5569, 2047683, 116269772 byte)的文件测试,发现同样计算环境下算出md5的速度,大致相同,不随文件字节增加而非线性变化,这也和预计中的线性时间复杂度吻合。
对同一个文件多次同条件测试,发现每次时间都不同,有差异,以小文件5569byte,计算耗时从55微秒(microsecond)到132微秒。估计是每时刻后台资源占用不同导致的时间差。
考察不重复资源中所有文件N=616296,大约6TB。
根据对字节不同的文件求md5,得出单位字节md5计算速度大致为:0.025微秒/byte,1微秒=10^-6秒。
假设计算不会碰撞,估计求所有文件的md5的时间:
6*10^12 * 0.025*10^-6 = 1.5*10^5秒,大约2天可以计算完。
有了上述估算之后,我们认为在2-4天内,计算出所有唯一资源内包含的文件的md5是一项在时间和唯一性上都可行的任务。
实际运算中,以拥有43万文件,总存储量为4.49TB的服务器S2为例,计算md5期间,服务器对外提供访问服务的负载为轻量,服务器配置为Dell 2850,4CPU,均为Intel(R) Xeon(TM) CPU 2.80GHz 1MCache,内存2G,计算全部指定目录中文件的md5运行时间接近26个小时(1月 23 23:38 20-1月 25 02:06);
相关热词搜索: 统计 统计 报告 资源 cdal资源统计报告