APP下载

基于Spark的并行信任进化算法

2021-03-16黄冬平周夏冰刘冠峰

计算机应用与软件 2021年3期
关键词:评价

黄冬平 周夏冰 刘冠峰

1(苏州大学计算机科学与技术学院 江苏 苏州 215006)

2(上交所技术有限责任公司 上海 200120)

0 引 言

随着互联网的飞速发展,电子商务平台在人们的生活中扮演着越来越重要的角色,在以信任为导向的电子商务平台中,如亚马逊、Epinions等,买家在完成一笔交易后,可以根据自己的购买体验写下相应的评价,这些评价对所有人都是可见的,买家也可以根据自己的购买体验对已有的评价进行评分:有帮助、无帮助等[1]。大多数潜在买家在购买之前都会参考这些买家(advisors)的评价,根据卖家声誉的好坏决定是否进行购买。然而,有些不诚实的买家(attackers)会提供虚假评价,造成错误推荐。Jiang等[2]提出的信任进化(MET)算法对于鉴别attackers有着非常好的效果,但是当数据规模较大时,MET算法的运算效率很低。而并行计算框架的出现,成为解决这一问题的重要途径。

现今主流的并行计算框架有MapReduce、Spark等。相比于MapReduce,Spark是基于内存的编程框架,中间结果可存储在内存中,降低了数据交换的访问延迟,因而Spark运算速度要高于MapReduce。Spark的操作都是基于弹性分布式数据集(RDD)进行的,且自带丰富的算子,如map、reduce、filter、collect等,只需用很少的代码就可以实现复杂的并行操作,相比于MapReduce来说,Spark的运算效率更高、代码更灵活。

RDD默认的分区函数为HashPartitioner,该函数根据key的哈希值对节点个数求余的结果进行分区,当某个key数量较多时,很容易将大量具有相同key的数据分布到同一个分区里。这种情况称为数据倾斜,而RDD的执行时间为所有分区计算时间的最大值[3],数据倾斜的存在不仅仅会影响运行效率,严重情况下会导致task运行失败[4]。……

登录APP查看全文

猜你喜欢

评价
SBR改性沥青的稳定性评价
中药治疗室性早搏系统评价再评价
自制C肽质控品及其性能评价
写作交流与评价:词的欣赏
基于Moodle的学习评价
关于项目后评价中“专项”后评价的探讨
HBV-DNA提取液I的配制和应用评价
有效评价让每朵花儿都绽放
模糊数学评价法在水质评价中的应用
保加利亚转轨20年评价