一种基于Spark的Eclat并行化方法、系统及装置制造方法及图纸

技术编号:18553622 阅读:42 留言:0更新日期:2018-07-28 10:45
本发明专利技术公开了一种基于Spark的Eclat并行化方法、系统及装置,方法包括对事务数据库进行预处理,生成垂直事务数据库;将垂直事务数据库缓存至各个计算节点;对垂直事务数据库进行分发计算操作,得到多个频繁集;对多个频繁集进行合并操作,输出满足最小支持度的频繁集。系统包括获取模块、缓存模块、分发模块和合并模块。装置包括存储器和处理器。本发明专利技术通过将垂直数据库缓存至各个计算节点,提高了现有Eclat并行化方法的运行效率,且通过对垂直事务数据库进行分发计算操作,降低了网络开销。本发明专利技术可广泛应用于关联分析领域。

【技术实现步骤摘要】
一种基于Spark的Eclat并行化方法、系统及装置
本专利技术涉及关联分析领域,尤其是一种基于Spark的Eclat并行化方法、系统及装置。
技术介绍
Spark计算框架是一个用于实现快速而通用的集群计算的框架,可以在分布式内存中进行并行计算,并能构建出不同处理模型的应用。Eclat算法是一种用于生成频繁集和关联规则的关联算法,其主要操作为将事务数据库转化为垂直表达方式,然后对其进行交集操作,快速计算支持度,生成频繁集。现有基于Spark计算框架的Eclat并行化方案采用等价类方法,通过低维频繁集生成高维候选集,每次迭代操作都通过一个处理器进行集中处理,导致迭代生成频繁集的效率低下。另外,现有Eclat并行化方法没有将垂直事务数据库缓存至各个计算节点,导致每次迭代过程中,每个计算节点都要访问其他计算节点的数据,造成了严重的数据依赖和巨大的网络开销,迭代效率很低。
技术实现思路
为解决上述技术问题,本专利技术的目的在于:提供一种网络开销小且运行效率高的基于Spark的Eclat并行化方法。本专利技术的第二个目的在于:提供一种网络开销小且运行效率高的基于Spark的Eclat并行化系统。本本文档来自技高网...

【技术保护点】
1.一种基于Spark的Eclat并行化方法,其特征在于:包括以下步骤:对事务数据库进行预处理,生成垂直事务数据库;将垂直事务数据库缓存至各个计算节点;对垂直事务数据库进行分发计算操作,得到多个频繁集;对多个频繁集进行合并操作,输出满足最小支持度的频繁集。

【技术特征摘要】
1.一种基于Spark的Eclat并行化方法,其特征在于:包括以下步骤:对事务数据库进行预处理,生成垂直事务数据库;将垂直事务数据库缓存至各个计算节点;对垂直事务数据库进行分发计算操作,得到多个频繁集;对多个频繁集进行合并操作,输出满足最小支持度的频繁集。2.根据权利要求1所述的一种基于Spark的Eclat并行化方法,其特征在于:所述对事务数据库进行预处理,生成垂直事务数据库这一步骤,包括以下步骤:扫描事务数据库的所有项目;根据扫描的项目对事务数据库的每一条事务进行扫描,生成垂直事务数据库;根据垂直事务数据库计算频繁集。3.根据权利要求1所述的一种基于Spark的Eclat并行化方法,其特征在于:所述将垂直事务数据库缓存至各个计算节点这一步骤,具体为:通过广播的方式将垂直事务数据库缓存到集群的各个计算节点。4.根据权利要求1所述的一种基于Spark的Eclat并行化方法,其特征在于:所述对垂直事务数据库进行分发计算操作,得到多个频繁集这一步骤,包括以下步骤:将集群的每个计算节点划分为一个或多个分区;将垂直事务数据库分发至划分的所有分区;将分发后的每个分区数据分别与计算节点中缓存的垂直事务数据库进行交运算,输出对应于分发后的所有分区数据的频繁集。5.根据权利要求4所述的一种基于Spark的Eclat并行化方法,其特征在于:所述将分发后的每个分区数据分别与计算节点中缓存的垂直事务数据库进行交运算,输出对应于分发后的每个分区数据的频繁集这一步骤,包括以下步骤:S1、从分发后的分区数据中选择一个作为当前分区数据;S2、对计算节点中缓存的垂直事务数据库进行扫描,得到多个事务,所述垂直事务数据库由事务组成;S3、从得到的多个事务中选择一个作为当前事务;S4、判断当前事务是否属于当前分区数据,若是,则执行步骤S5;反之,则从得到的多个事务中选择下一个作为当前事务并执行步骤S4;S5、判断属于当前分区数据的事务是否满足设定的最小支持度要求,若是,则将属于当前分区数据的事务存入前缀树及当前分区数据对应的频繁集并执行步骤S6;反之,则直接执行步骤S6;S6、将计算节点中缓存的垂直事务数据库与前缀树进行交运算;S7、判断交运算后的事务是否满足设定的最小支持度要求,若是,则将...

【专利技术属性】
技术研发人员:赵淦森张海明王欣明庄序填李振宇李胜龙林成创蔡斯凯庞雄文张奇支
申请(专利权)人:华南师范大学广东蔚海数问大数据科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1