CN103942195B - 一种数据处理系统以及数据处理方法 - Google Patents
一种数据处理系统以及数据处理方法 Download PDFInfo
- Publication number
- CN103942195B CN103942195B CN201310017154.7A CN201310017154A CN103942195B CN 103942195 B CN103942195 B CN 103942195B CN 201310017154 A CN201310017154 A CN 201310017154A CN 103942195 B CN103942195 B CN 103942195B
- Authority
- CN
- China
- Prior art keywords
- data
- node
- calculate node
- calculate
- calculated
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24568—Data stream processing; Continuous queries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据处理方法和数据处理系统。本发明的数据处理方法是对从数据输入节点流向计算节点的数据流进行处理的方法,其特征在于,依次循环进行下述步骤直到对所有数据流完成处理:数据量计算步骤,计算所述计算节点当前能够进行计算的数据量大小;数据读取步骤,从所述数据流中读取所述数据量计算步骤计算出的数据量大小的数据并送入所述计算节点;数据计算步骤,所述计算节点对送入的数据进行计算并且获得计算结果。根据本发明,能够防止处理大量数据时的内存溢出并且能够改善计算节点的迭代性能。
Description
技术领域
本发明涉及数据处理技术,尤其是涉及支撑海量数据计算的数据挖掘系统以及方法。
背景技术
在现有技术中,挖掘计算涵盖丰富的计算方法。传统单机版挖掘软件已经无法承担大数据量下的业务承载,挖掘计算数据会一次性读入计算机内存。当读入数据量较大时,尤其是在逻辑回归算法计算过程中,容易造成计算机内存溢出,产生错误,无法正常运行。
图1是表示现有技术的数据挖掘系统的读取方式的示意图。
如图1所述,内存一次性从数据输入节点读入所有数据后,然后转入计算,在这个过程中,数据量过大,会产生内存溢出现象。其次,若内存不溢出,数据在计算节点开始计算时,处理的效率会根据现有内存使用情况做更新,效率无法得到有效控制。
发明内容
鉴于上述问题,本发明旨在提供一种能够避免传统软件一次性读入大数据导致内存溢出、能够合理分配数据输入资源的数据处理方法以及数据处理系统。
进一步地,本发明旨在提供一种不仅能避免传统挖掘软件一次性读入大数据导致内存溢出而且又能够改善计算节点的迭代性能的数据处理方法以及数据处理系统。
本发明的数据处理方法,是对从数据输入节点流向计算节点的数据流进行处理的方法,其特征在于,依次循环进行下述步骤直到对所有数据流完成处理:
数据量计算步骤,计算所述计算节点当前能够进行计算的数据量大小;
数据读取步骤,从所述数据流中读取所述数据量计算步骤计算出的数据量大小的数据并送入所述计算节点;
数据计算步骤,所述计算节点对送入的数据进行计算并且获得计算结果。
优选地,在所述数据量计算步骤中,根据所述计算节点当前的空闲内存Z和所述计算节点的因计算所消耗的内存Y,计算所述计算节点当前能够计算的数据量大小X。
优选地,在所述数据量计算步骤中,根据下述公式计算所述计算节点当前能够处理的数据量大小X,
X=Z×K-Y,其中,0<K≤1。
优选地,所述K为固定值或者变化值,
其中,Y远远小于Z×K。
优选地,在所述数据计算步骤中,在获得计算结果后,清空内存。
优选地,在所述数据计算步骤中,所述计算节点对送入的数据进行计算并且获得计算结果,在下次循环到所述数据计算步骤的情况下,以前一次的计算结果为基础,更新计算结果。
本发明的数据处理系统,是对数据流进行处理的系统,其特征在于,包括:
数据输入节点、数据分块节点以及计算节点,
所述数据输入节点用于计算所述计算节点当前能够进行计算的数据量大小;
所述数据分块节点用于从所述数据输入节点读取所述输入节点计算出的数据量大小的数据并送入所述计算节点,
所述计算节点对送入的数据进行计算并且获得计算结果,
其中,在所述计算节点对送入的数据进行计算并且获得计算结果后,所述数据输入节点再次计算所述计算节点当前能够进行计算的数据量大小并且所述数据分块节点再次从所述数据输入节点读取所述输入节点再次计算出的数据量大小的数据并送入所述计算节点进行计算,如此进行循环,直到所述计算节点对所有数据流完成处理。
优选地,所述数据输入节点根据所述计算节点当前的空闲内存Z和所述计算节点的因计算所消耗的内存Y,计算所述计算节点当前能够计算的数据量大小X。
优选地,所述数据输入节点根据下述公式计算所述计算节点当前能够处理的数据量大小X,
X=Z×K-Y,其中,0<K≤1。
优选地,所述K为固定值或者变化值,Y远远小于Z×K。
优选地,所述计算节点在获得计算结果后清空内存。
优选地,所述计算节点对送入的数据进行计算并且获得计算结果,在下次循环到计算的情况下,以前一次的计算结果为基础,更新计算结果。
根据上述本发明的数据处理方法以及数据处理系统,对于巨大的数据流,能够将巨大的数据流,按照计算节点能够进行计算的能力每次读入适当量大小的数据,类似于将数据流切成分块并让分块数据串行地计算节点,这样,能够避免大量数据集合输入而造成内存溢出的情况。而且,计算节点将每次计算出的计算结果作为下次计算的基础,即每次计算时以前一次的计算结果为基础更新计算结果,这样能够提高计算节点结果迭代性能。本发明的数据处理系统和数据处理方法在原有传统数据挖掘工具基础上,对于大数据量集合输入(亿级别数据),把数据拆分成若干数量数据块,依次输入到挖掘计算,并更新计算结果,从而避免因为读入大量数据而造成内存溢出。因此,本发明的数据处理系统以及数据处理方法能够适合数据挖掘输入数据量大,且算法支持动态更新参数模式。
附图说明
图1是表示现有技术的数据挖掘系统的读取方式的示意图。
图2是表示本发明的数据处理方法的流程图。
图3是表示本发明的数据处理系统的构造框图。
具体实施方式
下面介绍的是本发明的多个实施例中的一些,旨在提供对本发明的基本了解。并不旨在确认本发明的关键或决定性的要素或限定所要保护的范围。
首先,对于本发明的数据处理方法进行说明。本发明设计了一种逻辑回归计算方法,既避免了传统挖掘软件一次性读入大数据内存溢出,又改善了计算节点结果迭代性能。
本发明的数据处理方法是对从数据输入节点流向计算节点的数据流进行处理的方法。图2是表示本发明的数据处理方法的流程图。如图2所示,本发明的数据处理方法依次包含下述步骤:
数据量计算步骤S101:计算计算节点当前能够进行计算的数据量大小;
数据读取步骤S102:从数据流中读取上述数据量计算步骤S101计算出的数据量大小的数据并送入计算节点;
数据计算步骤S103:计算节点对送入的数据进行计算并且获得计算结果。
依次循环进行上述数据量计算步骤S101、数据读取步骤S102、数据计算步骤S103直到对所有数据流完成处理。
在本发明中,在数据量计算步骤S101中,根据计算节点当前的空闲内存Z和计算节点的因计算所消耗的内存Y,计算所述计算节点当前能够计算的数据量大小X。具体地,根据下述公式计算计算节点当前能够处理的数据量大小X,
X=Z×K-Y,其中,0<K≤1。
其中,Y远远小于Z×K。K可以取0<K≤1范围中的任意数值并且每次循环计算时K可以是相同的固定值也可以是不同的变化值。
例如,当计算节点的因计算所消耗的内存Y=20M、计算节点当前的空闲内存Z=1000M,K=0.95的情况下,根据上述公式可以计算出该计算节点当前能够计算的数据量大小X=930M。
那么,假设从数据输入节点流向计算节点的数据流总共是4G的情况下,在数据量计算步骤S101中,利用上述公式计算出该计算节点当前能够计算的数据大小X为930M,接着,在数据读取步骤S102中,从总共为4G的数据流中读出前面的930M的数据并送入计算节点,然后,在数据计算步骤S103中,对该读出的930M的数据进行计算并获得第一计算结果。在获得第一计算结果之后,清空内存。
完成第一次循环后,接着进行第二次循环。在第二次循环的情况下,在数据量计算步骤S101中,假设Z=1000M、K=0.95、Y=40M的情况下,利用上述公式计算出该计算节点当前能够计算的数据大小X为910M,则在数据读取步骤S102中,从总共为4G的数据流中在前面已经读取了930M的数据后的位置继续读取910M的数据并送入计算节点,然后,在数据计算步骤S103中,以前次计算获得第一计算结果为基础,对该读出的910M的数据进行计算并获得第二计算结果。在获得第二计算结果之后,清空内存。
如第一次循环、第二次循环那样地继续进行循环,直到对数据流中的所有的数据完成处理。这样能够将巨大的数据流分割成分块串行地输入到计算节点,并由计算节点串行地对输入的数据继续计算。
由此,在本发明的数据处理方法中,对于巨大的数据流,能够按照计算节点能够进行计算的能力每次读入适当量的数据,类似于将数据流切成分块并让分块数据串行地计算节点,这样,能够避免大量数据集合输入而造成内存溢出的情况。而且,计算节点将每次计算出的计算结果作为下次计算的基础,即每次计算时以前一次的计算结果为基础更新计算结果,这样能够提高计算节点结果迭代性能。
以下对于本发明的数据处理系统进行说明。本发明的数据处理系统是对数据流进行处理的系统。
图3是表示本发明的数据处理系统的构造框图。如图3所示,本发明的数据处理系统包括数据输入节点100、数据分块节点200、计算节点300。
数据输入节点100用于计算计算节点300当前能够进行计算的数据量大小。数据分块节点200用于从所述数据输入节点100读取数据输入节点100计算出的数据量大小的数据并送入计算节点300。计算节点300点用于对送入的数据进行计算并且获得计算结果,其中,在计算节点300对送入的数据进行计算并且获得计算结果后,数据输入节点100再次计算该计算节点300当前能够进行计算的数据量大小并且数据分块节点200再次从数据输入节点100读取该数据输入节点100计算出的数据量大小的数据并再次送入计算节点300进行计算,如此进行循环,直到计算节点对300所有数据流完成处理。
其中,数据输入节点100根据计算节点300当前的空闲内存Z和计算节点300的因计算所消耗的内存Y,计算计算节点300当前能够计算的数据量大小X。其中,数据输入节点100根据下述公式计算计算节点300当前能够处理的数据量大小X,
X=Z×K-Y,其中,0<K≤1。
其中,Y远远小于Z×K。
而且,计算节点300在每次获得计算结果后清空内存。
进一步地,计算节点300对送入的数据进行计算并且获得计算结果,在下次循环到计算节点进行的情况下,以前一次的计算结果为基础,更新计算结果。
这样,在本发明的数据处理系统中,对于巨大的数据流,能够利用数据输入节点100和数据分块节点200将巨大的数据流,按照计算节点300能够进行计算的能力每次读入适当量大小的数据,类似于将数据流切成分块并让分块数据串行地计算节点300,这样,能够避免大量数据集合输入而造成内存溢出的情况。而且,计算节点300将每次计算出的计算结果作为下次计算的基础,即每次计算时以前一次的计算结果为基础更新计算结果,这样能够提高计算节点结果迭代性能。
本发明的数据处理系统和数据处理方法在原有传统数据挖掘工具基础上,对于大数据量集合输入(亿级别数据),把数据拆分成若干数量数据块,依次输入到挖掘计算,并更新计算结果,从而避免因为读入大量数据而造成内存溢出。因此,本发明的数据处理系统以及数据处理方法能够适合数据挖掘输入数据量大,且算法支持动态更新参数模式。
以上例子主要说明了本发明的数据处理方法以及数据处理系统。尽管只对其中一些本发明的具体实施方式进行了描述,但是本领域普通技术人员应当了解,本发明可以在不偏离其主旨与范围内以许多其他的形式实施。因此,所展示的例子与实施方式被视为示意性的而非限制性的,在不脱离如所附各权利要求所定义的本发明精神及范围的情况下,本发明可能涵盖各种的修改与替换。
Claims (8)
1.一种数据处理方法,是对从数据输入节点流向计算节点的数据流进行处理的方法,其特征在于,依次循环进行下述步骤直到对所有数据流完成处理:
数据量计算步骤,计算所述计算节点当前能够进行计算的数据量大小;
数据读取步骤,从所述数据流中读取所述数据量计算步骤计算出的数据量大小的数据并送入所述计算节点;
数据计算步骤,所述计算节点对送入的数据进行计算并且获得计算结果,
在所述数据量计算步骤中,根据所述计算节点当前的空闲内存Z和所述计算节点的因计算所消耗的内存Y,计算所述计算节点当前能够计算的数据量大小X,
在所述数据量计算步骤中,所述计算节点对送入的数据进行计算并且获得计算结果,在下次循环到所述数据计算步骤时,以前一次的计算结果为基础,更新计算结果。
2.如权利要求1所述的数据处理方法,其特征在于,
在所述数据量计算步骤中,根据下述公式计算所述计算节点当前能够处理的数据量大小X,
X=Z×K-Y,其中,0<K≤1。
3.如权利要求2所述的数据处理方法,其特征在于,
所述K为固定值或者变化值,
其中,Y远远小于Z×K。
4.如权利要求2所述的数据处理方法,其特征在于,
在所述数据计算步骤中,在获得计算结果后,清空内存。
5.一种数据处理系统,是对数据流进行处理的系统,其特征在于,包括:数据输入节点、数据分块节点以及计算节点,
所述数据输入节点用于计算所述计算节点当前能够进行计算的数据量大小;
所述数据分块节点用于从所述数据输入节点读取所述输入节点计算出的数据量大小的数据并送入所述计算节点,
所述计算节点对送入的数据进行计算并且获得计算结果,
其中,在所述计算节点对送入的数据进行计算并且获得计算结果后,所述数据输入节点再次计算所述计算节点当前能够进行计算的数据量大小并且所述数据分块节点再次从所述数据输入节点读取所述输入节点再次计算出的数据量大小的数据并送入所述计算节点进行计算,如此进行循环,直到所述计算节点对所有数据流完成处理,
所述数据输入节点根据所述计算节点当前的空闲内存Z和所述计算节点的因计算所消耗的内存Y,计算所述计算节点当前能够计算的数据量大小X,
所述计算节点对送入的数据进行计算并且获得计算结果,在下次循环到计算的情况下,以前一次的计算结果为基础,更新计算结果。
6.如权利要求5所述的数据处理系统,其特征在于,
所述数据输入节点根据下述公式计算所述计算节点当前能够处理的数据量大小X,
X=Z×K-Y,其中,0<K≤1。
7.如权利要求6所述的数据处理系统,其特征在于,
所述K为固定值或者变化值,
Y远远小于Z×K。
8.如权利要求7所述的数据处理系统,其特征在于,
所述计算节点在获得计算结果后清空内存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310017154.7A CN103942195B (zh) | 2013-01-17 | 2013-01-17 | 一种数据处理系统以及数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310017154.7A CN103942195B (zh) | 2013-01-17 | 2013-01-17 | 一种数据处理系统以及数据处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103942195A CN103942195A (zh) | 2014-07-23 |
CN103942195B true CN103942195B (zh) | 2017-07-25 |
Family
ID=51189865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310017154.7A Active CN103942195B (zh) | 2013-01-17 | 2013-01-17 | 一种数据处理系统以及数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103942195B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106570030A (zh) * | 2015-10-12 | 2017-04-19 | 阿里巴巴集团控股有限公司 | 基于大数据的计算方法和装置 |
CN105550523A (zh) * | 2015-12-28 | 2016-05-04 | 上海携程商务有限公司 | 数据处理方法 |
US10122788B2 (en) * | 2016-03-29 | 2018-11-06 | Amazon Technologies, Inc. | Managed function execution for processing data streams in real time |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102193830A (zh) * | 2010-03-12 | 2011-09-21 | 复旦大学 | 面向众核环境的分治映射/归约并行编程模型 |
CN102629219A (zh) * | 2012-02-27 | 2012-08-08 | 北京大学 | 并行计算框架中的Reduce端自适应负载均衡方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5584914B2 (ja) * | 2010-07-15 | 2014-09-10 | 株式会社日立製作所 | 分散計算システム |
-
2013
- 2013-01-17 CN CN201310017154.7A patent/CN103942195B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102193830A (zh) * | 2010-03-12 | 2011-09-21 | 复旦大学 | 面向众核环境的分治映射/归约并行编程模型 |
CN102629219A (zh) * | 2012-02-27 | 2012-08-08 | 北京大学 | 并行计算框架中的Reduce端自适应负载均衡方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103942195A (zh) | 2014-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110909920B (zh) | 考虑多故障场景的输电网容量规划优化方法及系统 | |
CN106779372B (zh) | 基于改进免疫禁忌算法的农机调度方法 | |
Wu et al. | Green data center placement in optical cloud networks | |
CN107343302B (zh) | 一种基于多核处理器的传感网路由结构优化方法 | |
CN111814420B (zh) | 基于拓扑优化和启发式搜索的总体布线方法 | |
CN104868465B (zh) | 基于模糊机会约束的电力系统网架重构优化方法 | |
CN105976048A (zh) | 一种基于改进人工蜂群算法的输电网扩展规划方法 | |
CN103902774A (zh) | X结构下超大规模集成电路总体布线方法 | |
CN103942195B (zh) | 一种数据处理系统以及数据处理方法 | |
CN115408929B (zh) | 用于隧道掘进施工预测的数据处理方法和装置 | |
CN110659284A (zh) | 基于树图结构的区块定序方法及系统、数据处理终端 | |
CN107808200B (zh) | 配电网短时检修计划优化方法和装置 | |
Wang et al. | Latency-aware mapping for 3D NoC using rank-based multi-objective genetic algorithm | |
CN105138650A (zh) | 一种基于孤立点挖掘的Hadoop数据清洗方法及系统 | |
Ploussard et al. | A search space reduction method for transmission expansion planning using an iterative refinement of the DC load flow model | |
CN108108883B (zh) | 一种基于聚类算法的车辆调度网络弹性简化方法 | |
CN113505561A (zh) | 一种软错误感知的fpga布局布线方法 | |
CN109787247A (zh) | 一种基于多参数规划的无功补偿规划方法 | |
CN112699615A (zh) | 一种跨时空能源综合配置优化方法、装置及存储介质 | |
CN109039826B (zh) | 数据采集方法、装置及电子设备 | |
CN114358447B (zh) | 一种柔性互联装置配置方法、装置、电子设备及存储介质 | |
CN115983733B (zh) | 基于水位控制的电力市场出清数据处理方法和装置 | |
CN104376366B (zh) | 一种最优网络最大流算法的选择方法和设备 | |
CN106875031A (zh) | 一种多车间作业调度方法及装置 | |
CN114285012B (zh) | 继电保护装置动作定值优化方法、系统、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |