Electronic Joint Business

Solution for E-Business

mahout

创建推荐引擎: 基于 Azure, Hadoop 和 Mahout 的机器学习

喜欢帮助别人的感觉吗?

我们将根据 Stack Exchange 用户回答问题的历史,向他提供一些“建议回答”的问题。这与亚马逊上根据购物记录来推荐商品的经验十分相似。如果你不知道 Stack Exchange 是个什么?建议你登录一下Stack OverFlow

通过本文,你可以了解如何根据对用户的历史“答案”的分析,来预测他可能可以回答的问题。也许 Stack Exchange 现在的推荐系统比我们实现的要更棒,但这不妨碍我们本着学习的目的来重复造一个轮子。1

我们将要完成以下任务:

  • 从 Stack Exchange 数据集中提取所需的信息
  • 利用得到的信息来构建推荐系统

让我们从最基础的开始。如果你对 Apache Hadoop 以及在 Azure 上部署 Hadoop 完全陌生,我建议你试读一些介绍文章。2

>>> 阅读全文

 

, , , ,

Hadoop 技术手册(一) Hadoop 生态系统

文章评价:
现在是数据的年代。近 10 年来,随着 Web 不断发展状态,数据的大小也在飞速增长,而且丝毫没有慢下来的迹象。统计数据表明,每过去的一年中所生成的数据要大大超过历年的数据的总和。摩尔定律不单对计算机硬件生效,现在对于不断生成的数据也同样有效。面对如此海量的数据,业界用了一个简单明了的词来称呼它: Big Data。

和用行和列来存储结构化信息的方式不同, Big Data 面对的是复杂的,非结构化的存储格式,包括网站、社会性媒体、电子邮件 甚至是视频、演示文稿等等。这是个非常重要的区别,为此,要从 Big Data 中提取有价值的商业信息,都必须依靠某些技术来对这些格式进行可扩展的、精确且有效分析。

紧接着下一个问题就出现了 – 我们如何有效地处理这些 Big Data?在这一领域的开拓者之一是谷歌 Google,它设计了类似 MapReduce 和 Google文件系统等可扩展的框架。受到这些设计的启发,Apache 倡导了一个名为 Hadoop 的开源项目。Apache Hadoop 是一个开源框架,可以对大型数据集的进行跨集群的分布式处理。

Hadoop 生态系统 (Ecosystem)
Apache Hadoop 的核心由 2 个子项目组成 – Hadoop MapReduce 和 Hadoop 分布式文件系统。 Hadoop MapReduce 是编程模型,也是一个软件框架,可以编写在集群上进行并行处理大量数据的应用。 HDFS 是 Hadoop 应用所使用的主要存储系统。 HDFS 创建了数据块的多个副本,并将其分发整个集群的计算节点上以便能可靠、且快速的进行计算。其它和 Hadoop 相关的 Apache 项目还包括: Chukwa, Hive, HBase, Mahout, Sqoop 和 ZooKeeper 等等。

下图列出了 Hadoop 的一些组件,接下来我们会逐一介绍 Hadoop 生态系统的这些关键组件。

>>> 阅读全文

 

, , , , , , , , ,