CN111274275A - 数据处理方法、装置和计算机可读存储介质 - Google Patents
数据处理方法、装置和计算机可读存储介质 Download PDFInfo
- Publication number
- CN111274275A CN111274275A CN201811373749.5A CN201811373749A CN111274275A CN 111274275 A CN111274275 A CN 111274275A CN 201811373749 A CN201811373749 A CN 201811373749A CN 111274275 A CN111274275 A CN 111274275A
- Authority
- CN
- China
- Prior art keywords
- data
- cluster
- newly added
- original
- new
- 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.)
- Granted
Links
Images
Classifications
-
- 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
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据处理方法、装置和计算机可读存储介质,涉及数据处理领域。数据处理方法包括:根据新数据集中的边界数据将新数据集划分为若干文件块,其中,新数据集中的边界数据为原数据集中的文件块的边界数据;将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据;对变更的数据进行数据分析,更新原数据集的数据分析结果。本发明的实施例无需对新数据集中的所有数据进行分析,而是只需通过将新数据集进行分块处理以识别出变更的数据,并仅对变更的数据进行数据分析。通过结合原数据集的分析结果和变更的数据,可以获知新数据集的分析结果。从而,能够准确地识别出变更的数据,并提高了数据分析和处理的效率。
Description
技术领域
本发明涉及数据处理领域,特别涉及一种数据处理方法、装置和计算机可读存储介质。
背景技术
电信行业有大量的由运营商及合作厂商开发的行业应用。在客户使用这些应用时,运营商或厂商可以得到客户的移动DPI(Deep Packet Inspection,深度包检测)原始数据。借助于这些行业应用,通过分析每个应用所对应的URL(Uniform Resource Locator,统一资源定位符)及相关字段,可以从用户及产品两个角度对应用访问流量、新增用户量、活跃用户、应用访问深度、模块访问频率、应用访问时长、应用使用终端等指标进行分析,为企业客户管理部门进行决策提供参考数据。
在进行大数据分析过程中,随着客户数量的增长,需要及时更新最新的DPI数据所对应的分析结果。
发明内容
发明人认识到,由于DPI数据呈爆炸式的增长,如果每次分析都对所有DPI数据进行清洗、分析,将给数据挖掘及数据分析所需的后台计算带来巨大的负担,导致数据处理的效率较低。
本发明实施例所要解决的一个技术问题是:如何提高数据处理的效率。
根据本发明一些实施例的第一个方面,提供一种数据处理方法,包括:根据新数据集中的边界数据将新数据集划分为若干文件块,其中,新数据集中的边界数据为原数据集中的文件块的边界数据;将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据;对变更的数据进行数据分析,更新原数据集的数据分析结果。
在一些实施例中,根据新数据集中的边界数据将新数据集划分为若干文件块包括:初始化新的文件块,新的文件块为空;将新数据集中未读取的数据逐条读取到文件块中,并进行边界数据判断;响应于读取到空文件块中的数据为边界数据,结束文件块的数据读取。
在一些实施例中,进行边界数据判断包括:判断读取到文件块中的数据的指纹是否位于原数据集中的文件块的边界数据的指纹集合中。
在一些实施例中,多个Map任务中的每个Map任务根据新数据集中的边界数据,将新数据集中每个Map任务对应的数据划分为若干文件块;Reduce任务汇总新数据集中的文件块;Reduce任务将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据;Reduce任务对变更的数据进行数据分析,获得数据分析结果。
在一些实施例中,对变更的数据进行数据分析,更新原数据集的数据分析结果包括:根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据,其中,新增数据簇为变更的数据中的新增数据集包括的数据簇,原数据簇为原数据集包括的数据簇。
在一些实施例中,根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据包括:在变更的数据中的一条删除数据是原数据簇中的核心点,并且一条删除数据的邻域内的所有原数据集中的核心点属于同一个原数据簇的情况下,分割同一个原数据簇;从原数据集中删除一条删除数据。
在一些实施例中,根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据包括:根据新增数据集中数据的分布密度,将新增数据集划分为多个新增数据簇;如果一条新增数据为新增数据簇的离群点,将一条新增数据作为离群点添加到原数据簇中;如果一条新增数据为新增数据簇的核心点,在一条新增数据的邻域内的所有原数据集中的核心点属于多个原数据簇的情况下,合并多个原数据簇;将一条新增数据添加到邻域内的所有原数据集中的核心点所属的原数据簇中;如果一条新增数据为新增数据簇的边界点,将一条新增数据归并到一条新增数据邻域内距离最近的原数据集中的核心点所在的原数据簇中。
在一些实施例中,根据新增数据集中数据的分布密度,将新增数据集划分为多个新增数据簇包括:对于新增数据集中数据的每个维度,根据数据在每个维度上的分布密度,确定每个维度上的一个或多个划分值;根据所有维度上的划分值,将新数据集划分为多个分区;对每个分区内的数据进行聚类,生成多个新增数据簇;将属于不同分区且符合基于密度的合并条件的新增数据簇进行合并。
在一些实施例中,根据数据在每个维度上的分布密度,确定每个维度上的一个或多个划分值包括:统计数据在每个维度上每个单位区间的分布数量;将同一维度上分布数量或分布数量的排名低于预设值、并且与相邻单位区间的分布数量的差距大于预设值的单位区间确定为划分区间;将划分区间中的一个数值确定为划分值。
在一些实施例中,合并条件包括存在共享边界对象,共享边界对象是指与属于不同分区的每个新增数据簇中至少一个核心点均密度可达的数据。
根据本发明一些实施例的第二个方面,提供一种数据处理装置,包括:文件块划分模块,被配置为根据新数据集中的边界数据将新数据集划分为若干文件块,其中,新数据集中的边界数据为原数据集中的文件块的边界数据;变更数据获得模块,被配置为将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据;分析结果更新模块,被配置为对变更的数据进行数据分析,更新原数据集的数据分析结果。
在一些实施例中,文件块划分模块进一步被配置为初始化新的文件块,新的文件块为空;将新数据集中未读取的数据逐条读取到文件块中,并进行边界数据判断;响应于读取到空文件块中的数据为边界数据,结束文件块的数据读取。
在一些实施例中,文件块划分模块进一步被配置为判断读取到文件块中的数据的指纹是否位于原数据集中的文件块的边界数据的指纹集合中。
在一些实施例中,文件块划分模块有多个,每个文件块划分模块位于一个Map任务单元,变更数据获得模块和分析结果更新模块位于Reduce任务单元;Reduce任务单元还包括汇总模块,被配置为汇总新数据集中的文件块。
在一些实施例中,分析结果更新模块进一步被配置为根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据,其中,新增数据簇为变更的数据中的新增数据集包括的数据簇,原数据簇为原数据集包括的数据簇。
在一些实施例中,分析结果更新模块进一步被配置为在变更的数据中的一条删除数据是原数据簇中的核心点,并且一条删除数据的邻域内的所有原数据集中的核心点属于同一个原数据簇的情况下,分割同一个原数据簇;从原数据集中删除一条删除数据。
在一些实施例中,分析结果更新模块进一步被配置为根据新增数据集中数据的分布密度,将新增数据集划分为多个新增数据簇;如果一条新增数据为新增数据簇的离群点,将一条新增数据作为离群点添加到原数据簇中;如果一条新增数据为新增数据簇的核心点,在一条新增数据的邻域内的所有原数据集中的核心点属于多个原数据簇的情况下,合并多个原数据簇;将一条新增数据添加到邻域内的所有原数据集中的核心点所属的原数据簇中;如果一条新增数据为新增数据簇的边界点,将一条新增数据归并到一条新增数据邻域内距离最近的原数据集中的核心点所在的原数据簇中。
在一些实施例中,分析结果更新模块进一步被配置为对于新增数据集中数据的每个维度,根据数据在每个维度上的分布密度,确定每个维度上的一个或多个划分值;根据所有维度上的划分值,将新数据集划分为多个分区;对每个分区内的数据进行聚类,生成多个新增数据簇;将属于不同分区且符合基于密度的合并条件的新增数据簇进行合并。
在一些实施例中,分析结果更新模块进一步被配置为统计数据在每个维度上每个单位区间的分布数量;将同一维度上分布数量或分布数量的排名低于预设值、并且与相邻单位区间的分布数量的差距大于预设值的单位区间确定为划分区间;将划分区间中的一个数值确定为划分值。
在一些实施例中,合并条件包括存在共享边界对象,共享边界对象是指与属于不同分区的每个新增数据簇中至少一个核心点均密度可达的数据。
根据本发明一些实施例的第三个方面,提供一种数据处理装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述任意一种数据处理方法。
根据本发明一些实施例的第四个方面,提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现前述任意一种数据处理方法。
上述发明中的一些实施例具有如下优点或有益效果:当获得新数据集时,本发明的实施例无需对新数据集中的所有数据进行分析,而是只需通过将新数据集进行分块处理以识别出变更的数据,并仅对变更的数据进行数据分析。通过结合原数据集的分析结果和变更的数据,可以获知新数据集的分析结果。从而,能够准确地识别出变更的数据,并提高了数据分析和处理的效率。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为根据本发明一些实施例的数据处理方法的流程示意图。
图2为根据本发明一些实施例的新数据集划分方法的流程示意图。
图3为根据本发明一些实施例的基于MapReduce的数据处理方法的流程示意图。
图4为根据本发明一些实施例的数据分析结果更新方法的流程示意图。
图5A~5D为根据本发明一些实施例的新增数据分簇方法的示意图。
图6为根据本发明一些实施例的根据新增数据进行数据分析结果调整方法的流程示意图。
图7为根据本发明一些实施例的根据删除数据进行数据分析结果调整方法的流程示意图。
图8为根据本发明一些实施例的数据处理装置的结构示意图。
图9为根据本发明另一些实施例的数据处理装置的结构示意图。
图10为根据本发明一些实施例的应用场景架构图。
图11为根据本发明另一些实施例的数据处理装置的结构示意图。
图12为根据本发明又一些实施例的数据处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为根据本发明一些实施例的数据处理方法的流程示意图。如图1所示,该实施例的数据处理方法包括步骤S102~S106。
在步骤S102中,根据新数据集中的边界数据将新数据集划分为若干文件块,其中,新数据集中的边界数据为原数据集中的文件块的边界数据。
原数据集和新数据集的获取方式接近。例如,原数据集可以是采用与获取新数据集时相同的方法、但是在不同时刻获取的,也可以是采用相同的方法、在不同的条件下获取的等等。原数据集和新数据集中的部分数据是相同的,新数据集相较于原数据集,一部分数据发生了变更,例如新增了数据、删除了数据、修改了数据等等,但是由于获取的方式相近,因此二者的交集中的数据基本还维持着不变的顺序。
原数据集中的数据是分块存储的,原数据集中的数据可以按照预设的规则进行分块,例如按照数据块的大小等等。从而,原数据集中位于每个文件块的边界的数据可以用于划分新数据集,使得新数据集中的每个文件块尽量与原数据集中的文件块接近。
每个文件块存储的信息例如可以包括块标识、存储位置、偏移量、块长度、块状态等等。块标识例如可以为块中数据的指纹;偏移量例如可以为文件块的起始位置在整个文件、即整个数据集中的偏移量;块状态例如可以标识块中的数据是新增数据、删除数据还是已处理数据,已处理数据即为同时出现在原数据集和新数据集中的数据。
在步骤S104中,将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据。变更的数据包括新增数据和删除数据。修改的数据可以视为先删除原数据、再增加新数据。然后,可以将新数据集中的文件块和相应的状态存储到数据库中,例如可以存储到HBase数据库中。
在步骤S106中,对变更的数据进行数据分析,更新原数据集的数据分析结果。
通过上述实施例的方法,当获得新数据集时,无需对新数据集中的所有数据进行分析,而是只需通过将新数据集进行分块处理以识别出变更的数据,并仅对变更的数据进行数据分析。通过结合原数据集的分析结果和变更的数据,可以获知新数据集的分析结果。从而,能够准确地识别出变更的数据,并提高了数据分析和处理的效率。
在一些实施例中,在将新数据集划分为文件块时,首先可以初始化新的文件块,新的文件块为空;然后,将新数据集中未读取的数据逐条读取到文件块中,并进行边界数据判断;最后,响应于读取到空文件块中的数据为边界数据,结束文件块的数据读取。下面参考图2描述本发明将新数据集划分为文件块的实施例。
图2为根据本发明一些实施例的新数据集划分方法的流程示意图。如图2所示,该实施例的新数据集划分方法包括步骤S202~S210。
在步骤S202中,初始化新的文件块,新的文件块为空。
在步骤S204中,从新数据集中读取一条未读取的数据,并将这条数据插入到文件块中。例如,可以按顺序读取未读取的数据中的第一条。指纹提取方法可以采用散列的加密算法,例如k-shingle、simhash、minhash、Base64等等。
在一些实施例中,可以提取数据的指纹,并将指纹转换为一个long型的标识,然后将数据内容及其相应的标识插入到文件块的缓冲区中。
在步骤S206中,判断读取的数据是否为边界数据。例如,可以获取原数据集的文件块的边界数据列表,并进行比对。
在一些实施例中,可以判断读取到文件块中的数据的指纹是否位于原数据集中的文件块的边界数据的指纹集合中。
如果读取的数据是边界数据,执行步骤S208;如果读取的数据不是边界数据,则可以回到步骤S204以继续读取数据。
在步骤S208中,结束文件块的数据读取。
在步骤S210中,将结束读取的文件块插入到文件块列表中。然后执行步骤S202。
当读取完所有的新数据集中的数据时,则完成了新数据集的分块工作,生成的数据块位于文件块列表中。通过上述实施例的方法,可以自动化地完成新数据集中的数据的分块工作。
下面示例性地介绍一种文件块和文件块列表的实现方式。对于文件块,本发明可以提供一种用于保存文件块信息的FileBlockInformation类,该类实现的方法如表1所示。
表1
本发明还可以提供一种用户维护文件块列表的FileBlockDetector类,该类的实现方法如表2所示。
表2
在一些实施例中,为了进一步提高数据处理的效率,还可以采用MapReduce方法。下面参考图3描述本发明基于MapReduce的数据处理方法的实施例。
图3为根据本发明一些实施例的基于MapReduce的数据处理方法的流程示意图。该实施例可以在Hadoop平台上执行。如图3所示,该实施例的数据处理方法包括步骤S302~S308。
在步骤S302中,多个Map任务中的每个Map任务根据新数据集中的边界数据,将新数据集中每个Map任务对应的数据划分为若干文件块。
在步骤S304中,Reduce任务汇总新数据集中的文件块。
例如,每个Map任务可以将生成的文件块插入到Map任务对应的文件块列表中。Reduce任务则可以将这些文件块列表进行汇总,获得所有的文件块。
在步骤S306中,Reduce任务将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据。
在步骤S308中,Reduce任务对变更的数据进行数据分析,获得数据分析结果。
通过上述实施例的方法,可以基于Hadoop平台进行变更的数据的识别和处理。通过利用Map技术将数据进行分块,可以并行地进行数据分块操作,并通过Reduce技术统一完成变更的数据的识别。从而,可以提高数据处理的效率。
下面介绍对增量数据进行分析并更新原数据分析结果的示例性的方法。
在一些实施例中,可以根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据,其中,新增数据簇为变更的数据中的新增数据集包括的数据簇,原数据簇为原数据集包括的数据簇。下面参考图4描述本发明数据分析结果更新方法的实施例。
图4为根据本发明一些实施例的数据分析结果更新方法的流程示意图。如图4所示,该实施例的数据分析结果更新方法包括步骤S402~S406。
在步骤S402中,对变更的数据中的新增数据进行数据分类,获得新增数据簇。
在步骤S404中,根据新增的数据在新增数据簇中的类型,调整原数据簇中的数据。
在步骤S406中,根据删除的数据在原数据簇中的类型,调整原数据簇中的数据。
数据簇中的数据的类型例如可以包括离群点、边界点、核心点。核心点的一种示例性的定义为,对于某个点p,如果在点p的ε邻域内的数据点的数量大于预设值,则点p为核心点。点p的ε邻域是指以点p为圆心、半径为ε的圆形区域。每个簇中的核心点以外的点为边界点。离群点是指远离数据的平均水平的极大值或极小值,离群点的判定可以采用现有技术中的方法,这里不再赘述。
对于新增的数据,为了尽量节约计算资源,可以使得数据密度较大的一个区域中的数据尽量被划分到同一个簇中。本发明可以采用基于密度的分簇方法进行处理。下面参考图5A~5D描述本发明新增数据分簇方法的实施例。
图5A为根据本发明一些实施例的新增数据分簇方法的流程示意图。如图5A所示,该实施例的新增数据分簇方法包括步骤S502~S508。
在步骤S502中,对于新增数据集中数据的每个维度,根据数据在每个维度上的分布密度,确定每个维度上的一个或多个划分值。
在一些实施例中,可以统计数据在每个维度上每个单位区间的分布数量;将同一维度上分布数量或分布数量的排名低于预设值、并且与相邻单位区间的分布数量的差距大于预设值的单位区间确定为划分区间;将划分区间中的一个数值确定为划分值。从而,可以令划分值尽量避开数据分布密度较高的区域。
在步骤S504中,根据所有维度上的划分值,将新数据集划分为多个分区。
在步骤S506中,对每个分区内的数据进行聚类,生成多个新增数据簇。
在步骤S508中,将属于不同分区且符合基于密度的合并条件的新增数据簇进行合并。
从而,可以基于数据的密度信息对新增数据进行分区,进而进行分簇,以便根据分簇结果对原数据分析结果进行调整,提高了数据处理的效率。
在一些实施例中,合并条件包括存在共享边界对象,共享边界对象是指与属于不同分区的每个新增数据簇中至少一个核心点均密度可达的数据。
图5B是一些示例性的数据在二维坐标系中的分布示意图,图5B中相邻的平行虚线之间的坐标区间表示一个单位区间。如图5所示,横坐标的5个单位区间中,每个单位区间分布的数据量依次为5、1、5、6、3。由于单位区间(1,2]的数据量最小,并且与两侧的单位区间1和3的数据量相差较大,因此可以将横坐标区间(1,2]中的横坐标1.5作为横坐标的划分值。纵坐标的划分方式类似,划分值为1.5,这里不再赘述。
图5C是一些示例性的数据在二维坐标系中的分区结果示意图。在图5C中,采用横坐标1.5和纵坐标1.5的位置对应的直线实线所划分的区域为分区结果,用椭圆实线圈出的三个部分为三个示例性的分簇结果。下面结合图5C和图5D,示例性地介绍一种合并不同分区的簇的方法。
图5D为根据本发明一些实施例的新增数据簇合并方法的流程示意图。如图5D所示,该实施例的新增数据簇合并方法包括步骤S5082~5086。
在步骤S5082中,以划分值对应的分割线为中心,分别向分割线的两侧扩展邻域半径对应的距离,形成共享区域。如图5C所示,阴影部分为共享区域。图5C中的邻域半径长度为1.5。
在步骤S5084中,将到多个分别属于不同分区中不同簇的核心点均密度可达的点确定为这些不同簇的共享边界对象。
密度可达是指在一个数据点的集合D中,如果存在一个由数据点构成的链p1、p2……pn,其中p1=q、pn=p,对于点pi∈D(1≤i≤n),点pi+1是从点pi直接密度可达的,则点p是从点q密度可达的。直接密度可达是指在集合D中,如果点p在点q的ε邻域内,且点q是一个核心点,则点p从点q出发是直接密度可达的。
在步骤S5086中,将具有相同共享边界对象的簇进行合并。
例如,在图5C中,点A和点B是密度可达的,点A和点C也是密度可达的,则点A为点B所在的簇2和点C所在的簇3的共享边界对象。从而,可以将簇2和簇3合并为一个簇。
通过上述实施例的方法,可以基于数据的密度信息进一步将属于不同分区、但实际属于同一个数据密度较高的区域的簇进行合并,从而提高了数据分簇的准确性,进一步提升了后续数据分析的效率和准确性。
在一些实施例中,当数据簇中的数据发生变化时,可能会导致以下情况中的一种或多种:某个簇中的元素增加;某个簇中的元素减少;多个簇合并成一个簇;一个簇被分割成多个簇;新增了噪声点。根据变更的数据的类型,可以对原数据簇进行调整,从而无需额外分析全量数据,即可高效地获得新数据集的分析结果。下面分别结合图6和图7示例性地介绍对于新增的数据和删除的数据,如何调整原数据集中的数据簇。
图6为根据本发明一些实施例的根据新增数据进行数据分析结果调整方法的流程示意图。如图6所示,该实施例的数据分析结果调整方法包括步骤S602~S614。
在步骤S602中,根据新增数据集中数据的分布密度,将新增数据集划分为多个新增数据簇。划分新增数据簇的方法可以参考前述实施例,这里不再赘述。
在步骤S604中,判断一条未处理的新增数据的类型。对于离群点、核心点和边界点,分别执行步骤S606、S608、S614。
在步骤S606中,如果一条新增数据为新增数据簇的离群点,将这条新增数据作为离群点添加到原数据簇中。即,直接将离群点添加到原数据集中,但原数据簇的状态保持不变。
在步骤S608中,如果一条新增数据为新增数据簇的核心点,判断该条新增数据的邻域内的所有原数据集中的核心点是否属于多个原数据簇。如果是,执行步骤S610;如果不是,执行步骤S612。
在步骤S610中,合并多个原数据簇,将这条新增数据添加到邻域内的所有原数据集中的核心点所属的原数据簇中、即合并后的数据簇中。
在步骤S612中,将这条新增数据添加到邻域内的所有原数据集中的核心点所属的原数据簇中。即,直接将核心点添加到原数据集中,但原数据簇的状态保持不变。
在步骤S614中,如果一条新增数据为新增数据簇的边界点,将这条新增数据归并到这条新增数据邻域内距离最近的原数据集中的核心点所在的原数据簇中。原数据簇的状态保持不变。
通过上述实施例的方法,可以在新增数据时,根据新增数据的类型决定新增数据的归属以及原数据簇的处理方式,从而无需对数据进行全量分析,只需更新新增数据相关的簇的信息,提高了数据处理效率,节约了计算资源。
图7为根据本发明一些实施例的根据删除数据进行数据分析结果调整方法的流程示意图。如图7所示,该实施例的数据分析结果调整方法包括步骤S702~S708。
在步骤S702中,判断变更的数据中的未处理的删除数据的类型。对于核心点、离群点、边界点,分别执行步骤S704、S708、S708。
在步骤S704中,如果这条删除数据是原数据簇中的核心点,判断是否这条删除数据的邻域内的所有原数据集中的核心点属于同一个原数据簇。如果是,执行步骤S706;如果不是,执行步骤S708。
在步骤S706中,分割这条删除数据的邻域内的所有原数据集中的核心点所属的数据簇。
在步骤S708中,从原数据集中删除这条删除数据。即,当删除的数据是边界点和离群点时,原数据簇的状态保持不变。
通过上述实施例的方法,可以在删除数据时,根据删除的数据在原数据集中的类型对原数据簇进行相应的调整。
下面参考图8描述本发明数据处理装置的实施例。
图8为根据本发明一些实施例的数据处理装置的结构示意图。如图8所示,该实施例的数据处理装置80包括:文件块划分模块810,被配置为根据新数据集中的边界数据将新数据集划分为若干文件块,其中,新数据集中的边界数据为原数据集中的文件块的边界数据;变更数据获得模块820,被配置为将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据;分析结果更新模块830,被配置为对变更的数据进行数据分析,更新原数据集的数据分析结果。
在一些实施例中,文件块划分模块810进一步被配置为初始化新的文件块,新的文件块为空;将新数据集中未读取的数据逐条读取到文件块中,并进行边界数据判断;响应于读取到空文件块中的数据为边界数据,结束文件块的数据读取。
在一些实施例中,文件块划分模块810进一步被配置为判断读取到文件块中的数据的指纹是否位于原数据集中的文件块的边界数据的指纹集合中。
在一些实施例中,分析结果更新模块830进一步被配置为根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据,其中,新增数据簇为变更的数据中的新增数据集包括的数据簇,原数据簇为原数据集包括的数据簇。
在一些实施例中,分析结果更新模块830进一步被配置为在变更的数据中的一条删除数据是原数据簇中的核心点,并且一条删除数据的邻域内的所有原数据集中的核心点属于同一个原数据簇的情况下,分割同一个原数据簇;从原数据集中删除一条删除数据。
在一些实施例中,分析结果更新模块830进一步被配置为根据新增数据集中数据的分布密度,将新增数据集划分为多个新增数据簇;如果一条新增数据为新增数据簇的离群点,将一条新增数据作为离群点添加到原数据簇中;如果一条新增数据为新增数据簇的核心点,在一条新增数据的邻域内的所有原数据集中的核心点属于多个原数据簇的情况下,合并多个原数据簇;将一条新增数据添加到邻域内的所有原数据集中的核心点所属的原数据簇中;如果一条新增数据为新增数据簇的边界点,将一条新增数据归并到一条新增数据邻域内距离最近的原数据集中的核心点所在的原数据簇中。
在一些实施例中,分析结果更新模块830进一步被配置为对于新增数据集中数据的每个维度,根据数据在每个维度上的分布密度,确定每个维度上的一个或多个划分值;根据所有维度上的划分值,将新数据集划分为多个分区;对每个分区内的数据进行聚类,生成多个新增数据簇;将属于不同分区且符合基于密度的合并条件的新增数据簇进行合并。
在一些实施例中,分析结果更新模块830进一步被配置为统计数据在每个维度上每个单位区间的分布数量;将同一维度上分布数量或分布数量的排名低于预设值、并且与相邻单位区间的分布数量的差距大于预设值的单位区间确定为划分区间;将划分区间中的一个数值确定为划分值。
在一些实施例中,合并条件包括存在共享边界对象,共享边界对象是指与属于不同分区的每个新增数据簇中至少一个核心点均密度可达的数据。
下面参考图9描述本发明数据处理装置的实施例。
图9为根据本发明另一些实施例的数据处理装置的结构示意图。如图9所示,该实施例的数据处理装置90包括多个Map任务单元910和一个Reduce任务单元920。文件块划分模块9101有多个,每个文件块划分模块9101位于一个Map任务单元910,变更数据获得模块9201和分析结果更新模块9202位于Reduce任务单元920;Reduce任务单元920还包括汇总模块9203,被配置为汇总新数据集中的文件块。
下面参考图10描述本发明应用场景架构图的实施例。
图10为根据本发明一些实施例的应用场景架构图。如图10所示,在该实施例的应用场景中,大数据应用被划分为源数据层110、数据导入层120、数据存储层130、任务调度层140、业务层150、接口层160和展现层170。
源数据层110用于获得DPI数据。
数据导入层120用于根据元数据管理规则,对获得的DPI数据进行数据抽取、数据清洗、数据校验、数据融合的高操作。
数据存储层130例如可以包括NOSQL数据库1310和MySQL数据库1320,用于存储处理后的数据。
任务调度层140包括MapReduce模块1410、调度管理模块1420和DAO操作模块1430,用于为业务层150提供支持。
业务层150包括本发明实施例提供的数据处理装置1510,以及其他的数据处理模块。
接口层160用于将业务层150的处理结果返回给展现层170进行前端展现。
图11为根据本发明另一些实施例的数据处理装置的结构示意图。如图11所示,该实施例的数据处理装置110包括:存储器1110以及耦接至该存储器1110的处理器1120,处理器1120被配置为基于存储在存储器1110中的指令,执行前述任意一个实施例中的数据处理方法。
其中,存储器1110例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
图12为根据本发明又一些实施例的数据处理装置的结构示意图。如图12所示,该实施例的数据处理装置120包括:存储器1210以及处理器1220,还可以包括输入输出接口1230、网络接口1240、存储接口1250等。这些接口1230,1240,1250以及存储器1210和处理器1220之间例如可以通过总线1260连接。其中,输入输出接口1230为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口1240为各种联网设备提供连接接口。存储接口1250为SD卡、U盘等外置存储设备提供连接接口。
本发明的实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述任意一种数据处理方法。
本领域内的技术人员应当明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (22)
1.一种数据处理方法,包括:
根据新数据集中的边界数据将新数据集划分为若干文件块,其中,所述新数据集中的边界数据为原数据集中的文件块的边界数据;
将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据;
对变更的数据进行数据分析,更新原数据集的数据分析结果。
2.根据权利要求1所述的数据处理方法,其中,所述根据新数据集中的边界数据将新数据集划分为若干文件块包括:
初始化新的文件块,所述新的文件块为空;
将新数据集中未读取的数据逐条读取到所述文件块中,并进行边界数据判断;
响应于读取到所述空文件块中的数据为边界数据,结束所述文件块的数据读取。
3.根据权利要求2所述的数据处理方法,其中,所述进行边界数据判断包括:
判断读取到所述文件块中的数据的指纹是否位于原数据集中的文件块的边界数据的指纹集合中。
4.根据权利要求1所述的数据处理方法,其中,
多个Map任务中的每个Map任务根据新数据集中的边界数据,将新数据集中每个Map任务对应的数据划分为若干文件块;
Reduce任务汇总新数据集中的文件块;
Reduce任务将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据;
Reduce任务对变更的数据进行数据分析,获得数据分析结果。
5.根据权利要求1所述的数据处理方法,其中,所述对变更的数据进行数据分析,更新原数据集的数据分析结果包括:
根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据,其中,新增数据簇为变更的数据中的新增数据集包括的数据簇,原数据簇为原数据集包括的数据簇。
6.根据权利要求5所述的数据处理方法,其中,所述根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据包括:
在变更的数据中的一条删除数据是原数据簇中的核心点,并且所述一条删除数据的邻域内的所有原数据集中的核心点属于同一个原数据簇的情况下,分割所述同一个原数据簇;
从原数据集中删除所述一条删除数据。
7.根据权利要求5所述的数据处理方法,其中,所述根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据包括:
根据新增数据集中数据的分布密度,将新增数据集划分为多个新增数据簇;
如果一条新增数据为新增数据簇的离群点,将所述一条新增数据作为离群点添加到原数据簇中;
如果一条新增数据为新增数据簇的核心点,在所述一条新增数据的邻域内的所有原数据集中的核心点属于多个原数据簇的情况下,合并所述多个原数据簇;将所述一条新增数据添加到所述邻域内的所有原数据集中的核心点所属的原数据簇中;
如果一条新增数据为新增数据簇的边界点,将所述一条新增数据归并到所述一条新增数据邻域内距离最近的原数据集中的核心点所在的原数据簇中。
8.根据权利要求7所述的数据处理方法,其中,所述根据新增数据集中数据的分布密度,将新增数据集划分为多个新增数据簇包括:
对于新增数据集中数据的每个维度,根据数据在每个维度上的分布密度,确定每个维度上的一个或多个划分值;
根据所有维度上的划分值,将新数据集划分为多个分区;
对每个分区内的数据进行聚类,生成多个新增数据簇;
将属于不同分区且符合基于密度的合并条件的新增数据簇进行合并。
9.根据权利要求8所述的数据处理方法,其中,所述根据数据在每个维度上的分布密度,确定每个维度上的一个或多个划分值包括:
统计数据在每个维度上每个单位区间的分布数量;
将同一维度上所述分布数量或分布数量的排名低于预设值、并且与相邻单位区间的分布数量的差距大于预设值的单位区间确定为划分区间;
将划分区间中的一个数值确定为划分值。
10.根据权利要求8所述的数据处理方法,其中,所述合并条件包括存在共享边界对象,共享边界对象是指与属于不同分区的每个新增数据簇中至少一个核心点均密度可达的数据。
11.一种数据处理装置,包括:
文件块划分模块,被配置为根据新数据集中的边界数据将新数据集划分为若干文件块,其中,所述新数据集中的边界数据为原数据集中的文件块的边界数据;
变更数据获得模块,被配置为将新数据集中的文件块与原数据集中最相似的文件块进行比较,获得变更的数据;
分析结果更新模块,被配置为对变更的数据进行数据分析,更新原数据集的数据分析结果。
12.根据权利要求11所述的数据处理装置,其中,所述文件块划分模块进一步被配置为初始化新的文件块,所述新的文件块为空;将新数据集中未读取的数据逐条读取到所述文件块中,并进行边界数据判断;响应于读取到所述空文件块中的数据为边界数据,结束所述文件块的数据读取。
13.根据权利要求12所述的数据处理装置,其中,所述文件块划分模块进一步被配置为判断读取到所述文件块中的数据的指纹是否位于原数据集中的文件块的边界数据的指纹集合中。
14.根据权利要求11所述的数据处理装置,其中,所述文件块划分模块有多个,每个文件块划分模块位于一个Map任务单元,所述变更数据获得模块和分析结果更新模块位于Reduce任务单元;
所述Reduce任务单元还包括汇总模块,被配置为汇总新数据集中的文件块。
15.根据权利要求11所述的数据处理装置,其中,所述分析结果更新模块进一步被配置为根据变更的数据在新增数据簇和/或原数据簇中的类型,调整原数据簇中的数据,其中,新增数据簇为变更的数据中的新增数据集包括的数据簇,原数据簇为原数据集包括的数据簇。
16.根据权利要求15所述的数据处理装置,其中,所述分析结果更新模块进一步被配置为在变更的数据中的一条删除数据是原数据簇中的核心点,并且所述一条删除数据的邻域内的所有原数据集中的核心点属于同一个原数据簇的情况下,分割所述同一个原数据簇;从原数据集中删除所述一条删除数据。
17.根据权利要求15所述的数据处理装置,其中,所述分析结果更新模块进一步被配置为根据新增数据集中数据的分布密度,将新增数据集划分为多个新增数据簇;如果一条新增数据为新增数据簇的离群点,将所述一条新增数据作为离群点添加到原数据簇中;如果一条新增数据为新增数据簇的核心点,在所述一条新增数据的邻域内的所有原数据集中的核心点属于多个原数据簇的情况下,合并所述多个原数据簇;将所述一条新增数据添加到所述邻域内的所有原数据集中的核心点所属的原数据簇中;如果一条新增数据为新增数据簇的边界点,将所述一条新增数据归并到所述一条新增数据邻域内距离最近的原数据集中的核心点所在的原数据簇中。
18.根据权利要求17所述的数据处理装置,其中,所述分析结果更新模块进一步被配置为对于新增数据集中数据的每个维度,根据数据在每个维度上的分布密度,确定每个维度上的一个或多个划分值;根据所有维度上的划分值,将新数据集划分为多个分区;对每个分区内的数据进行聚类,生成多个新增数据簇;将属于不同分区且符合基于密度的合并条件的新增数据簇进行合并。
19.根据权利要求18所述的数据处理装置,其中,所述分析结果更新模块进一步被配置为统计数据在每个维度上每个单位区间的分布数量;将同一维度上所述分布数量或分布数量的排名低于预设值、并且与相邻单位区间的分布数量的差距大于预设值的单位区间确定为划分区间;将划分区间中的一个数值确定为划分值。
20.根据权利要求18所述的数据处理装置,其中,所述合并条件包括存在共享边界对象,共享边界对象是指与属于不同分区的每个新增数据簇中至少一个核心点均密度可达的数据。
21.一种数据处理装置,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1~10中任一项所述的数据处理方法。
22.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现权利要求1~10中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811373749.5A CN111274275B (zh) | 2018-11-19 | 2018-11-19 | 数据处理方法、装置和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811373749.5A CN111274275B (zh) | 2018-11-19 | 2018-11-19 | 数据处理方法、装置和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111274275A true CN111274275A (zh) | 2020-06-12 |
CN111274275B CN111274275B (zh) | 2023-07-04 |
Family
ID=71001294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811373749.5A Active CN111274275B (zh) | 2018-11-19 | 2018-11-19 | 数据处理方法、装置和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111274275B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112365244A (zh) * | 2020-11-27 | 2021-02-12 | 深圳前海微众银行股份有限公司 | 数据生命周期管理方法和装置 |
CN114445207A (zh) * | 2022-04-11 | 2022-05-06 | 广东企数标普科技有限公司 | 基于数字人民币的税务管理系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090271779A1 (en) * | 2008-04-25 | 2009-10-29 | Vmware, Inc. | Updating a file using differences and file format therefor |
US20100106723A1 (en) * | 2008-10-24 | 2010-04-29 | Industry-Academic Cooperation Foundation, Yonsei University | Method and system of clustering for multi-dimensional data streams |
US8255461B1 (en) * | 2009-03-06 | 2012-08-28 | Cisco Technology, Inc. | Efficient transmission of changing images using image caching |
US20130018853A1 (en) * | 2011-07-11 | 2013-01-17 | Dell Products L.P. | Accelerated deduplication |
CN103297482A (zh) * | 2012-03-05 | 2013-09-11 | 联想(北京)有限公司 | 信息处理方法和设备 |
CN103729225A (zh) * | 2014-01-22 | 2014-04-16 | 中国人民解放军国防科学技术大学 | 一种基于内容分块的远程文件实时更新方法 |
CN104615594A (zh) * | 2013-11-01 | 2015-05-13 | 阿里巴巴集团控股有限公司 | 一种数据更新方法及装置 |
-
2018
- 2018-11-19 CN CN201811373749.5A patent/CN111274275B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090271779A1 (en) * | 2008-04-25 | 2009-10-29 | Vmware, Inc. | Updating a file using differences and file format therefor |
US20100106723A1 (en) * | 2008-10-24 | 2010-04-29 | Industry-Academic Cooperation Foundation, Yonsei University | Method and system of clustering for multi-dimensional data streams |
US8255461B1 (en) * | 2009-03-06 | 2012-08-28 | Cisco Technology, Inc. | Efficient transmission of changing images using image caching |
US20130018853A1 (en) * | 2011-07-11 | 2013-01-17 | Dell Products L.P. | Accelerated deduplication |
CN103297482A (zh) * | 2012-03-05 | 2013-09-11 | 联想(北京)有限公司 | 信息处理方法和设备 |
CN104615594A (zh) * | 2013-11-01 | 2015-05-13 | 阿里巴巴集团控股有限公司 | 一种数据更新方法及装置 |
CN103729225A (zh) * | 2014-01-22 | 2014-04-16 | 中国人民解放军国防科学技术大学 | 一种基于内容分块的远程文件实时更新方法 |
Non-Patent Citations (1)
Title |
---|
燕彩蓉;钱凯;: "云存储中基于相似性的客户-服务端双端数据去重方法" * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112365244A (zh) * | 2020-11-27 | 2021-02-12 | 深圳前海微众银行股份有限公司 | 数据生命周期管理方法和装置 |
CN112365244B (zh) * | 2020-11-27 | 2024-04-26 | 深圳前海微众银行股份有限公司 | 数据生命周期管理方法和装置 |
CN114445207A (zh) * | 2022-04-11 | 2022-05-06 | 广东企数标普科技有限公司 | 基于数字人民币的税务管理系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111274275B (zh) | 2023-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10795872B2 (en) | Incremental bloom filter rebuild for B+ trees under multi-version concurrency control | |
CN102129425B (zh) | 数据仓库中大对象集合表的访问方法及装置 | |
WO2019174124A1 (en) | File sharing method based on two-dimensional code, server and terminal device | |
CN104123504A (zh) | 一种基于频繁项检索的云平台隐私保护方法 | |
CN111274275B (zh) | 数据处理方法、装置和计算机可读存储介质 | |
CN111723089B (zh) | 一种基于列式存储格式处理数据的方法和装置 | |
CN107784195A (zh) | 数据处理方法及装置 | |
Kim et al. | Location-based parallel sequential pattern mining algorithm | |
CN104217032A (zh) | 数据库维度的处理方法及装置 | |
CN111798406A (zh) | 一种图片质量评价方法和系统 | |
CN103544275A (zh) | 一种处理数据的方法及装置 | |
CN113239687B (zh) | 一种数据处理方法和装置 | |
CN118210811A (zh) | 一种业务处理方法、装置、电子设备及计算机可读介质 | |
CN112764935B (zh) | 大数据处理方法、装置、电子设备及存储介质 | |
CN114996503A (zh) | 一种节点定位方法和装置 | |
CN113590322A (zh) | 一种数据处理方法和装置 | |
CN113392138A (zh) | 一种隐私数据的统计分析方法、装置、服务器和存储介质 | |
CN106547907B (zh) | 一种频繁项集获取方法及装置 | |
CN106708606B (zh) | 基于MapReduce的数据处理方法及装置 | |
Sagharichian et al. | iPartition: a distributed partitioning algorithm for block-centric graph processing systems | |
CN113760521B (zh) | 一种虚拟资源的分配方法和装置 | |
CN111290927A (zh) | 一种数据监控方法和装置 | |
CN113780967B (zh) | 信息追溯方法和装置 | |
CN112925859B (zh) | 数据存储方法和装置 | |
CN113554041B (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 |