CN116991332B - 一种智慧工厂大规模数据存储和分析方法 - Google Patents
一种智慧工厂大规模数据存储和分析方法 Download PDFInfo
- Publication number
- CN116991332B CN116991332B CN202311243169.5A CN202311243169A CN116991332B CN 116991332 B CN116991332 B CN 116991332B CN 202311243169 A CN202311243169 A CN 202311243169A CN 116991332 B CN116991332 B CN 116991332B
- Authority
- CN
- China
- Prior art keywords
- data
- node
- task
- writing
- storage
- 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
- 238000013500 data storage Methods 0.000 title claims abstract description 25
- 238000004458 analytical method Methods 0.000 title claims abstract description 17
- 238000003860 storage Methods 0.000 claims abstract description 94
- 238000000034 method Methods 0.000 claims abstract description 38
- 238000007405 data analysis Methods 0.000 claims abstract description 30
- 238000004519 manufacturing process Methods 0.000 claims abstract description 27
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 24
- 238000004140 cleaning Methods 0.000 claims abstract description 9
- 230000007246 mechanism Effects 0.000 claims description 26
- 238000013461 design Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 12
- 238000000638 solvent extraction Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 8
- 238000013467 fragmentation Methods 0.000 claims description 5
- 238000006062 fragmentation reaction Methods 0.000 claims description 5
- 238000005457 optimization Methods 0.000 claims description 5
- 238000007906 compression Methods 0.000 claims description 4
- 230000006835 compression Effects 0.000 claims description 4
- 238000011156 evaluation Methods 0.000 claims description 4
- 238000012423 maintenance Methods 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 4
- 238000007781 pre-processing Methods 0.000 claims description 4
- 238000013144 data compression Methods 0.000 claims description 3
- 238000004836 empirical method Methods 0.000 claims description 3
- 238000007619 statistical method Methods 0.000 claims description 3
- 238000013480 data collection Methods 0.000 claims description 2
- 238000012360 testing method Methods 0.000 claims description 2
- 239000012634 fragment Substances 0.000 claims 2
- 230000000903 blocking effect Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000009826 distribution Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000012549 training Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 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/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]
-
- 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/0608—Saving storage space on 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及大数据存储和分析技术领域,尤其涉及一种智慧工厂大规模数据存储和分析方法。内容包括:首先,设计分布式存储系统实现对智慧工厂生产和操作数据的存储;当数据被存入分布式存储系统时,针对写入延迟,应用数据块级的快速写入技术,快速完成数据写入;然后,基于数据写入时出现的数据冗余,采用冗余数据清理算法对分布式存储系统中的数据块进行清洗,同时,实施分布式一致性协议;最后,基于分布式存储系统中的数据,使用并行计算进行数据分析,得到准确一致性的数据分析结果。解决了现有技术中存储系统不够完善,容错能力差以及数据分析结果不准确,各节点数据处理任务分配不均衡的技术问题。
Description
技术领域
本发明涉及大数据存储和分析技术领域,尤其涉及一种智慧工厂大规模数据存储和分析方法。
背景技术
随着工业4.0的发展,智慧工厂已经成为制造业的新趋势。这些智慧工厂通过各种传感器、控制器和其他设备收集大量的数据,这些数据可以用来监控生产过程、预测设备故障、优化生产效率等。然而,这些数据的处理和分析带来了新的挑战,如数据量巨大、数据多样性、实时性要求、数据安全和隐私;目前,已有一些解决方案试图解决上述问题,例如使用传统的关系数据库进行数据存储、使用批处理技术进行数据分析等。然而,这些方法在处理大规模、多样性和实时性的数据时都存在局限性。
对于数据分析的方法有很多,朱荣辉提出的“基于大数据的智能工厂设备数据分析管理系统及方法”,申请号“CN202210984523.9”,主要包括:工厂订单信息获取模块、生产线设备工作状态预测模块、生产线设备关联程度计算模块和设备驱动管理模块;所述工厂订单信息获取模块用于对智能工厂接收到的订单信息进行获取,并将获取信息传输至生产线设备工作状态预测模块;所述生产线设备工作状态预测模块用于对智能工厂中各设备的历史工作参数进行获取,根据获取信息对工厂生产线上各设备的工作状态进行预测,并将预测结果传输至生产线设备关联程度计算模块;所述生产线设备关联程度计算模块用于对生产线设备工作状态预测模块传输的预测结果进行接收。
但上述技术至少存在如下技术问题:存储系统不够完善,容错能力差以及数据分析结果不准确,各节点数据处理任务分配不均衡的技术问题。
发明内容
本申请实施例通过提供一种智慧工厂大规模数据存储和分析方法,解决了现有技术中存储系统不够完善,容错能力差以及数据分析结果不准确,各节点数据处理任务分配不均衡的技术问题,实现了完善的数据存储系统以及对智慧工厂大数据均衡准确分析处理的技术效果。
本申请提供了一种智慧工厂大规模数据存储和分析方法,具体包括以下技术方案:
一种智慧工厂大规模数据存储和分析方法,包括以下步骤:
S1. 设计分布式存储系统实现对智慧工厂生产和操作数据的存储;当数据被存入分布式存储系统时,针对写入延迟,应用数据块级的快速写入技术,快速完成数据写入;
S2. 基于数据写入时出现的数据冗余,采用冗余数据清理算法对分布式存储系统中的数据块进行清洗,实现数据存储的紧凑,同时,实施分布式一致性协议;
S3. 基于分布式存储系统中的数据,使用并行计算进行数据分析,得到准确一致性的数据分析结果。
优选的,所述步骤S1,具体包括:
设计分布式存储系统实现对智慧工厂生产和操作数据的存储;所述设计分布式存储系统包含:通过数据采集工具收集智慧工厂生产和操作数据,利用统计分析对所述生产和操作数据的特性进行分析得到生产和操作数据的特性报告、设计存储架构、数据压缩与分片、数据写入流程、数据读取流程、容错机制、扩展性、查询优化、监控和维护。
优选的,在所述步骤S1中,还包括:
针对所述分布式存储系统中的写入请求,设计数据块写入算法,对即将写入的数据进行块划分,并发地在多个存储节点上进行数据块写入。
优选的,在所述步骤S1中,还包括:
所述数据块写入算法,具体过程为:
第一步,动态的块划分与编排策略;
第二步,动态负载均衡;
第三步,并发写入与优化策略。
优选的,在所述步骤S3中,具体包括:
在所述并行计算中,首先根据数据特性对智慧工厂大规模数据中的存储数据进行合理的数据分区,任务分类,得到数据特性矩阵和任务分类矩阵,并对其进行预处理。
优选的,在所述步骤S3中,还包括:
对每个任务进行任务识别与数据切片。
优选的,在所述步骤S3中,还包括:
在智慧工厂的大规模数据分析中,为了确保数据一致性,采用数据版本控制和锁机制。
优选的,在所述步骤S3中,还包括:
在所述并行计算中,引入动态任务调度,基于节点权重,进行任务分配。
优选的,在所述步骤S3中,还包括:
在各个节点接收任务后,并行处理任务,当各个节点完成任务后,得到局部结果,引入任务权重,合并所述局部结果,得到全局结果。
有益效果:
本申请实施例中提供的多个技术方案,至少具有如下技术效果或优点:
1、本申请通过动态的块划分与编排策略,允许系统优化存储空间利用和提高数据写入及查询速度,并发的数据块写入大大提高了系统的I/O吞吐量,满足了大规模数据快速存储的需求,引入动态负载均衡策略确保了存储负载在不同的节点上均匀分布,使系统得到最佳性能。
2、本申请通过消除数据冗余,有效地减少了不必要的数据块,从而节省了大量的存储空间,通过使用Raft一致性协议,确保所有存储节点上的数据状态保持一致,即使在分布式环境中也可以实现,减少数据丢失和损坏的风险,从而提供了更高的容错能力。
3、本申请通过特征缩放,数据被标准化,确保模型训练和分析时的准确性;数据版本控制和锁机制确保在分布式环境中,各计算节点工作在同一版本的数据上,减少数据冲突和不一致的风险;根据计算节点的能力和负载动态分配任务,确保资源的最优利用并减少计算瓶颈,根据每个节点的计算能力和工作负载分配任务,确保工作均衡分配。
4、本申请的技术方案能够有效解决存储系统不够完善,容错能力差以及数据分析结果不准确,各节点数据处理任务分配不均衡的技术问题,通过动态的块划分与编排策略,允许系统优化存储空间利用和提高数据写入及查询速度,并发的数据块写入大大提高了系统的I/O吞吐量,满足了大规模数据快速存储的需求,引入动态负载均衡策略确保了存储负载在不同的节点上均匀分布,使系统得到最佳性能;通过消除数据冗余,有效地减少了不必要的数据块,从而节省了大量的存储空间,通过使用Raft一致性协议,确保所有存储节点上的数据状态保持一致,即使在分布式环境中也可以实现,减少数据丢失和损坏的风险,从而提供了更高的容错能力;通过特征缩放,数据被标准化,确保模型训练和分析时的准确性;数据版本控制和锁机制确保在分布式环境中,各计算节点工作在同一版本的数据上,减少数据冲突和不一致的风险;根据计算节点的能力和负载动态分配任务,确保资源的最优利用并减少计算瓶颈,根据每个节点的计算能力和工作负载分配任务,确保工作均衡分配。
附图说明
图1为本申请所述智慧工厂大规模数据存储和分析方法的流程图;
具体实施方式
本申请实施例通过提供一种智慧工厂大规模数据存储和分析方法,解决了现有技术中存储系统不够完善,容错能力差以及数据分析结果不准确,各节点数据处理任务分配不均衡的技术问题,总体思路如下:
首先,设计分布式存储系统实现对智慧工厂生产和操作数据的存储;当数据被存入分布式存储系统时,针对写入延迟,应用数据块级的快速写入技术,快速完成数据写入;基于数据写入时出现的数据冗余,采用冗余数据清理算法对分布式存储系统中的数据块进行清洗,实现数据存储的紧凑,同时,实施分布式一致性协议,确保数据在写入或更新时,在所有节点上保持一致性,为大规模数据分析提供条件;基于分布式存储系统中的数据,使用并行计算进行数据分析,得到准确一致性的数据分析结果;动态的块划分与编排策略允许系统优化存储空间利用和提高数据写入及查询速度,并发的数据块写入显著提高了系统的I/O吞吐量,满足了大规模数据快速存储的需求,引入动态负载均衡策略确保了存储负载在不同的节点上均匀分布,使系统得到最佳性能;通过消除数据冗余,有效地减少了不必要的数据块,从而节省了大量的存储空间,通过使用Raft一致性协议,确保所有存储节点上的数据状态保持一致,即使在分布式环境中也可以实现,减少数据丢失和损坏的风险,从而提供了更高的容错能力;通过特征缩放,数据被标准化,确保模型训练和分析时的准确性;数据版本控制和锁机制确保在分布式环境中,各计算节点工作在同一版本的数据上,减少数据冲突和不一致的风险;根据计算节点的能力和负载动态分配任务,确保资源的最优利用并减少计算瓶颈,根据每个节点的计算能力和工作负载分配任务,确保工作均衡分配。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
参照附图1,本申请所述一种智慧工厂大规模数据存储和分析方法,包括以下步骤:
S1. 设计分布式存储系统实现对智慧工厂生产和操作数据的存储;当数据被存入分布式存储系统时,针对写入延迟,应用数据块级的快速写入技术,快速完成数据写入;
为了应对智慧工厂环境下大量、动态变化的数据存储需求,并保证数据的可靠性和可用性,设计分布式存储系统,具体有:
首先,通过数据采集工具收集智慧工厂生产和操作数据,利用统计分析对所述生产和操作数据的特性进行分析得到所述生产和操作数据的特性报告,如数据类型、大小、访问模式,为后续的存储结构提供初步设计指导;
进一步,设计存储架构:基于数据特性和系统需求选择一个主节点和多个从节点的布局,确保系统的管理效率和数据的并发访问;基于主-从结构设计,为增强数据的可靠性和容错性,由工作人员根据系统需求设定数据备份规则,如每个数据块的备份数量,得到数据备份策略;
进一步,针对数据压缩与分片;为了优化存储空间利用和提高数据传输速度,根据数据特性利用经验法选择合适的压缩算法,如LZ77、Snappy、LZ4;得到压缩算法选择和压缩后的数据格式;为了提高数据存储和访问的效率,基于数据特性报告和主-从结构设计,利用哈希算法设定分片规则,得到数据分片策略;
进一步,针对数据写入流程,为数据存储提供明确的操作步骤,基于主-从结构设计,数据备份策略,数据分片策略,使用RAFT或Paxos协议保证数据写入的一致性,在数据块成功写入主要的从节点后,再分发到备份节点,得到数据写入流程图和相关算法;
针对分布式存储系统中的写入请求,设计一个高效的数据块写入算法,对即将写入的数据进行块划分,并发地在多个存储节点上进行数据块写入,提高写入速度;所述高效的数据块写入算法,具体过程如下:
第一步,动态的块划分与编排策略;在面对大规模的数据写入时,首先,对于压缩和分片后的数据集,为了确保每个数据块在可接受的大小范围内并最大化存储节点的I/O性能,采用动态的块大小划分策略。通过获取数据集的总大小和确定一个最佳的块大小范围,例如64MB-128MB,可以采用如下策略:如果当前压缩块大于128MB,则使用二分法进一步分块;如果连续的压缩块总大小小于64MB,则进行合并,为了优化数据块之间的相关性,需要进行数据块编排。首先从数据中提取时间戳、来源、标签等元信息。接着使用聚类算法,基于这些元信息对数据片段进行聚类,这样,相关的数据片段可以被放入同一个块中,从而在查询时提高性能;
第二步,动态负载均衡;为了确保数据在存储系统中的均匀分布,引入动态负载均衡策略;在数据块划分和编排完成后,为确保数据块能够被均匀地分配到所有存储节点上,特别是负载较低的节点上,所有存储节点定期向主节点发送心跳信息以及它们当前的负载信息,如当前存储量、剩余存储空间和CPU使用率,主节点接收到这些信息后,利用负载评估算法来动态决定新的数据块应该写入哪个存储节点,如,可以使用加权法进行负载评估:负载= 0.5 * CPU使用率+ 0.5 *已使用存储空间/总存储空间,此外,还需要注意热点数据的情况,如果某个数据块或数据区域被频繁写入,主节点可以将其迁移到其他负载较低的节点;
第三步,并发写入与优化策略;完成了动态负载均衡后,为了最大化写入性能,引入并发写入与优化策略,当大量的写入请求同时涌入时,利用基于目标节点的合并算法使用队列缓存数据块,当达到一定数量或大小后,将数据块合并,并发出写入请求,此外,为了确保关键数据在高并发环境下得到及时处理,可以分析历史数据,预测每个数据块的访问频率,并为其分配相应的优先级。利用优先级队列,可以确保高优先级的数据块得到及时处理,而较低优先级的数据块则可以稍后处理。
完成所有数据块的写入后,返回一个确认信息,标识数据成功存储;
进一步,针对数据读取流程,为数据检索提供明确的操作步骤,基于主-从结构设计,数据备份策略,数据分片策略,利用负载均衡器,如Nginx,均匀地将读取请求分发给从节点,利用缓存策略,如LRU,来加速高频数据的读取,得到数据读取流程图和相关算法;
进一步,针对容错机制,为增强系统的稳定性和数据的持续可用性,基于主-从结构设计,数据备份策略,使用Heartbeat机制定期检查节点状态,失效的数据块通过读取其他备份节点的数据进行恢复,得到容错机制设计文档;
进一步,针对扩展性,为未来的数据增长和系统扩展做好准备,基于所有之前的设计输出,新节点的加入使用数据迁移策略,如vnode的数据重新分配,使用分区/子分区策略来动态调整数据分片,得到系统扩展策略文档;
进一步,针对查询优化,为提高数据查询的速度和准确性,基于数据特性报告,数据分片策略,使用倒排索引加速特定关键词的查询,对于热门查询,将其结果缓存在Redis或Memcached中,得到查询优化策略和相关算法;
进一步,针对监控和维护,为了保障系统的稳定运行,及时发现和解决问题,基于所有之前的设计输出,集成Prometheus和Grafana来实时监控系统状态,设定阈值,当系统的负载、错误率或延迟超出阈值时,发送警报通知,得到系统监控界面、警报通知机制和维护手册;
本申请通过动态的块划分与编排策略,允许系统优化存储空间利用和提高数据写入及查询速度,并发的数据块写入大大提高了系统的I/O吞吐量,满足了大规模数据快速存储的需求,引入动态负载均衡策略确保了存储负载在不同的节点上均匀分布,使系统得到最佳性能。
S2. 基于数据写入时出现的数据冗余,采用冗余数据清理算法对分布式存储系统中的数据块进行清洗,实现数据存储的紧凑,同时,实施分布式一致性协议;
为了优化存储空间并确保数据的完整性,在分布式存储系统中,采用冗余数据清理算法,首先引入了一个稳定的哈希函数,这个函数的目的是为了将数据块内容映射到一个固定长度的哈希值,以便于快速比较。这一映射定义如下:
,
其中,是数据块的集合,/>代表n维的哈希值空间。
利用上述哈希函数,任意一个数据块被计算出一个哈希值/>,这样:
,
随后,这些哈希值被存储在一个哈希表中,用于检测是否存在重复的哈希值;对于每个重复的哈希值,需要进行二次确认,即比对实际数据块内容,以确认是否真的是冗余,一旦确定了冗余的数据块,系统会进行标记,并从存储系统中安全地移除这些冗余的数据块。但在这之前,必须确保至少有一个对应的数据块副本存在,以保证数据的完整性;接下来,为了维护存储的连续性和完整性,所有指向被删除数据块的指针都被适当地重定向或移除;
随着数据的快速读写,至关重要的是要确保所有的数据副本在不同的节点上都是一致的,因此,引入一个分布式一致性协议。基于系统的需求(例如写入速度,容错能力),选定一种适当的一致性协议,如Raft,Raft通过日志复制机制确保所有的副本都有相同的数据状态,并在所有存储节点上进行了配置;
为了维护一致性,在Raft中,一开始所有的节点都处于Follower状态,当任何一个节点在一定时间内未收到Leader的消息,该节点会变为Candidate状态并开始新的Leader选举;每个Candidate节点会为自己投票,并向其他节点发送选举请求,只有当Candidate节点从大多数节点获得了投票,它才能成为新的Leader:
,
其中, 是新Leader的term;/>表示Follower节点集合,这些节点遵循Leader的指示,并复制Leader的数据以保持数据的一致性;/>是Follower节点的term集合;
此外,日志复制是Raft的核心机制,当Leader收到数据写入请求时,它首先将数据写入其本地日志,并尝试将这个新的日志条目复制到所有的Follower节点,这个过程可以表示为:
,
其中,表示Leader节点。在分布式一致性协议中,Leader是主要负责处理读写请求的节点;/>表示 Leader的日志条目集合,这是Lead是已记录的所有日志条目的集合。
只有当多数Follower确认接收并写入了这个日志条目,Leader才会提交此条目并更新数据,为了进一步确保所有节点的日志和数据的一致性,Leader会使用心跳机制定期地将其日志的状态发送给所有Follower,如果Follower检测到其日志落后于Leader,它会请求缺失的日志条目,并根据接收到的日志更新其本地数据,具体公式为:
,
其中, 是一个根据日志更新数据的函数;/>表示单个Follower节点。从Follower集合/>中提取的一个具体的节点,其中/>是该节点的唯一标识符;
这样,整个分布式存储系统不仅确保了数据的完整性和一致性,还有效地优化了存储空间,满足了大规模数据存储和分析的需求。
本申请通过消除数据冗余,有效地减少了不必要的数据块,从而节省了大量的存储空间,通过使用Raft一致性协议,确保所有存储节点上的数据状态保持一致,即使在分布式环境中也可以实现,减少数据丢失和损坏的风险,从而提供了更高的容错能力。
S3. 基于分布式存储系统中的数据,使用并行计算进行数据分析,得到准确一致性的数据分析结果。
首先根据数据特性对智慧工厂大规模数据中的存储数据进行合理的数据分区,如:时间序列数据:以时间窗口为单位进行分区;传感器数据:根据传感器类型或位置进行分区;图像:通过图像内容或来源进行分区;根据分析任务的需求,任务可以分为分类、回归、聚类、模式识别,从而得到任务分类,得到数据特性矩阵和任务分类矩阵/>,对任务特性矩阵进行预处理,用/>表示其中的任一数据特性矩阵,其中/>的维度是/>,表示/>个样本和/>个特性,对上述数据进行预处理,利用特征缩放公式:
,
其中,表示预处理后的数据;/>和/>分别是/>的均值和标准差;
其中,任务分类矩阵,/>,其中/>是第/>个任务;
对每个任务进行任务识别与数据切片,即每个任务需要处理数据子集 />,其中 />,数据切片可以通过一些切片函数/> 完成,其中 />是切片参数,如切片的数量、大小;
进一步,在智慧工厂的大规模数据分析中,数据一致性是关键,为了确保这一点,采用数据版本控制和锁机制;具体地说,数据项(数据特性矩阵的第i行,第j列的数据)的版本号/>是一个整数,跟踪其修改历史,每次数据项发生变更,其版本号会递增1,即:
,
为了进一步保障数据的一致性,引入了锁机制,这意味着,在修改数据之前,首先获得这部分数据的锁,这一锁机制 可以用一个简单的布尔函数来表示,其中值为1表示数据项被锁定,而0表示其未被锁定:
,
进一步,考虑到智慧工厂中各计算节点的性能可能会有所不同,动态任务调度是另一个重要的部分,为了有效地调度任务,首先定义计算节点的计算能力/>和当前工作负载/>,这些指标可以从各种硬件和软件性能指标中获得;权重/>则是根据这两个因素来计算的,公式为:
,
其中,和/>是权重调节参数,它们调整计算能力和工作负载之间的相对重要性,通过经验法获得,/>表示第l个节点,节点总数用L表示;
基于节点权重,可以决定为每个节点分配多少任务,考虑到任务的复杂性和数据的特性,任务的分配基于节点的权重,节点权重越大,它应该处理的任务数据量就越大;考虑到总共有|T|个任务,节点的任务分配权重为:/>;基于特定任务所需处理的数据量,增加数据集的所有切片的总大小,得到任务分配的公式为:
,
其中,表示任务/>在节点/>上的分配权重,即任务应该在该节点上处理多少数据量;/>表示节点/>的相对权重;/>表示总任务量;/>代表数据集/>的第/>个切片的大小,/>表示数据集/>的所有切片的总大小;/>表示数据集/>的切片总数;
各个节点接收任务后,需要并行处理这些任务,并行处理和数据一致性也是并行计算中不可或缺的部分,每个节点负责并行处理其分配的任务/>,得到处理任务局部结果/>,所述处理结果,可能包括中间数据结果,性能指标,元数据,错误和异常信息;在数据处理结果的基础上增加锁机制和版本控制的影响,得到计算公式:
,
其中,是节点/>处理任务/>的数据处理结果,这取决于任务类型、节点的计算能力以及数据子集/>,通过经验数据、基准测试获得;/>表示锁机制的影响,锁机制/>确保数据的一致性和完整性。在并行计算环境中,多个任务可能会尝试访问和修改相同的数据项,为了避免数据冲突和不一致,引入了锁机制,当数据项/>被锁定时,其他任务需要等待直到锁被释放,这可能会导致任务的延迟和性能损失,因此,用/>来量化这种延迟的影响,其中/>是一个常数,用于表示锁机制的权重和影响程度,通过经验法获得;/>表示版本控制的影响,在分布式和并行计算环境中,版本控制确保数据的完整性和一致性。每当数据项/>被修改,其版本号会递增,这可以帮助跟踪数据的更改历史并避免潜在的数据冲突,与锁机制类似,版本控制也可能导致任务的延迟,因此用相同的常数/>来量化其影响;
最后,当各节点完成任务后,会得到局部结果。为了得到整体的、全局的分析结果,合并这些局部结果,每个节点的局部结果权重基于它处理的数据量和计算复杂性,权重的计算方式为;
,
其中 和 />是调整权重的参数,通过经验法获得,/>是节点上所有任务的总局部结果;/>是所有节点上任务/>的总局部结果;、/>是节点/>的当前计算能力和负载,来源可以是每个节点的硬件规格;
综合所有因素,得到全局结果,所述全局结果可能包括综合数据结果,全局性能指标,全局元数据,全局错误和异常报告;计算公式为:
,
其中,是一个常数,可以是基于经验的或者实验得到的最优权重;/>表示节点总数;
本申请通过特征缩放,数据被标准化,确保模型训练和分析时的准确性;数据版本控制和锁机制确保在分布式环境中,各计算节点工作在同一版本的数据上,减少数据冲突和不一致的风险;根据计算节点的能力和负载动态分配任务,确保资源的最优利用并减少计算瓶颈,根据每个节点的计算能力和工作负载分配任务,确保工作均衡分配。
综上所述,便完成了本申请所述的一种智慧工厂大规模数据存储和分析方法。
上述本申请实施例中的技术方案,至少具有如下的技术效果或优点:
1、本申请通过动态的块划分与编排策略,允许系统优化存储空间利用和提高数据写入及查询速度,并发的数据块写入大大提高了系统的I/O吞吐量,满足了大规模数据快速存储的需求,引入动态负载均衡策略确保了存储负载在不同的节点上均匀分布,使系统得到最佳性能。
2、本申请通过消除数据冗余,有效地减少了不必要的数据块,从而节省了大量的存储空间,通过使用Raft一致性协议,确保所有存储节点上的数据状态保持一致,即使在分布式环境中也可以实现,减少数据丢失和损坏的风险,从而提供了更高的容错能力。
3、本申请通过特征缩放,数据被标准化,确保模型训练和分析时的准确性;数据版本控制和锁机制确保在分布式环境中,各计算节点工作在同一版本的数据上,减少数据冲突和不一致的风险;根据计算节点的能力和负载动态分配任务,确保资源的最优利用并减少计算瓶颈,根据每个节点的计算能力和工作负载分配任务,确保工作均衡分配。
效果调研:
本申请的技术方案能够有效解决存储系统不够完善,容错能力差以及数据分析结果不准确,各节点数据处理任务分配不均衡的技术问题,并且,上述系统或方法经过了一系列的效果调研,通过动态的块划分与编排策略,允许系统优化存储空间利用和提高数据写入及查询速度,并发的数据块写入大大提高了系统的I/O吞吐量,满足了大规模数据快速存储的需求,引入动态负载均衡策略确保了存储负载在不同的节点上均匀分布,使系统得到最佳性能;通过消除数据冗余,有效地减少了不必要的数据块,从而节省了大量的存储空间,通过使用Raft一致性协议,确保所有存储节点上的数据状态保持一致,即使在分布式环境中也可以实现,减少数据丢失和损坏的风险,从而提供了更高的容错能力;通过特征缩放,数据被标准化,确保模型训练和分析时的准确性;数据版本控制和锁机制确保在分布式环境中,各计算节点工作在同一版本的数据上,减少数据冲突和不一致的风险;根据计算节点的能力和负载动态分配任务,确保资源的最优利用并减少计算瓶颈,根据每个节点的计算能力和工作负载分配任务,确保工作均衡分配。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (5)
1.一种智慧工厂大规模数据存储和分析方法,其特征在于,包括以下步骤:
S1. 设计分布式存储系统实现对智慧工厂生产和操作数据的存储;当数据被存入分布式存储系统时,针对写入延迟,设计数据块写入算法,对即将写入的数据进行块划分,并发地在至少两个存储节点上进行数据块写入,所述数据块写入算法,具体过程如下:
第一步,动态的块划分与编排策略;在面对大规模的数据写入时,首先,对于压缩和分片后的数据集,采用动态的块大小划分策略;通过获取数据集的总大小和确定最佳的块大小范围,具体包括64MB-128MB,则采用如下策略:当当前压缩块大128MB时,使用二分法进一步分块;当连续的压缩块总大小小于64MB时,则进行合并;通过数据块编排优化数据块之间的相关性;首先从数据中提取元信息,包括时间戳、来源、标签;接着使用聚类算法,基于所述元信息对数据片段进行聚类,使相关的数据片段被放入同一个块中;
第二步,动态负载均衡;引入动态负载均衡策略;在数据块划分和编排完成后,所有存储节点定期向主节点发送心跳信息以及当前的负载信息,包括当前存储量、剩余存储空间和CPU使用率,主节点接收到负载信息后,利用负载评估算法动态地决定新的数据块写入的存储节点,包括,使用加权法进行负载评估:负载= 0.5 * CPU使用率+ 0.5 *已使用存储空间/总存储空间,还需要注意热点数据的情况,当某个数据块或数据区域被频繁写入时,主节点将所述数据块或数据区域迁移到负载低的节点;
第三步,并发写入与优化策略;完成了动态负载均衡后,引入并发写入与优化策略,利用基于目标节点的合并算法使用队列缓存数据块,当达到一定数量或大小后,将数据块合并,并发出写入请求;进一步,分析历史数据,预测每个数据块的访问频率,并为所述数据块分配相应的优先级;
S2. 基于数据写入时出现的数据冗余,采用冗余数据清理算法对分布式存储系统中的数据块进行清洗,实现数据存储的紧凑,同时,实施分布式一致性协议;
S3. 基于分布式存储系统中的数据,使用并行计算进行数据分析,引入动态任务调度,基于节点权重,进行任务分配,具体实现过程如下:
定义计算节点的计算能力/>和当前工作负载/>;节点权重/>的计算公式为:
,
其中,和/>是权重调节参数,用于调整计算能力和当前工作负载之间的相对重要性,通过经验法获得;/>表示第l个节点,节点总数用L表示;
基于节点权重,当总共有|T|个任务时,节点的任务分配权重为:;任务分配的公式为:
,
其中,表示任务/>在节点/>上的分配权重,即任务应该在该节点上处理的数据量;/>表示节点/>的相对权重;/>表示总任务量;/>代表数据集的第/>个切片的大小,/>表示数据集/>的所有切片的总大小;/>表示数据集/>的切片总数;
各个节点接收任务后,每个节点负责并行处理其分配的任务/>,得到处理任务局部结果/>,计算公式如下:
,
其中,是节点/>处理任务/>的数据处理结果,取决于任务类型、节点的计算能力以及数据子集/>,通过经验数据、基准测试获得;/>表示锁机制的影响,/>表示锁机制,/>是常数,用于表示锁机制的权重和影响程度,通过经验法获得;/>表示版本控制的影响,/>表示版本控制;
最后,当各节点完成任务后,得到局部结果,合并所述局部结果,每个节点的局部结果权重的计算公式为:
,
其中 和 />是调整权重的参数,通过经验法获得;/>是节点/>上所有任务的总局部结果;/>是所有节点上任务/>的总局部结果;/>、/>是节点/>的当前计算能力和负载,来源于每个节点的硬件规格;
得到全局结果,所述全局结果包括综合数据结果,全局性能指标,全局元数据,全局错误和异常报告;计算公式为:
,
其中,是常数,基于经验或者实验得到的最优权重。
2.根据权利要求1所述的一种智慧工厂大规模数据存储和分析方法,其特征在于,所述步骤S1,具体包括:
设计分布式存储系统实现对智慧工厂生产和操作数据的存储;所述设计分布式存储系统包含:通过数据采集工具收集智慧工厂生产和操作数据,利用统计分析对所述生产和操作数据的特性进行分析得到生产和操作数据的特性报告、设计存储架构、数据压缩与分片、数据写入流程、数据读取流程、容错机制、扩展性、查询优化、监控和维护。
3.根据权利要求1所述的一种智慧工厂大规模数据存储和分析方法,其特征在于,在所述步骤S3中,具体包括:
在所述并行计算中,首先根据数据特性对智慧工厂大规模数据中的存储数据进行合理的数据分区,任务分类,得到数据特性矩阵和任务分类矩阵,并对其进行预处理。
4.根据权利要求3所述的一种智慧工厂大规模数据存储和分析方法,其特征在于,在所述步骤S3中,还包括:
对每个任务进行任务识别与数据切片。
5.根据权利要求4所述的一种智慧工厂大规模数据存储和分析方法,其特征在于,在所述步骤S3中,还包括:
在智慧工厂的大规模数据分析中,为了确保数据一致性,采用数据版本控制和锁机制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311243169.5A CN116991332B (zh) | 2023-09-26 | 2023-09-26 | 一种智慧工厂大规模数据存储和分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311243169.5A CN116991332B (zh) | 2023-09-26 | 2023-09-26 | 一种智慧工厂大规模数据存储和分析方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116991332A CN116991332A (zh) | 2023-11-03 |
CN116991332B true CN116991332B (zh) | 2023-12-15 |
Family
ID=88532431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311243169.5A Active CN116991332B (zh) | 2023-09-26 | 2023-09-26 | 一种智慧工厂大规模数据存储和分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116991332B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117997944B (zh) * | 2024-04-07 | 2024-06-11 | 北京开运联合信息技术集团股份有限公司 | 多数据源、多协议的数据分发方法、系统及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102882983A (zh) * | 2012-10-22 | 2013-01-16 | 南京云创存储科技有限公司 | 一种云存储系统中提升并发访问性能的数据快速存储方法 |
CN103297268A (zh) * | 2013-05-13 | 2013-09-11 | 北京邮电大学 | 基于p2p技术的分布式数据一致性维护系统和方法 |
CN105808339A (zh) * | 2014-12-29 | 2016-07-27 | 华为技术有限公司 | 大数据并行计算方法及装置 |
CN109600359A (zh) * | 2018-11-21 | 2019-04-09 | 浙江工商大学 | 基于节点数据处理能力和节点运行负载的数据分配方法 |
CN109857565A (zh) * | 2019-01-18 | 2019-06-07 | 深圳壹账通智能科技有限公司 | 数据处理方法、装置、计算机设备及存储介质 |
CN110502523A (zh) * | 2019-08-01 | 2019-11-26 | 广东浪潮大数据研究有限公司 | 业务数据存储方法、装置、服务器及计算机可读存储介质 |
CN113127567A (zh) * | 2021-04-29 | 2021-07-16 | 武汉优品楚鼎科技有限公司 | 基于分布式存储的金融数据计算系统、方法及装置 |
CN113672170A (zh) * | 2021-07-23 | 2021-11-19 | 复旦大学附属肿瘤医院 | 一种冗余数据标记及去除方法 |
CN114500578A (zh) * | 2021-12-27 | 2022-05-13 | 天翼云科技有限公司 | 分布式存储系统负载均衡调度方法、装置及存储介质 |
CN114594914A (zh) * | 2022-03-17 | 2022-06-07 | 阿里巴巴(中国)有限公司 | 用于分布式存储系统的控制方法及系统 |
CN116226139A (zh) * | 2023-05-09 | 2023-06-06 | 南昌大学 | 一种适用大规模海洋数据的分布式存储和处理方法及系统 |
-
2023
- 2023-09-26 CN CN202311243169.5A patent/CN116991332B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102882983A (zh) * | 2012-10-22 | 2013-01-16 | 南京云创存储科技有限公司 | 一种云存储系统中提升并发访问性能的数据快速存储方法 |
CN103297268A (zh) * | 2013-05-13 | 2013-09-11 | 北京邮电大学 | 基于p2p技术的分布式数据一致性维护系统和方法 |
CN105808339A (zh) * | 2014-12-29 | 2016-07-27 | 华为技术有限公司 | 大数据并行计算方法及装置 |
CN109600359A (zh) * | 2018-11-21 | 2019-04-09 | 浙江工商大学 | 基于节点数据处理能力和节点运行负载的数据分配方法 |
CN109857565A (zh) * | 2019-01-18 | 2019-06-07 | 深圳壹账通智能科技有限公司 | 数据处理方法、装置、计算机设备及存储介质 |
CN110502523A (zh) * | 2019-08-01 | 2019-11-26 | 广东浪潮大数据研究有限公司 | 业务数据存储方法、装置、服务器及计算机可读存储介质 |
CN113127567A (zh) * | 2021-04-29 | 2021-07-16 | 武汉优品楚鼎科技有限公司 | 基于分布式存储的金融数据计算系统、方法及装置 |
CN113672170A (zh) * | 2021-07-23 | 2021-11-19 | 复旦大学附属肿瘤医院 | 一种冗余数据标记及去除方法 |
CN114500578A (zh) * | 2021-12-27 | 2022-05-13 | 天翼云科技有限公司 | 分布式存储系统负载均衡调度方法、装置及存储介质 |
CN114594914A (zh) * | 2022-03-17 | 2022-06-07 | 阿里巴巴(中国)有限公司 | 用于分布式存储系统的控制方法及系统 |
CN116226139A (zh) * | 2023-05-09 | 2023-06-06 | 南昌大学 | 一种适用大规模海洋数据的分布式存储和处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116991332A (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9609060B2 (en) | Distributed storage system and method | |
US20240111774A1 (en) | Locally rebuilding rows for query execution via a database system | |
CN116991332B (zh) | 一种智慧工厂大规模数据存储和分析方法 | |
KR102210972B1 (ko) | 고속 빅데이터 분석을 수행하는 스마트팩토리 시스템 | |
US11880716B2 (en) | Parallelized segment generation via key-based subdivision in database systems | |
US20230176968A1 (en) | Accessing both replication based storage and redundancy coding based storage for query execution | |
US11321288B2 (en) | Record deduplication in database systems | |
US11734355B2 (en) | Processing queries based on level assignment information | |
US11675757B2 (en) | Maintaining row durability data in database systems | |
Lu et al. | TridentKV: A read-optimized LSM-tree based KV store via adaptive indexing and space-efficient partitioning | |
US11449521B2 (en) | Database management system | |
CN112650739A (zh) | 煤矿数据中台的数据存储处理方法和装置 | |
CN116244610A (zh) | 一种基于机器学习的分布式查询系统及其优化方法 | |
Patel et al. | Resource monitoring framework for big raw data processing | |
Lu et al. | On the auto-tuning of elastic-search based on machine learning | |
CN114896250A (zh) | 一种键值分离的键值存储引擎索引优化方法及装置 | |
CN113434376B (zh) | 一种基于NoSQL的Web日志分析方法、装置 | |
CN112558869B (zh) | 基于大数据遥感影像缓存方法 | |
CN118152378B (zh) | 一种智能化数据中台的建设方法及系统 | |
CN116069870A (zh) | 基于分布式系统的数据存储方法、装置、设备及介质 | |
CN118035311A (zh) | 一种高效的时序数据存储方法、系统及计算机设备 | |
Gao | Research on Database Optimization Techniques and Methods of Public Library Management Information System under the Background of Big Data | |
CN115658759A (zh) | 一种乱序流式数据的降频方法、装置、设备及存储介质 | |
CN117573664A (zh) | 基于gpu加速的rdf数据存储和查询方法 | |
CN116225822A (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 |