1.一种基于MapReduce和数组的频繁项集挖掘方法,其特征在于,包括:扫描数据库,将数据库中的每一数据组转换为与其对应的二维数组;
根据预设定分解规则,将每一所述二维数组分解成若干二维子数组;
将若干所述二维子数组分配至至少两个并行执行挖掘频繁项集任务的节点上;
每一所述节点挖掘所述二维子数组对应的子频繁项集和非频繁项集;
将若干所述子频繁项集和非频繁项集合并,得到所述数据组的频繁项集;
将若干所述子频繁项集和非频繁项集合并,得到所述数据组的频繁项集,包括:统计每一所述子频繁项集的计数,筛选出子频繁项集的计数大于或等于预设最小支持度的;
将筛选出的子频繁项集合并,形成所述数据组的频繁项集;
其中,统计每一所述子频繁项集的计数包括:
在所有子频繁项集和所有非频繁项集中查找与其相同的项集,并将该子频繁项集与其相同的项集进行计数累加,得到该子频繁项集的计数。
2.根据权利要求1所述的基于MapReduce和数组的频繁项集挖掘方法,其特征在于,根据预设定分解规则,将所述二维数组分解成若干二维子数组,包括:根据水平划分的方法将所述二维子数组划分为若干规模相同的所述二维子数组。
3.根据权利要求1所述的基于MapReduce和数组的频繁项集挖掘方法,其特征在于,每一所述节点挖掘所述二维子数组的子频繁项集,包括:所述节点获取所述二维子数组中每一项集的频度;
筛选出频度大于或等于预设最小支持度的项集,定义该项集为子频繁项集。
4.一种基于MapReduce和数组的频繁项集挖掘装置,其特征在于,包括:数组转换模块,用于扫描数据库,将数据库中的每一数据组转换为与其对应的二维数组;
二维数组分解模块,用于根据预设定分解规则,将每一所述二维数组分解成若干二维子数组;
二维子数组分配模块,用于将若干所述二维子数组分配至至少两个并行执行挖掘频繁项集任务的节点模块上;
节点模块,用于每一所述节点挖掘所述二维子数组对应的子频繁项集和非频繁项集;
合并模块,用于将若干所述子频繁项集和非频繁项集合并,得到所述数据组的频繁项集;
将若干所述子频繁项集和非频繁项集合并,得到所述数据组的频繁项集,包括:统计每一所述子频繁项集的计数,筛选出子频繁项集的计数大于或等于预设最小支持度的;
将筛选出的子频繁项集合并,形成所述数据组的频繁项集;
其中,统计每一所述子频繁项集的计数包括:
在所有子频繁项集和所有非频繁项集中查找与其相同的项集,并将该子频繁项集与其相同的项集进行计数累加,得到该子频繁项集的计数。
5.根据权利要求4所述的基于MapReduce和数组的频繁项集挖掘装置,其特征在于,根据预设定分解规则,将所述二维数组分解成若干二维子数组,包括:对于每一二维数组,根据水平划分的方法将所述二维子数组划分为若干规模相同的所述二维子数组。
6.根据权利要求4所述的基于MapReduce和数组的频繁项集挖掘装置,其特征在于,挖掘所述二维子数组对应的子频繁项集,包括:获取所述二维子数组中每一项集的频度;
筛选出频度大于或等于预设最小支持度的项集,定义该项集为子频繁项集。
7.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至3任一所述的基于MapReduce和数组的频繁项集挖掘方法的步骤。
8.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至3任一所述的基于MapReduce和数组的频繁项集挖掘方法的步骤。