管理网站建设哪里好,建立网站做家教辅导,中山大学精品课程网站,贵州网站建站6.方法设计
6.1.数据获取
为了收集不同的文件大小和纠删码参数对性能指标的影响#xff0c;本文在Hadoop平台上进行了模拟实验。Hadoop是一种开源的分布式存储和计算框架#xff0c;它可以支持不同类型的纠删码#xff0c;并提供了一些应用程序接口和工具来测试和评估纠删…6.方法设计
6.1.数据获取
为了收集不同的文件大小和纠删码参数对性能指标的影响本文在Hadoop平台上进行了模拟实验。Hadoop是一种开源的分布式存储和计算框架它可以支持不同类型的纠删码并提供了一些应用程序接口和工具来测试和评估纠删码的性能 。
本文选取了以下六个性能指标作为评价纠删码参数选择的依据 数据冗余度DR表示存储一个文件所需的编码块总数与数据块总数的比值反映了存储空间的利用率。数据冗余度越小表示存储空间利用率越高。在具有k个数据块和m个奇偶校验块的存储系统中冗余度定义为 DRm/(km)。 存储成本SC表示存储一个文件所需的编码块总数与单位编码块价格的乘积反映了存储费用的开销。存储成本越小表示存储费用开销越低。在具有k个数据块和m个奇偶校验块的存储系统中存储成本定义为 SCkm/m。 传输开销TO传输开销是指纠删码在读写和恢复过程中消耗的网络带宽资源它反映了纠删码对网络负载的影响。一般来说传输开销越低表示网络负载越低。传输成本TO定义为恢复工作负载传输的数据块数。 计算开销CO计算开销是指纠删码在编码和解码过程中消耗的计算资源它反映了纠删码对系统性能的影响。计算成本定义为GF乘法/异或算法操作数。 可靠性RE表示在任意m个编码块丢失或损坏的情况下仍然可以恢复原始文件的概率反映了数据完整性的保障。可靠性越大表示数据完整性保障越高。 R E ∑ i 0 m C k m i p i ( 1 − p ) ( k m − i ) RE\sum_{i0}^{m}C_{km}^ip^i(1-p)^{(km-i)} RE∑i0mCkmipi(1−p)(km−i) 恢复时间RT表示从任意k个编码块中恢复原始文件所需的时间反映了数据恢复速度的效率。恢复性能越大表示数据恢复速度越快。恢复性能 RP 是通过对恢复工作负载进行解码的平均开销包括计算和访问成本来衡量的 。
本文选取了以下四个变量作为影响纠删码参数选择的因素
数据大小filesize表示一个文件占用的字节数反映了文件内容的规模。文件大小范围为0MB-1GB每隔10MB取一个值共有101个值。数据块个数k表示一个文件被分割成的数据块的个数反映了文件分割的粒度。数据块个数范围为2-16每隔1取一个值共有15个值。冗余块个数m表示一个文件生成的冗余块的个数反映了文件编码的冗余度。冗余块个数范围为1-16每隔1取一个值共有16个值。故障编码块个数m’表示一个文件在传输或存储过程中丢失或损坏的编码块的个数反映了文件遭受的故障程度。故障编码块个数范围为0-m每隔1取一个值共有M1个值。
本文使用了Reed-Solomon纠删码这是一种现代的软件系统中随处可见的纠删码技术。
为了模拟不同文件大小和不同纠删码参数下的各项性能指标我们使用了Hadoop软件作为实验平台。Hadoop是一种分布式计算框架它可以将大量的数据存储在多个节点上并通过MapReduce模型进行并行处理。Hadoop提供了一个分布式文件系统HDFS它可以支持纠删码技术的存储和访问。
我们搭建了一个由32个节点组成的Hadoop集群每个节点都具有以下配置
CPUIntel Core i7-8700K 3.70GHz内存16GB DDR4硬盘1TB SATA网络千兆以太网
我们在每个节点上安装了以下软件
操作系统Ubuntu 18.04 LTSHadoop版本3.2.2PyCharm版本17.0.87-b1000.8 amd64
我们使用了以下数据集作为实验对象
文件大小范围0MB-1GB文件类型文本文件数量100个
我们将这些文件上传到HDFS中并对每个文件应用不同的纠删码参数k,m其中k的范围为2-16m的范围为1-16。我们使用了RS纠删码来生成和恢复冗余块。我们修改了Hadoop提供的内置纠删码配置来完成纠删码技术的编码和解码过程。
6.2.CRITIC确定权重
为了综合考虑各项性能指标我们使用了critic客观权重法为这些指标赋权计算出每种情况下的综合评分。
CRITICCRiteria Importance Through Intercriteria Correlation方法旨在确定多准则决策MCDMMutltipleCritier Decision Making 问题中相对重要性的客观权重。它是基于评价指标的对比强度和指标之间的冲突性来综合衡量指标的客观权重。考虑指标变异性大小的同时兼顾指标之间的相关性并非数字越大就说明越重要完全利用数据自身的客观属性进行科学评价。
对比强度是指同一个指标各个评价方案之间取值差距的大小以标准差的形式来表现。标准差越大说明波动越大即各方案之间的取值差距越大权重会越高
指标之间的冲突性用相关系数进行表示若两个指标之间具有较强的正相关说明其冲突性越小权重会越低。
对于 CRITIC 法而言在标准差一定时指标间冲突性越小权重也越小冲突性越大权重也越大另外当两个指标间的正相关程度越大时相关系数越接近 1冲突性越小这表明这两个指标在评价方案的优劣上反映的信息有较大的相似性。
critic客观权重法的基本思想是
如果一个属性的取值变化越大说明该属性越能反映决策对象的差异性因此该属性的权重应该越大。如果一个属性与其他属性的相关性越高说明该属性越能反映决策对象的整体性因此该属性的权重应该越大。 6.2.1.归一化处理
步骤一为了消除不同性能指标的量纲和取值范围的影响本文对收集的数据进行了归一化处理使其取值在[0,1]之间。对于正向指标越大越好使用以下公式
对于正向指标 x i j ′ X i j − m i n ( X 1 j , X 2 j , . . . , X n j ) m a x ( X 1 j , X 2 j , . . . , X n j ) − m i n ( X 1 j , X 2 j , . . . , X n j ) x_{ij}\frac{X_{ij}-min(X_{1j},X_{2j} ,...,X_{nj})}{max(X_{1j},X_{2j},...,X_{nj})-min(X_{1j},X_{2j},...,X_{nj})} xij′max(X1j,X2j,...,Xnj)−min(X1j,X2j,...,Xnj)Xij−min(X1j,X2j,...,Xnj)
对于负向指标 x i j ′ m a x ( X 1 j , X 2 j , . . . , X n j ) − X i j m a x ( X 1 j , X 2 j , . . . , X n j ) − m i n ( X 1 j , X 2 j , . . . , X n j ) x_{ij}\frac{max(X_{1j},X_{2j} ,...,X_{nj})-X_{ij}}{max(X_{1j},X_{2j},...,X_{nj})-min(X_{1j},X_{2j},...,X_{nj})} xij′max(X1j,X2j,...,Xnj)−min(X1j,X2j,...,Xnj)max(X1j,X2j,...,Xnj)−Xij
其中x_ij是第i个文件在第j个指标上的原始值x_ij是第i个文件在第j个指标上的标准化值。
6.2.2指标变异性
步骤二对于每个指标计算其差异系数表示其差异程度。使用以下公式
以标准差的形式来表现Sj表示第j个指标的标准差 { x j ˉ 1 n ∑ i 1 n x i j S j 1 n − 1 ∑ i 1 n ( x i j − x ˉ j ) 2 \left\{\begin{matrix} \bar{x_j}\frac{1}{n}\textstyle\sum_{i1}^{n}x_{ij} \\ \\ \ S_j \sqrt{\frac{1}{n-1}\sum_{i1}^n (x_{ij}-\bar{x}_j)^2} \end{matrix}\right. ⎩ ⎨ ⎧xjˉn1∑i1nxij Sjn−11∑i1n(xij−xˉj)2
在CRITIC法中使用指标差来表示各指标的内取值的差异波动情况标准差越大表示该指标的数值差异越大越能放映出更多的信息该指标本身的评价强度也就越强应该给该指标分配更多的权重。
6.2.3.指标冲突性
步骤三对于每两个指标计算其指标冲突性表示指标间的相关性程度。使用以下公式 R j ∑ i 1 p ( 1 − r i j ) R_j\sum_{i1}^{p}(1-r_{ij}) Rj∑i1p(1−rij)
以相关系数的形式来表现rij表示评价指标i和j之间的相关系数。
使用相关系数来表示指标间的相关性与其他指标的相关性越强则该指标就与其他指标的冲突性越小反映出相同的信息越多所能体现的评价内容就越有重复之处一定程度上也就削弱了该指标的评价强度应该减少对指标分配的权重。
6.2.4.信息量
步骤四对于每个指标计算其信息熵权重表示其重要程度使用如下公式 C j S j ∑ i 1 p ( 1 − r i j ) S j ∗ R j C_jS_j\sum_{i1}^{p}(1-r_{ij})S_j*R_j CjSj∑i1p(1−rij)Sj∗Rj
Cj越大第j个评价指标在整个评价指标体系的作用越大就应该给其分配更多的权重。
6.2.5.权重
步骤五对于每个指标计算其critic权重表示其综合影响能力。使用以下公式 W j C j ∑ j 1 p C j W_j\frac{C_j}{\textstyle\sum_{j1}^{p}C_j} Wj∑j1pCjCj
所以第j个指标的客观权重Wj
6.2.6.赋值
步骤六对于每种情况计算其综合评分表示其总性能。使用以下公式 s i ∑ j 1 m v j ∗ x i j s_i\sum_{j1}^{m}v_j*x_{ij} si∑j1mvj∗xij
si表示第i中情况的综合评分。
得到各个指标使用critic权重法的权重每个指标会获得一个如下的权重值。 将通过CRITIC方法得到的权重与原指标数据相乘然后各指标相加得到一个综合指标评分goal将每组filesize的goal数据做比较选出最大的goal然后将所有的filesize都依次得到形成一张filesize,k,m,goal表即达成目标。
6.3.DBSCAN聚类算法
DBSCANDensity-Based Spatial Clustering of Applications with NoiseDBSCAN聚类分析是一种基于密度的无监督学习算法它可以在不需要指定簇的数量的情况下根据数据点的密度将它们分成不同的簇并且可以识别出噪声点和异常值。
6.3.1.DBSCAN聚类分析算法的计算公式
给定一个数据集D{x1,x2,…,xn}其中xi是一个d维的向量表示第i个数据点的特征。DBSCAN聚类分析需要两个参数ϵ和MinPts分别表示邻域的半径和最小密度点数。DBSCAN聚类分析的算法步骤如下
从数据集D中任意选择一个未被访问过的点xi标记为已访问。计算xi的ϵ-邻域N(xi){xj∈D∣d(xi,xj)≤ϵ}其中d(xi,xj)表示xi和xj之间的距离。如果∣N(xi)∣≥MinPts则将xi标记为核心点并将N(xi)中的所有未被访问过的点加入一个队列Q表示它们属于同一个簇C。如果∣N(xi)∣MinPts则将xi标记为边界点或噪声点并转到步骤6。重复以下过程直到队列Q为空 从队列Q中弹出一个点xk标记为已访问。计算xk的ϵ-邻域N(xk)。如果∣N(xk)∣≥MinPts则将xk标记为核心点并将N(xk)中的所有未被访问过的点加入队列Q表示它们属于同一个簇C。如果∣N(xk)∣MinPts则将xk标记为边界点。 如果数据集D中还有未被访问过的点转到步骤1否则结束算法。
6.3.2.现实中部署分组
我现在有一张最佳的file,k,m的表我已经知道了各个文件大小如何选择数据块k冗余块m的大小将会得到最小的存储成本和最高的数据可靠性之间的权衡但是如果说将这张表直接给公司让公司给每个边缘服务器都部署上
uniquek,m个文件配置显然是不合理的因为每个配置文件都会生成对应的存储池存储池的存在本身就会占用服务器的存储成本如果在每个边缘服务器都生成uniquek,m个文件配置对应的存储池那存储消耗是巨大的不可取的故我们给出如下方案。
如0MB–200MB被分为一大组即小于140MB的文件的大组文件配置为k,m5,3中每大组的文件配置按最高的k,m配置向下兼容的方法剩余数据按类似的方法进行分组大约分5组即可分组不能过多不能超越超越总存储成本。
filesizekmgoal10210.8620220.7530310.78…………190430.78200530.92