Apache Mahout和Apache Spark's MLib的不同之处是什么?

ElastiCache 2014-07-28 11:33:41
考虑到一个MySQL数据库有1000万产品的电子商务网站。 我试图建立一个分类模块来进行产品分类,使用Apache Sqoop把MySQL数据导入到Hadoop。使用Mahout作为一个机器学习框架,并使用该框架中的分类算法,Spark中提供了MLlib,在这里有两个问题:
1. 这两种框架有什么不同?
2. 主要的优势、缺点以及每个的局限性
...全文
375 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
yiming_21 2014-07-29
  • 打赏
  • 举报
回复
它们主要的区别将来自底层的框架。若Mahout主要是Hadoop MapReduce框架,而MLib则是Spark。更具体的说就是它们工作负载的差异。如果将你的ML算法映射到单一的MR时,它们主要的区别是启动所耗费的时间,Hadoop MR需要耗费几十秒,而Spark仅仅只需要1秒钟。 倘若将你的算法映射到大量的任务的时候则会有很大的不同,在这种情况下,倘若对于每次迭代具有相同的差异,请看下面的例子 假设需要100次迭代,每次需要CPU运行5秒: Spark:总共需要花费100*5+100*1=600秒 Hadoop:总共需要花费100*5+100*30=3500秒 在同一时间的Hadoop MR是更加成熟的框架,其次是Spark。如果你有大量的数据需要处理,那么稳定则是最重要的,这里可以考虑Mahout作为替代的选择。

1,258

社区成员

发帖
与我相关
我的任务
社区描述
Spark由Scala写成,是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于MapReduce算法实现的分布式计算。
社区管理员
  • Spark
  • shiter
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧