Apache Mahout和Apache Spark的MLlib有什么区别?

 peaxcwxzl_372248 发布于 2023-01-16 13:18

考虑一个products拥有1000万个产品的MySQL 数据库,用于电子商务网站.

我正在尝试设置分类模块来对产品进行分类.我正在使用Apache Sqoop将数据从MySQL导入Hadoop.

我想使用Mahout作为机器学习框架来使用其中一种分类算法,然后我遇到了随MLlib提供的Spark

那么两个框架之间的区别是什么?

主要是,每个的优点,缺点和局限是什么?

David Gruzma.. 44

主要区别将来自底层框架.在Mahout的情况下,它是Hadoop MapReduce,在MLib的情况下,它是Spark.更具体一点 - 从每个作业开销的差异
如果您的ML算法映射到单个MR作业 - 主要差异将只是启动开销,这对于Hadoop MR来说是几十秒,而对于Spark来说就是1秒.因此,在模型培训的情况下,它并不重要.
如果您的算法映射到许多作业,情况会有所不同.在这种情况下,我们将在每次迭代的开销上具有相同的差异,并且它可以是游戏改变者.
让我们假设我们需要100次迭代,每次需要5秒的集群CPU.

在Spark:它需要100*5 + 100*1秒= 600秒.

在Hadoop:MR(Mahout)它需要100*5 + 100*30 = 3500秒.

同时Hadoop MR是比Spark更成熟的框架,如果你有很多数据,稳定性是最重要的 - 我会认为Mahout是一个严肃的选择.

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有