CN104778259A - 一种高效的数据分析处理方法 - Google Patents
一种高效的数据分析处理方法 Download PDFInfo
- Publication number
- CN104778259A CN104778259A CN201510189212.3A CN201510189212A CN104778259A CN 104778259 A CN104778259 A CN 104778259A CN 201510189212 A CN201510189212 A CN 201510189212A CN 104778259 A CN104778259 A CN 104778259A
- Authority
- CN
- China
- Prior art keywords
- operational symbol
- index
- rule
- node
- mining
- 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.)
- Pending
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种高效的数据分析处理方法,该方法包括:建立面向不同类型数据集上的挖掘规则计算的动态索引;对实时到达的数据集元组进行挖掘计算。本发明提出了一种数据分析提取方法,根据所建立的分级索引,数据匹配方法在不降低挖掘准确率的情况下,大幅度提升了性能。
Description
技术领域
本发明涉及大数据分析,特别涉及一种高效的数据分析处理方法。
背景技术
利用大数据处理实现大型企业的运营数据在线挖掘具有广泛的应用前景。对于大数据环境下,包含不同媒体格式的数据集。通过对挖掘规则生成索引,可以提升规则计算的判别速度,大大提高数据集在线挖掘的效率。数据集包含文本、图片、音视频等不同属性的元信息,属性间存在较大的差异。然而在实际的挖掘过程中,由于挖掘规则集规模大、关联维度高,使得大规模数据集上的挖掘计算量大,效率低下。而且现有技术大多是针对单一类型的数据集进行优化索引,而且规则集的数量也相对较少,没有充分利用多种类型数据集中不同属性之间的关系,因而很难直接应用到多种类型的数据挖掘中,直接影响了挖掘性能。
发明内容
为解决上述现有技术所存在的问题,本发明提出了一种高效的数据分析处理方法,包括:
建立面向不同类型数据集上的挖掘规则计算的动态索引,支持挖掘规则的实时更新,首先对不同类型数据集的属性集进行分类,然后根据数据集的属性类型将输入的挖掘规则集划分为不同的运算符集合,基于不同的运算符集合生成分级索引;
对实时到达的数据集元组进行挖掘计算时,首先对元组进行矢量提取和剪裁计算;将量化后的矢量经过运算符属性分类处理后得到不同的运算符矢量;利用已建立的分级索引的挖掘规则,通过两级索引进行过滤得到满足条件的挖掘规则集。
优选地,所述分级索引包括第一层的二叉搜索树分级索引、第二层的多维矢量分级索引,以及挖掘规则和运算符的关联表,对分级索引的3个操作分别是:搜索、插入和删除;
其中所述二叉搜索树分级索引是由非连续型运算符生成;所述多维矢量分级索引是根据连续型运算符对应的多维矢量生成的多维空间树;所述挖掘规则与运算符的关联表完成两层索引挖掘规则结果的组合。
优选地,所述建立面向不同类型数据集上的挖掘规则计算的动态索引进一步包括规则预处理、运算符集合划分和分级索引生成,
首先对预处理后的规则集按照属性分类进行一定的划分,再对划分后的数据集分层生成索引,规则集划分时,对于预处理后的n条规则,按照属性类别和值域划分了非连续型运算符集合A和连续型运算符集合B;其中:Σ||A||+||B||=Σq∈Qp(q),Q为已注册的挖掘规则集,q为单个挖掘规则,p为运算符,将第一维上的运算符集合分为了s个区间I1,I2,…,Is,其中每个区间只有非连续型运算符或者连续型运算符,经过了预处理的维度转换后,I1,I2,…,Is的区间内含有的运算符属性相似,便于分层次索引的生成;同时,将优先级信息应用于不同类型数据集注册的规则集,规则的优先级表示其被挖掘计算的需求,当一个新的挖掘规则注册到系统中,首先通过预处理模块将挖掘规则按照属性类型划分为非连续型运算符pd和连续型运算符pc,然后将非连续型运算符pd插入到分级索引的第一层索引中,即插入到非连续型属性对应的二叉搜索树索引中;最后将连续型运算符pc插入到分级索引的第二层索引中;
当将非连续型运算符pd插入到第一层的二叉搜索树的时候,首先按照排序二叉树的标准插入方式进行插入,因此需要自底向上进行旋转,直到满足堆特性,在删除过程中,先把优先级设置为最低,自上而下转移到叶子,然后删除;
当将连续型运算符pc插入到分级索引的第二层索引时,首先定位到要插入的目标叶子节点,第二层索引插入连续型运算符pc的过程从第二层的根节点开始,顺次按照广度优先搜索,按照多维空间的包含关系进行搜索,当找到一个叶子节点以后,检查该叶子节点的分支数;如果发现已经超过预设分支阈值,则直接进行节点分裂,产生新节点,并将该叶子节点已有的节点和Pc的矢量利用启发式策略平均分配到两个节点中,最后依次更新父节点信息,如果叶子节点的分支数没有超过预设分支阈值,则直接通过更新父节点来完成插入操作。
本发明相比现有技术,具有以下优点:
本发明提出了一种数据分析提取方法,根据所建立的分级索引,数据匹配方法在不降低挖掘准确率的情况下,大幅度提升了性能。
附图说明
图1是根据本发明实施例的高效的数据分析处理方法的流程图。
具体实施方式
下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本发明。
本发明的一方面提供了一种高效的数据分析处理方法。图1是根据本发明实施例的高效的数据分析处理方法流程图。
本发明在多维索引的基础上,引入了分级索引的思想。考虑不同类型数据集本身的特性,将数据集包含的属性划分为非连续型属性和连续型属性。考虑到非连续型属性上的运算符共享度高的特性,提出了一种两层的分级索引,给出了索引生成和挖掘和匹配方法。
本发明提出了面向不同类型数据集上大规模挖掘规则计算的动态索引,支持挖掘规则的实时更新,其主体流程包括索引生成和实时匹配计算。生成索引时,首先对不同类型数据集的属性集进行分类:连续型属性和非连续型属性。然后,根据属性类型将输入的挖掘规则集划分为不同的运算符集合,基于不同的运算符集合生成分级索引:根据非连续型属性上的运算符生成二叉搜索树作为第一层索引;在第二层,将所有连续型属性映射为多维空间,根据连续性属性相关的运算符生成多维索引。由于非连续型属性上的运算符都是非连续值,所以生成的第一层索引可以快速定位到挖掘规则上,而且空间开销也比较小。在本发明的分级索引的第二层,本发明将属性相同的属性运算符按照维度划分生成索引,尽可能的提升挖掘规则处理速度。对实时到达的数据集元组t进行挖掘计算时,首先对t进行矢量提取和剪裁计算;量化后的矢量经过运算符属性分类处理后得到不同的运算符矢量;运用本发明的分级索引的挖掘规则方法通过两级索引过滤得到满足条件的挖掘规则集。
从结构上来讲,本发明的分级索引包括3个重要组成部分以及3个重要操作。其中,3个组成部分分别是:(1)第一层的二叉搜索树分级索引;(2)第二层的多维矢量分级索引;(3)挖掘规则和运算符的关联表。基于本发明的分级索引的3个主要操作分别是:(1)搜索;(2)插入;(3)删除。
本发明的分级索引总体上是1个两层的分级索引。第一层是由非连续型运算符生成的二叉搜索树索引;第二层是根据连续型运算符对应的多维矢量生成的多维空间树;另外1个很重要的组成部分是挖掘规则与运算符的关联表,用来完成两层索引挖掘规则结果的快速组合。
本发明的分级索引中的节点可以分为3类:首层节点top,第二层的中间节点mid和叶子节点leaf。
在首层节点中包含以下元素:attr为首层二叉搜索树节点对应的非连续型属性,value为该二叉搜索树节点对应的非连续值,weight为该节点代表的运算符的优先级,left,right为该节点的左右孩子节点。在中间节点中:branch代表着第二层索引对应的多维空间树结构的中间节点指针。在叶节点中:mbr为第二层叶子节点对应的多维矢量。
基于本发明的分级索引,提出一种可行的索引生成方法,共分为3个步骤:规则预处理、运算符集合和划分和分级索引生成。先对预处理后的规则集按照属性分类进行一定的划分,在此基础上再对划分后的数据集分层生成索引。
规则集划分时,对于预处理后的n条规则,按照属性类别和值域划分了非连续型运算符集合A和连续型运算符集合B。其中:
Σ||A||+||B||=Σq∈Qp(q),Q为已注册的挖掘规则集,q为单个挖掘规则,p为运算符。假设将第一维上的运算符集合分为了s个区间I1,I2,…,Is,其中每个区间只有非连续型运算符或者连续型运算符。由于经过了预处理的维度转换,使得I1,I2,…,Is,的区间内含有的运算符属性相似,便于分层次索引的生成。同时,不同类型数据集注册的规则集通常包含着优先级信息,规则的优先级越高,表示其被挖掘计算的需求越紧迫。当一个新的挖掘规则注册到系统中,本发明的分级索引首先通过预处理模块将挖掘规则按照属性类型划分为非连续型运算符pd和连续型运算符pc。然后将非连续型运算符pd插入到本发明的分级索引的第一层索引中,也就是插入到非连续型属性对应的二叉搜索树索引中;最后将连续型运算符pc插入到分级索引的第二层索引中。
当将pd插入到第一层的二叉搜索树的时候,首先按照排序二叉树的标准插入方式进行插入,但这时可能违反二叉搜索树的堆特性,因此需要自底向上进行旋转,直到堆特性得到满足。删除是相反的,先把优先级设置为最低,自上而下转移到叶子,然后删除。
分级索引的第二层插入方法大致为:首先定位到要插入的目标叶子节点,定位的过程本身是个递归过程。第二层索引插入pc的过程从第二层的根节点开始,顺次按照广度优先搜索,按照多维空间的包含关系进行搜索,当找到一个叶子节点n以后,检查n的分支数。如果发现已经超过分支阈值M,则直接进行节点分裂,产生新节点,并将n已有的节点和Pc的矢量利用启发式策略平均分配到两个节点中,最后依次更新父节点信息。如果n的分支数没有超过阈值M,则直接通过更新父节点来完成插入操作。
基于非连续型运算符的特性,本发明的分级索引的第一层索引用二叉搜索树生成,加快非连续型运算符的快速挖掘规则计算。假设空树的优先级为无穷大,则上面的添加和删除方法可以正确处理只有一个儿子的情形。第一层索引的添加和删除操作的期望时间复杂度均为O(log n)。
插入过程最重要的问题是第二层索引中节点的分裂策略。在这里本发明采用启发式策略。首先取出所有要分裂的块。然后选择交叠面积最小、同时覆盖两个块的面积最大的两个块。最后将剩余的块按照面积交叠差异依次划归到不同的节点中。
在这一实施例重点介绍数据集元组在索引结构的挖掘过程。针对元组t,本发明的分级索引充分挖掘面向数据挖掘上规则集的特征,首先扫描第一层的二叉搜索树索引来计算满足条件的非连续运算符集合。由于非连续型运算符共享度很高,这就大大提升了扫描速度,加快了挖掘规则的整个处理过程。然后,根据第一层索引命中的有效节点,搜索运算符关联表,找到第二层索引的节点指针,进入第二层多维索引中继续查找,最后,组合第一层和第二层命中的结果,将最终命中的规则集进行快速组合计算。
对于任意的数据集元组t,首先把非连续型属性值在多属性二叉搜索树索引中扫描,如果命中,表示有非连续型运算符命中,这种情况下才进行第二层索引的挖掘规则过程。否则直接返回。通过生成第一层触发索引,大大加快了本发明的分级索引数据集元组的挖掘规则过程。如果命中了非连续型运算符,则接下来进行第二层索引的并行挖掘规则过程。即对于第一层中的每一个多维索引依次进行属性值键值对的挖掘规则,并将挖掘规则结果存入缓存中。本发明根据获得的缓存运行规则聚合算法,最终获得命中的挖掘规则结果集。
综上所述,本发明提出了一种数据分析提取方法,根据所建立的分级索引,数据匹配方法在不降低挖掘准确率的情况下,大幅度提升了性能。
显然,本领域的技术人员应该理解,上述的本发明的各模块或各步骤可以用通用的计算系统来实现,它们可以集中在单个的计算系统上,或者分布在多个计算系统所组成的网络上,可选地,它们可以用计算系统可执行的程序代码来实现,从而,可以将它们存储在存储系统中由计算系统来执行。这样,本发明不限制于任何特定的硬件和软件结合。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
Claims (3)
1.一种高效的数据分析处理方法,其特征在于,包括:
建立面向不同类型数据集上的挖掘规则计算的动态索引,支持挖掘规则的实时更新,首先对不同类型数据集的属性集进行分类,然后根据数据集的属性类型将输入的挖掘规则集划分为不同的运算符集合,基于不同的运算符集合生成分级索引;
对实时到达的数据集元组进行挖掘计算时,首先对元组进行矢量提取和剪裁计算;将量化后的矢量经过运算符属性分类处理后得到不同的运算符矢量;利用已建立的分级索引的挖掘规则,通过两级索引进行过滤得到满足条件的挖掘规则集。
2.根据权利要求1所述的方法,其特征在于,所述分级索引包括第一层的二叉搜索树分级索引、第二层的多维矢量分级索引,以及挖掘规则和运算符的关联表,对分级索引的3个操作分别是:搜索、插入和删除;
其中所述二叉搜索树分级索引是由非连续型运算符生成;所述多维矢量分级索引是根据连续型运算符对应的多维矢量生成的多维空间树;所述挖掘规则与运算符的关联表完成两层索引挖掘规则结果的组合。
3.根据权利要求2所述的方法,其特征在于,所述建立面向不同类型数据集上的挖掘规则计算的动态索引进一步包括规则预处理、运算符集合划分和分级索引生成,
首先对预处理后的规则集按照属性分类进行一定的划分,再对划分后的数据集分层生成索引,规则集划分时,对于预处理后的n条规则,按照属性类别和值域划分为非连续型运算符集合A和连续型运算符集合B;将第一维上的运算符集合分为s个区间I1,I2,…,Is,其中每个区间只有非连续型运算符或者连续型运算符,经过了预处理的维度转换后,I1,I2,…,Is的区间内含有的运算符属性相似,便于分层次索引的生成;同时,将优先级信息应用于不同类型数据集注册的规则集,规则的优先级表示其被挖掘计算的需求,当一个新的挖掘规则注册到系统中,首先通过预处理模块将挖掘规则按照属性类型划分为非连续型运算符pd和连续型运算符pc,然后将非连续型运算符pd插入到分级索引的第一层索引中,即插入到非连续型属性对应的二叉搜索树索引中;最后将连续型运算符pc插入到分级索引的第二层索引中;
当将非连续型运算符pd插入到第一层的二叉搜索树的时候,首先按照排序二叉树的标准插入方式进行插入,因此需要自底向上进行旋转,直到满足堆特性,在删除过程中,先把优先级设置为最低,自上而下转移到叶子,然后删除;
当将连续型运算符pc插入到分级索引的第二层索引时,首先定位到要插入的目标叶子节点,第二层索引插入连续型运算符pc的过程从第二层的根节点开始,顺次按照广度优先搜索,按照多维空间的包含关系进行搜索,当找到一个叶子节点以后,检查该叶子节点的分支数;如果发现已经超过预设分支阈值,则直接进行节点分裂,产生新节点,并将该叶子节点已有的节点和Pc的矢量利用启发式策略平均分配到两个节点中,最后依次更新父节点信息,如果叶子节点的分支数没有超过预设分支阈值,则直接通过更新父节点来完成插入操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510189212.3A CN104778259A (zh) | 2015-04-21 | 2015-04-21 | 一种高效的数据分析处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510189212.3A CN104778259A (zh) | 2015-04-21 | 2015-04-21 | 一种高效的数据分析处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104778259A true CN104778259A (zh) | 2015-07-15 |
Family
ID=53619723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510189212.3A Pending CN104778259A (zh) | 2015-04-21 | 2015-04-21 | 一种高效的数据分析处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104778259A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106845991A (zh) * | 2015-12-04 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种规则处理方法和设备 |
CN106845990A (zh) * | 2015-12-03 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种规则处理方法和设备 |
CN107436736A (zh) * | 2017-08-08 | 2017-12-05 | 郑州云海信息技术有限公司 | 一种hdfs中文件的存储方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823846A (zh) * | 2014-01-28 | 2014-05-28 | 浙江大学 | 一种基于图论的大数据存储及查询方法 |
US20140237554A1 (en) * | 2013-02-15 | 2014-08-21 | Infosys Limited | Unified platform for big data processing |
CN104331421A (zh) * | 2014-10-14 | 2015-02-04 | 安徽四创电子股份有限公司 | 一种大数据的高效处理方法及系统 |
-
2015
- 2015-04-21 CN CN201510189212.3A patent/CN104778259A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140237554A1 (en) * | 2013-02-15 | 2014-08-21 | Infosys Limited | Unified platform for big data processing |
CN103823846A (zh) * | 2014-01-28 | 2014-05-28 | 浙江大学 | 一种基于图论的大数据存储及查询方法 |
CN104331421A (zh) * | 2014-10-14 | 2015-02-04 | 安徽四创电子股份有限公司 | 一种大数据的高效处理方法及系统 |
Non-Patent Citations (1)
Title |
---|
臧文羽 等,: ""H-Tree:一种面向大数据流在线检测的层次索引"", 《计算机学报》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106845990A (zh) * | 2015-12-03 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种规则处理方法和设备 |
CN106845990B (zh) * | 2015-12-03 | 2020-09-18 | 阿里巴巴集团控股有限公司 | 一种规则处理方法和设备 |
CN106845991A (zh) * | 2015-12-04 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种规则处理方法和设备 |
CN107436736A (zh) * | 2017-08-08 | 2017-12-05 | 郑州云海信息技术有限公司 | 一种hdfs中文件的存储方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111159184B (zh) | 元数据追溯方法、装置及服务器 | |
CN105787126B (zh) | k-d树生成方法和k-d树生成装置 | |
CN106294418B (zh) | 检索方法和检索系统 | |
CN111666468A (zh) | 一种基于团簇属性在社交网络中搜索个性化影响力社区的方法 | |
CN104778259A (zh) | 一种高效的数据分析处理方法 | |
CN102207935A (zh) | 用于创建索引的方法和系统 | |
CN102999495B (zh) | 一种同义词语义映射关系确定方法及装置 | |
CN105354283A (zh) | 一种资源的搜索方法和装置 | |
CN109657060B (zh) | 安全生产事故案例推送方法及系统 | |
CN111475511A (zh) | 基于树状结构的数据存储方法、访问方法、装置及设备 | |
CN108170799A (zh) | 一种海量数据的频繁序列挖掘方法 | |
CN112445776B (zh) | 基于Presto的动态分桶方法、系统、设备及可读存储介质 | |
US20150293971A1 (en) | Distributed queries over geometric objects | |
Vu et al. | R*-grove: Balanced spatial partitioning for large-scale datasets | |
CN108334532B (zh) | 一种基于Spark的Eclat并行化方法、系统及装置 | |
CN113761293A (zh) | 图数据强连通分量挖掘方法、装置、设备及存储介质 | |
US9235578B2 (en) | Data partitioning apparatus and data partitioning method | |
CN112364185A (zh) | 多媒体资源的特征确定方法、装置、电子设备和存储介质 | |
CN111522918A (zh) | 数据汇聚方法、装置、电子设备及计算机可读存储介质 | |
CN104765851A (zh) | 一种大数据分析提取方法 | |
CN104850591A (zh) | 一种数据的转换存储方法及装置 | |
CN114490835B (zh) | 一种高效用项集挖掘方法、装置、电子设备和介质 | |
CN105740371A (zh) | 一种基于密度的增量聚类数据挖掘方法及系统 | |
CN104820661A (zh) | 一种基于业务对象的探索式数据分析系统 | |
CN112183567B (zh) | Birch算法的优化方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150715 |