CN117519608B - 一种以Hadoop为核心的大数据服务器 - Google Patents
一种以Hadoop为核心的大数据服务器 Download PDFInfo
- Publication number
- CN117519608B CN117519608B CN202311810915.4A CN202311810915A CN117519608B CN 117519608 B CN117519608 B CN 117519608B CN 202311810915 A CN202311810915 A CN 202311810915A CN 117519608 B CN117519608 B CN 117519608B
- Authority
- CN
- China
- Prior art keywords
- value
- data
- capacity
- small file
- file data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 81
- 238000005457 optimization Methods 0.000 claims abstract description 69
- 238000012545 processing Methods 0.000 claims abstract description 56
- 238000004364 calculation method Methods 0.000 claims abstract description 31
- 238000012544 monitoring process Methods 0.000 claims description 12
- 210000000609 ganglia Anatomy 0.000 claims description 9
- 238000007726 management method Methods 0.000 claims description 7
- 238000012935 Averaging Methods 0.000 claims description 6
- 238000007405 data analysis Methods 0.000 claims description 6
- 238000011282 treatment Methods 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 claims description 4
- 239000003638 chemical reducing agent Substances 0.000 claims description 3
- 238000010187 selection method Methods 0.000 claims description 3
- 230000007547 defect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据处理技术领域,本发明公开了一种以Hadoop为核心的大数据服务器;包括计算小文件数据的容量占用值和分布节点的容量剩余值,将容量占用值与容量剩余值对比分析,判定是否选择优化指令,计算选择系数,选择第一优化指令或第二优化指令,从而对小文件数据进行合并和调整数据块大小处理;相对于现有技术,能够对海量的小文件数据进行合并或调整数据块大小的处理,从而将海量的小文件数据优化到满足分布节点高效准确处理计算的数量,降低分布节点处理小文件数据时的空间占用幅度,进而提高服务器中分布节点对海量小文件数据存储和访问效率,增强服务器的运行计算速率,降低发生延迟或故障现象的概率。
Description
技术领域
本发明涉及数据处理技术领域,更具体地说,本发明涉及一种以Hadoop为核心的大数据服务器。
背景技术
随着大数据时代的到来,对大规模数据的处理需求越来越迫切,Hadoop作为一种开源的分布式计算框架,已经成为处理大数据的主流技术之一,并为海量的数据处理提供安全、高效且稳定的计算环境,进而被广泛的应用到各类大小文件数据的处理当中。
申请公开号为CN114546962A的中国专利公开了一种基于Hadoop的海事局船检大数据分布式存储系统,其通过对小文件元数据的缓存,减少一些不必要的磁盘交互和通信,减少了时间消耗,提高缓存效率;根据数据特点设计一个合适的缓存预取模块,能大大减少热点文件读取的时间消耗,进一步实现对小文件存储系统的优化;
现有技术存在以下不足:
现有的基于Hadoop的大数据系统在处理海量小文件数据时,由于每一个小文件数据之间独立,需要占用一定的系统空间,导致Hadoop系统的空间需求会在短时间内暴增,从而在处理海量小文件数据时容易出现延迟、停滞现象,降低了海量小文件数据的处理速率,也会对Hadoop系统带来额外的运行负担,增加了Hadoop系统出现故障的概率。
鉴于此,本发明提出一种以Hadoop为核心的大数据服务器以解决上述问题。
发明内容
为了克服现有技术的上述缺陷,为实现上述目的,本发明提供如下技术方案:一种以Hadoop为核心的大数据服务器,包括:
数据采集模块,用于标记分布节点的小文件数据,采集小文件数据的综合容量参数,基于综合容量参数,计算容量占用值;
节点容量计算模块,用于采集分布节点的容量总值和总占用值,基于容量总值和总占用值,计算容量剩余值;
对比分析模块,用于将容量占用值与容量剩余值对比分析,获得容量差值,基于容量差值,判定是否进行优化处理;
系数计算模块,用于采集小文件数据的选择参数,基于选择参数,生成选择系数;
指令选择模块,用于将选择系数与预设的选择阈值比较,根据比较结果,选择第一优化指令或第二优化指令;
合并执行模块,用于依据第一优化指令,对小文件数据进行合并处理;
调整执行模块,用于依据第二优化指令,对小文件数据进行调整数据块大小处理。
进一步的,综合容量参数包括数据总量、非结构占比率和可汇总占比率;
容量占用值的表达式为:
;
式中,为容量占用值,/>为可汇总占比率,可汇总占比率通过分布节点对应的Python数据分析库监测获取,/>为数据总量,数据总量通过分布节点对应的系统管理工具Apache Spark获取,/>为非结构占比率,非结构占比率通过分布节点对应的Python数据分析库监测获取,/>、/>为权重因子。
进一步的,容量剩余值的生成方法包括:
通过分布节点的配置表获取计算引擎的容量总值;
通过分布节点的任务管理器获取当前正在运行的数据所对应的个子占用值;
将个子占用值累加后,获得总占用值;
总占用值的表达式为:
;
式中,为总占用值,/>为第/>个子占用值;
将容量总值与总占用值差值比较,获得容量剩余值;
容量剩余值的表达式为:
;
式中,为容量剩余值,/>为容量总值。
进一步的,容量差值的表达式为:
;
式中,为容量差值;
是否进行优化处理的判定方法包括:
当大于0时,判定进行优化处理;
当小于等于0时,判定不进行优化处理。
进一步的,选择参数包括数据均值、访问频率和处理速率;
数据均值的获取方法包括:
随机标记个小文件数据,并记录/>个小文件数据对应的字节值;
去掉个字节值中的最大值和最小值后,将剩下的/>个字节值累加后求平均,获得数据均值;
数据均值的表达式为:
;
式中,为数据均值,/>为第/>个字节值。
进一步的,访问频率的获取方法包括:
通过分布节点的访问日志获取时刻至/>时刻小文件数据的访问次数,/>时刻与/>时刻不相邻;
按照预设时长,将时刻至/>时刻等分为/>个子时刻,/>为2的整数倍,并将个子时刻依次编号;
统计个编号为奇数的子时刻的访问次数,/>等于/>,获得/>个子频率;
子频率的表达式为:
;
式中,为第/>个子频率,/>为第/>个访问次数,/>为预设时长;
将个子频率累加后求平均,获得访问频率;
访问频率的表达式为:
;
式中,为访问频率,/>为第/>个子频率。
进一步的,选择系数的表达式为:
;
式中,为选择系数,/>为处理速率,处理速率通过分布节点对应的系统监控工具Ganglia获取,/>、/>、/>为权重因子。
进一步的,第一优化指令或第二优化指令的选择方法包括:
将小文件数据对应的选择系数与预设的选择阈值/>进行差值比较,大于0;
当大于等于/>时,选择第一优化指令;
当小于/>时,选择第二优化指令。
进一步的,小文件数据进行合并处理的方法包括:
编写一个Mapper类,将每个小文件数据的内容读取为键值对,其中键为文件名,值为文件内容;
将多个小文件数据作为输入,配置MapReduce任务,将Mapper类指定为任务的Mapper;
在Reducer中将相同键的值合并为一个输出文件;
运行MapReduce任务,生成合并后的文件。
进一步的,小文件数据进行调整数据块大小处理的方法包括:
确定需要调整的小文件数据的路径、文件名以及期望的数据块大小;
打开Hadoop集群的HDFS配置文件,找到配置参数dfs.blocksize,将dfs.blocksize的值修改为期望的数据块大小,并保存;
使用Hadoop的管理工具或命令行工具来重启HDFS服务,使得配置文件生效;
使用Hadoop的命令行工具或编程方式来验证数据块大小是否已经调整到期望的数据块大小。
本发明一种以Hadoop为核心的大数据服务器的技术效果和优点:
本发明通过采集小文件数据的综合容量参数,计算容量占用值,采集分布节点的容量总值和总占用值,生成容量剩余值,将容量占用值与容量剩余值对比分析,获得容量差值,并判定是否选择优化指令,计算选择优化指令的小文件数据的选择系数,将选择系数与预设的选择阈值比较,选择第一优化指令或第二优化指令,依据第一优化指令,对小文件数据进行合并处理,依据第二优化指令,对小文件数据进行调整数据块大小处理;相对于现有技术,能够对分布节点内海量的小文件数据的空间占用幅度进行计算,并与分布节点剩余的空间大小进行比较,从而判定对海量的小文件数据是否进行优化处理,并基于小文件数据的自身属性,生成与小文件数据相匹配的优化指令,即可对海量的小文件数据进行合并或调整数据块大小的处理,从而将海量的小文件数据优化到较少的数量,降低分布节点处理小文件数据时的空间占用幅度,进而提高服务器中分布节点对海量小文件数据存储和访问效率,增强服务器的运行计算速率,降低发生延迟或故障现象的概率。
附图说明
图1为本发明实施例1提供的一种以Hadoop为核心的大数据服务器的示意图;
图2为本发明实施例1提供的是否进行优化处理的判定方法的流程示意图;
图3为本发明实施例1提供的第一优化指令或第二优化指令的选择方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:请参阅图1所示,本实施例所述一种以Hadoop为核心的大数据服务器,包括:
数据采集模块,标记分布节点的小文件数据,采集小文件数据的综合容量参数,基于综合容量参数,计算容量占用值;
小文件通常指文件大小在几个字节到几百个字节之间的文件,这类文件通常是一些配置文件、日志文件、简单文本文件等,由于小文件体积较小,因此小文件的传输速度较快,存储空间占用较少,而大数据服务器也是由大量的小文件数据、中文件数据和大文件数据组成的,为了对小文件数据进行针对性的处理,就需要在分布节点内将小文件数据识别并标记出来;
小文件数据的标记方法包括:
在分布节点对应的数据集合内预设字节阈值;字节阈值是用于对小文件数据的大小进行识别判断的数值体现,通过将数据的大小与字节阈值进行比较,即可对数据是否属于小文件数据进行区分,字节阈值是通过采集历史大量的小文件数据对应的字节数值后,通过系数优化后得到的;
遍历数据集合内的数据,将数据的字节值与预设字节阈值比较;
将字节值小于预设字节阈值的数据标记为小文件数据;
需要说明的是,被标记为小文件数据的数据是指其字节值小于预设字节阈值,而被标记为小文件数据的对应的字节值并不相等,小文件数据的字节值有大有小;
综合容量参数是指能够表示小文件数据在分布节点处理计算时,所占用容量大小的影响参数,通过采集综合容量数据,可以准确的识别到小文件数据在分布节点处理计算时的空间占用大小数值,从而为后续的分析和处理等操作提供数据支撑;
综合容量参数包括数据总量、非结构占比率和可汇总占比率;
数据总量是指分布节点对应的数据集合中所有小文件数据的总量,当数据总量越大时,小文件数据的容量占用值越大;数据总量通过分布节点对应的系统管理工具ApacheSpark获取,其步骤如下:
首先,选择Apache Spark作为的分布式系统管理工具;
其次,使用Apache Spark的命令行界面或图形用户界面,连接到分布式系统的主节点;
接着,通过Apache Spark提供的命令或API,获取分布节点的列表或信息,具体命令或API的使用方式和参数根据所选工具的不同而有所差异;
最后,对获取到的分布节点列表或信息进行处理,可以使用脚本编程语言进行统计计算,或者利用工具提供的功能来实现数量总量的计算;
非结构占比率是指非结构化的小文件数据的数量与非结构化数据和结构化数据的数量之和的比值,分布节点在处理如表格、数据库等结构化数据时通常较为高效,分布节点在处理如文本、图像、音频等非结构化数据时,分布节点通常需要进行更复杂的处理算法,使得非结构化数据在处理时需要占用更大的空间,因此,当非结构占比率越高时,小文件数据的容量占用值越大;非结构占比率通过分布节点对应的Python数据分析库监测获取;
可汇总占比率是指分布节点的数据集合内具有相同格式类型的小文件数据的占比幅度,当可汇总占比率越大时,说明分布节点的数据集合内小文件数据的容量占用值越小;可汇总占比率通过分布节点对应的Python数据分析库监测获取;
容量占用值是指分布节点内小文件数据在对应的分布节点中进行处理计算时所要占用的计算引擎空间大小,当容量占用值越大时,说明小文件数据在处理计算时所要占用的空间越大;
容量占用值的表达式为:
;
式中,为容量占用值,/>为可汇总占比率,/>为数据总量,为非结构占比率,/>、/>为权重因子;将设定的权重因子和采集的综合容量参数代入公式,任意两个公式构成二元一次方程组,将计算得到的权重因子进行筛选并取均值,得到/>、/>的均值;
另外,需要说明的是,权重因子的大小是为了将各个数据进行量化得到的一个具体的数值,便于后续比较,关于权重因子的大小,取决于综合容量参数的多少及本领域技术人员对每一组综合容量参数初步设定对应的权重因子;
节点容量计算模块,采集分布节点的容量总值和总占用值,基于容量总值和总占用值,计算容量剩余值;
容量总值是指分布节点对应的计算引擎能够提供给数据处理计算的最大空间值,由于计算引擎的空间值是有限的,使得分布节点的计算引擎能够处理的数据量也是有限的,当数据量超过容量总值时,计算引擎的运行效率会降低,甚至会发生故障现象;
容量剩余值是指分布节点对应的计算引擎能够提供给小文件数据处理计算的空间值,当容量剩余值越大时,说明分布节点的计算引擎能够提供给小文件数据处理计算的空间越大,则能够处理小文件数据的数据量也越大;
容量剩余值的生成方法包括:
通过分布节点的配置表获取计算引擎的容量总值;
通过分布节点的任务管理器获取当前正在运行的数据所对应的个子占用值;
将个子占用值累加后,获得总占用值;
总占用值的表达式为:
;
式中,为总占用值,/>为第/>个子占用值;
将容量总值与总占用值差值比较,获得容量剩余值;
容量剩余值的表达式为:
;
式中,为容量剩余值,/>为容量总值;
对比分析模块,将容量占用值与容量剩余值对比分析,获得容量差值,基于容量差值,判定是否进行优化处理;
容量差值是指分布节点的计算引擎对应的容量剩余值与小文件数据所需的容量占用值之间的差值大小,通过判断容量差值,即可对容量占用值与容量剩余值的大小进行判断,进而对分布节点的计算引擎能否处理计算小文件数据进行识别;
容量差值的表达式为:
;
式中,为容量差值;
请参阅图2所示,是否进行优化处理的判定方法包括:
当大于0时,说明小文件数据所需的容量占用值小于分布节点的引擎对应的容量剩余值,则分布节点的引擎不能够处理计算小文件数据,判定进行优化处理;
当小于等于0时,说明小文件数据所需的容量占用值大于等于分布节点的引擎对应的容量剩余值,则分布节点的引擎能够处理计算小文件数据,判定不进行优化处理;
系数计算模块,采集小文件数据的选择参数,基于选择参数,生成选择系数;
选择参数是指选择优化指令的小文件数数据所对应的关于优化指令的综合参数,由于优化指令不唯一,所以小文件数据在选择优化指令时,需要通过对选择参数的采集和分析,来判断小文件数据具体选择哪一种优化指令,因此,选择参数就成为了判断小文件数据选择优化指令的基础;
选择参数包括数据均值、访问频率和处理速率;
数据均值是指选择优化模式的小文件数据所对应的数据大小的平均值,当数据均值越大时,说明小文件数据对应的数据较大,则选择系数越大;
数据均值的获取方法包括:
随机标记个小文件数据,并记录/>个小文件数据对应的字节值;
去掉个字节值中的最大值和最小值后,将剩下的/>个字节值累加后求平均,获得数据均值;
数据均值的表达式为:
;
式中,为数据均值,/>为第/>个字节值;
访问频率是指小文件数据在过往的单位时间内被访问的次数,当访问频率越大时,说明小文件数据在单位时间内被访问的次数越多,则选择系数越大;
访问频率的获取方法包括:
通过分布节点的访问日志获取时刻至/>时刻小文件数据的访问次数,/>时刻与/>时刻不相邻;通过不相邻的/>时刻和/>时刻,使得获取的访问次数具有随机性,从而避免了某一时刻出现急剧增加的访问次数时,而造成与之相邻时刻的访问次数也出现连带变化的情况,进而保证了访问次数取样的随机性,使得访问次数具有代表性;
按照预设时长,将时刻至/>时刻等分为/>个子时刻,/>为2的整数倍,并将个子时刻依次编号;预设时长是能够确保在该时长对应的时间段内,小文件数据能够被进行一定访问次数量的时间值,并且在预设时长内,小文件数据的访问次数不会过大或过小,从而便于访问次数的统计,预设时长通过采集历史大量的小文件数据在达到一定访问次数量时对应的时间值后,通过系数优化后得到的;
统计个编号为奇数的子时刻的访问次数,/>等于/>,获得/>个子频率;通过获取编号为奇数的子时刻的访问次数,使得获得的访问次数对应的子时刻可以被独立间隔开,避免首尾相连的子时刻的访问次数出现前后影响的现象,从而确保每一个子时刻内的访问次数的随机性,进而提高后续访问频率计算的准确性;
子频率的表达式为:
;
式中,为第/>个子频率,/>为第/>个访问次数,/>为预设时长;
将个子频率累加后求平均,获得访问频率;
访问频率的表达式为:
;
式中,为访问频率,/>为第/>个子频率;
处理速率是指分布节点在单位时间内对小文件数据的处理速度,当处理速率越大时,说明单位时间内对小文件数据的处理量越大,则选择系数越小;处理速率通过分布节点对应的系统监控工具Ganglia获取,其步骤如下:
首先,安装和配置Ganglia监控系统,确保Ganglia的各个组件正常运行;
其次,在每个分布节点上配置Ganglia的监控代理,确保节点的数据可以被Ganglia收集到;
接着,在Ganglia的监控服务器上,配置数据存储和展示的相关设置,以确保能够记录和显示分布节点的处理速率信息;
最后,通过Ganglia的Web界面或命令行工具,查看分布节点的处理速率;
选择系数的表达式为:
;
式中,为选择系数,/>为处理速率,/>、/>、/>为权重因子;/>、、/>的设定逻辑与上述/>、/>的设定逻辑一致;
指令选择模块,将选择系数与预设的选择阈值比较,根据比较结果,选择第一优化指令或第二优化指令;
第一优化指令和第二优化指令是分别对小文件数据进行不同优化处理的措施,具体的,第一优化指令是指用于对小文件数据进行合并处理,从而降低小文件数据的空间值;第二优化指令是指用于对小文件数据进行调整数据块大小处理,从而降低小文件数据的空间值;
而对小文件数据具体采用哪种优化指令,需要通过小文件数据的选择系数与预设的选择阈值比较后进行判断;
请参阅图3所示,第一优化指令或第二优化指令的选择方法包括:
将小文件数据对应的选择系数与预设的选择阈值/>进行差值比较,大于0;预设的选择阈值是能够将小文件数据进行合并处理还是调整数据块大小处理的区分数值,通过预设的选择阈值,用来对小文件数据的处理方式进行划分,预设的选择阈值通过采集历史大量的合并处理和调整数据块大小处理时对应的小文件数据的选择系数后,通过优化后得到的;
当大于等于/>时,说明小文件数据对应的选择系数大于等于预设的选择阈值,则选择第一优化指令;
当小于/>时,说明小文件数据对应的选择系数小于预设的选择阈值,则选择第二优化指令;
合并执行模块,依据第一优化指令,对小文件数据进行合并处理;
当选择第一优化指令时,则需要对分布节点内的小文件数据进行合并处理,使得大量的小文件数据能够被合并到满足分布节点的计算引擎处理计算的空间大小,从而保证大量的小文件数据能够被快速的处理;
MapReduce是Hadoop生态系统中的一种分布式计算模型,可以用于大规模数据的处理和分析,利用MapReduce的特性,可以使用一个Map任务读取多个小文件数据,并将多个小文件数据的内容合并到一个输出文件中;
小文件数据进行合并处理的方法包括:
编写一个Mapper类,将每个小文件数据的内容读取为键值对,其中键为文件名,值为文件内容;
将多个小文件数据作为输入,配置MapReduce任务,将Mapper类指定为任务的Mapper;
在Reducer中将相同键的值合并为一个输出文件;
运行MapReduce任务,生成合并后的文件;
调整执行模块,依据第二优化指令,对小文件数据进行调整数据块大小处理;
当选择第二优化指令时,则需要对分布节点内的小文件数据进行调整数据块大小的处理,使得大量的小文件数据可以调整到合适的数据块大小,从而保证大量的小文件数据能够被快速的处理;
默认情况下,HDFS将文件划分为64MB的数据块,对于小文件数据,可以通过减小数据块的大小来提高存储和访问的效率,具体可以通过修改HDFS的配置参数dfs.blocksize来调整数据块大小;
小文件数据进行调整数据块大小处理的方法包括:
确定需要调整的小文件数据的路径、文件名以及期望的数据块大小;期望的数据块大小是根据分布节点的实际情况进行设置的数据块的大小数值,默认情况下,HDFS将文件的数据块划分为64MB,此时的期望的数据块大小可以为32MB、16MB或8MB;
打开Hadoop集群的HDFS配置文件,找到配置参数dfs.blocksize,将dfs.blocksize的值修改为期望的数据块大小,并保存;
使用Hadoop的管理工具或命令行工具来重启HDFS服务,使得配置文件生效;
使用Hadoop的命令行工具或编程方式来验证数据块大小是否已经调整到期望的数据块大小;
需要注意的是,在调整数据块大小之前,应该先评估和考虑系统资源、存储容量以及数据处理需求等因素,以避免带来其他问题或不必要的开销,此外,对于已经存储的文件,调整数据块大小可能需要进行数据迁移或重新上传,因此应谨慎操作,并备份重要数据。
本实施例中,通过采集小文件数据的综合容量参数,计算容量占用值,采集分布节点的容量总值和总占用值,生成容量剩余值,将容量占用值与容量剩余值对比分析,获得容量差值,并判定是否选择优化指令,计算选择优化指令的小文件数据的选择系数,将选择系数与预设的选择阈值比较,选择第一优化指令或第二优化指令,依据第一优化指令,对小文件数据进行合并处理,依据第二优化指令,对小文件数据进行调整数据块大小处理;相对于现有技术,能够对分布节点内海量的小文件数据的空间占用幅度进行计算,并与分布节点剩余的空间大小进行比较,从而判定对海量的小文件数据是否进行优化处理,并基于小文件数据的自身属性,生成与小文件数据相匹配的优化指令,即可对海量的小文件数据进行合并或调整数据块大小的处理,从而将海量的小文件数据优化到较少的数量,降低分布节点处理小文件数据时的空间占用幅度,进而提高服务器中分布节点对海量小文件数据存储和访问效率,增强服务器的运行计算速率,降低发生延迟或故障现象的概率。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (5)
1.一种以Hadoop为核心的大数据服务器,其特征在于,包括:
数据采集模块,用于标记分布节点的小文件数据,采集小文件数据的综合容量参数,基于综合容量参数,计算容量占用值,综合容量参数包括数据总量、非结构占比率和可汇总占比率;
节点容量计算模块,用于采集分布节点的容量总值和总占用值,基于容量总值和总占用值,计算容量剩余值;
对比分析模块,用于将容量占用值与容量剩余值对比分析,获得容量差值,基于容量差值,判定是否进行优化处理;
容量差值的表达式为:
;
式中,为容量差值;
是否进行优化处理的判定方法包括:
当大于0时,判定进行优化处理;
当小于等于0时,判定不进行优化处理;
系数计算模块,用于采集小文件数据的选择参数,基于选择参数,生成选择系数;
选择参数包括数据均值、访问频率和处理速率;
数据均值的获取方法包括:
随机标记个小文件数据,并记录/>个小文件数据对应的字节值;
去掉个字节值中的最大值和最小值后,将剩下的/>个字节值累加后求平均,获得数据均值;
数据均值的表达式为:
;
式中,为数据均值,/>为第/>个字节值;
访问频率的获取方法包括:
通过分布节点的访问日志获取时刻至/>时刻小文件数据的访问次数,/>时刻与/>时刻不相邻;
按照预设时长,将时刻至/>时刻等分为/>个子时刻,/>为2的整数倍,并将/>个子时刻依次编号;
统计个编号为奇数的子时刻的访问次数,/>等于/>,获得/>个子频率;
子频率的表达式为:
;
式中,为第/>个子频率,/>为第/>个访问次数,/>为预设时长;
将个子频率累加后求平均,获得访问频率;
访问频率的表达式为:
;
式中,为访问频率,/>为第/>个子频率;
选择系数的表达式为:
;
式中,为选择系数,/>为处理速率,处理速率通过分布节点对应的系统监控工具Ganglia获取,/>、/>、/>为权重因子;
指令选择模块,用于将选择系数与预设的选择阈值比较,根据比较结果,选择第一优化指令或第二优化指令;
第一优化指令或第二优化指令的选择方法包括:
将小文件数据对应的选择系数与预设的选择阈值/>进行差值比较,/>大于0;
当大于等于/>时,选择第一优化指令;
当小于/>时,选择第二优化指令;
合并执行模块,用于依据第一优化指令,对小文件数据进行合并处理;
调整执行模块,用于依据第二优化指令,对小文件数据进行调整数据块大小处理。
2.根据权利要求1所述的一种以Hadoop为核心的大数据服务器,其特征在于,所述容量占用值的表达式为:
;
式中,为容量占用值,/>为可汇总占比率,可汇总占比率通过分布节点对应的Python数据分析库监测获取,/>为数据总量,数据总量通过分布节点对应的系统管理工具Apache Spark获取,/>为非结构占比率,非结构占比率通过分布节点对应的Python数据分析库监测获取,/>、/>为权重因子。
3.根据权利要求1所述的一种以Hadoop为核心的大数据服务器,其特征在于,所述容量剩余值的生成方法包括:
通过分布节点的配置表获取计算引擎的容量总值;
通过分布节点的任务管理器获取当前正在运行的数据所对应的个子占用值;
将个子占用值累加后,获得总占用值;
总占用值的表达式为:
;
式中,为总占用值,/>为第/>个子占用值;
将容量总值与总占用值差值比较,获得容量剩余值;
容量剩余值的表达式为:
;
式中,为容量剩余值,/>为容量总值。
4.根据权利要求1所述的一种以Hadoop为核心的大数据服务器,其特征在于,所述小文件数据进行合并处理的方法包括:
编写一个Mapper类,将每个小文件数据的内容读取为键值对,其中键为文件名,值为文件内容;
将多个小文件数据作为输入,配置MapReduce任务,将Mapper类指定为任务的Mapper;
在Reducer中将相同键的值合并为一个输出文件;
运行MapReduce任务,生成合并后的文件。
5.根据权利要求1所述的一种以Hadoop为核心的大数据服务器,其特征在于,所述小文件数据进行调整数据块大小处理的方法包括:
确定需要调整的小文件数据的路径、文件名以及期望的数据块大小;
打开Hadoop集群的HDFS配置文件,找到配置参数dfs.blocksize,将dfs.blocksize的值修改为期望的数据块大小,并保存;
使用Hadoop的管理工具或命令行工具来重启HDFS服务,使得配置文件生效;
使用Hadoop的命令行工具或编程方式来验证数据块大小是否已经调整到期望的数据块大小。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311810915.4A CN117519608B (zh) | 2023-12-27 | 2023-12-27 | 一种以Hadoop为核心的大数据服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311810915.4A CN117519608B (zh) | 2023-12-27 | 2023-12-27 | 一种以Hadoop为核心的大数据服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117519608A CN117519608A (zh) | 2024-02-06 |
CN117519608B true CN117519608B (zh) | 2024-03-22 |
Family
ID=89753366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311810915.4A Active CN117519608B (zh) | 2023-12-27 | 2023-12-27 | 一种以Hadoop为核心的大数据服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117519608B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577123A (zh) * | 2013-11-12 | 2014-02-12 | 河海大学 | 一种基于hdfs的小文件优化存储方法 |
CN103678579A (zh) * | 2013-12-12 | 2014-03-26 | 浪潮电子信息产业股份有限公司 | 一种小文件存储效率的优化方法 |
CN108052679A (zh) * | 2018-01-04 | 2018-05-18 | 焦点科技股份有限公司 | 一种基于hadoop的日志分析系统 |
CN108804566A (zh) * | 2018-05-22 | 2018-11-13 | 广东技术师范学院 | 一种基于Hadoop的海量小文件读取方法 |
CN108932287A (zh) * | 2018-05-22 | 2018-12-04 | 广东技术师范学院 | 一种基于Hadoop的海量小文件写入方法 |
CN109165207A (zh) * | 2018-07-16 | 2019-01-08 | 华南农业大学 | 基于Hadoop的饮用水海量数据存储管理方法和系统 |
CN110018997A (zh) * | 2019-03-08 | 2019-07-16 | 中国农业科学院农业信息研究所 | 一种基于hdfs的海量小文件存储优化方法 |
JP2019204474A (ja) * | 2018-05-22 | 2019-11-28 | 広東技術師範学院 | ユーザアクセスプリファレンスモデルを用いたストレージ方法 |
CN113760822A (zh) * | 2021-08-11 | 2021-12-07 | 淮阴工学院 | 基于hdfs的分布式智慧校园文件管理系统优化方法及装置 |
CN114546962A (zh) * | 2022-02-17 | 2022-05-27 | 桂林理工大学 | 一种基于Hadoop的海事局船检大数据分布式存储系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6269257B2 (ja) * | 2014-03-31 | 2018-01-31 | 富士通株式会社 | 情報処理装置、情報処理システム、情報処理装置の制御プログラム、および情報処理装置の制御方法 |
CN105205082A (zh) * | 2014-06-27 | 2015-12-30 | 国际商业机器公司 | 用于处理hdfs中的文件存储的方法和系统 |
-
2023
- 2023-12-27 CN CN202311810915.4A patent/CN117519608B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577123A (zh) * | 2013-11-12 | 2014-02-12 | 河海大学 | 一种基于hdfs的小文件优化存储方法 |
CN103678579A (zh) * | 2013-12-12 | 2014-03-26 | 浪潮电子信息产业股份有限公司 | 一种小文件存储效率的优化方法 |
CN108052679A (zh) * | 2018-01-04 | 2018-05-18 | 焦点科技股份有限公司 | 一种基于hadoop的日志分析系统 |
CN108804566A (zh) * | 2018-05-22 | 2018-11-13 | 广东技术师范学院 | 一种基于Hadoop的海量小文件读取方法 |
CN108932287A (zh) * | 2018-05-22 | 2018-12-04 | 广东技术师范学院 | 一种基于Hadoop的海量小文件写入方法 |
JP2019204474A (ja) * | 2018-05-22 | 2019-11-28 | 広東技術師範学院 | ユーザアクセスプリファレンスモデルを用いたストレージ方法 |
JP2019204472A (ja) * | 2018-05-22 | 2019-11-28 | 広東技術師範学院 | Hadoopに基づいて、データマージモジュールとHBaseキャッシュモジュールを備えるHDFSから複数の2MB以下の小さなファイルを読み込む方法 |
CN109165207A (zh) * | 2018-07-16 | 2019-01-08 | 华南农业大学 | 基于Hadoop的饮用水海量数据存储管理方法和系统 |
CN110018997A (zh) * | 2019-03-08 | 2019-07-16 | 中国农业科学院农业信息研究所 | 一种基于hdfs的海量小文件存储优化方法 |
CN113760822A (zh) * | 2021-08-11 | 2021-12-07 | 淮阴工学院 | 基于hdfs的分布式智慧校园文件管理系统优化方法及装置 |
CN114546962A (zh) * | 2022-02-17 | 2022-05-27 | 桂林理工大学 | 一种基于Hadoop的海事局船检大数据分布式存储系统 |
Non-Patent Citations (2)
Title |
---|
Hadoop平台下基于HDFS的小文件存储问题的优化与实现;罗青;《中国优秀硕士学位论文全文数据库 信息科技辑》;20190515;全文 * |
基于HDFS的云存储系统小文件优化方案;邹振宇等;计算机工程;20160315(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117519608A (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10652265B2 (en) | Method and apparatus for network forensics compression and storage | |
CN106886485B (zh) | 系统容量分析预测方法及装置 | |
WO2020233212A1 (zh) | 一种日志记录的处理方法、服务器及存储介质 | |
WO2019100645A1 (zh) | 实现多级联动下拉框的方法、电子装置及存储介质 | |
CN108717661B (zh) | 一种金融业风险预警的集群存储与分析方法 | |
CN110147470B (zh) | 一种跨机房数据比对系统及方法 | |
CN113391973B (zh) | 一种物联网云容器日志收集方法及装置 | |
CN114817425B (zh) | 一种冷热数据分类的方法、装置、设备及可读存储介质 | |
CN111522786A (zh) | 日志处理系统及方法 | |
CN109165207B (zh) | 基于Hadoop的饮用水海量数据存储管理方法和系统 | |
CN103177080A (zh) | 文件预读的方法和装置 | |
CN111913937B (zh) | 数据库运维方法和装置 | |
CN117519608B (zh) | 一种以Hadoop为核心的大数据服务器 | |
CN108932258A (zh) | 数据索引处理方法及装置 | |
CN106326400A (zh) | 基于多维数据集的数据处理系统 | |
CN109150819B (zh) | 一种攻击识别方法及其识别系统 | |
CN116243869A (zh) | 数据处理方法、装置及电子设备 | |
CN115993932A (zh) | 数据处理方法、装置、存储介质以及电子设备 | |
CN103442000B (zh) | Web缓存置换方法及装置、http代理服务器 | |
CN113411224B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN115269519A (zh) | 一种日志检测方法、装置及电子设备 | |
CN111274112B (zh) | 应用程序压测方法、装置、计算机设备和存储介质 | |
CN111917600A (zh) | 一种基于Spark性能优化的网络流量分类装置及分类方法 | |
KR20160050745A (ko) | 실시간 또는 일괄 처리 기반의 데이터 처리방법 및 장치 | |
CN106557469B (zh) | 一种处理数据仓库中数据的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |