30年开发经验大牛分享:数据算法,Hadoop/Spark大数据处理技巧pdf
Posted king哥Java架构
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了30年开发经验大牛分享:数据算法,Hadoop/Spark大数据处理技巧pdf相关的知识,希望对你有一定的参考价值。
前言
随着大规模搜索引擎(如Google和Yahoo!) 、基因组分析(DNA测序、RNA测序和生物标志物分析)以及社交网络(如Facebook和Twitter)的不断发展,需要生成和处理的数据量已经超过了千万亿字节。为了满足如此庞大的计算需求,我们需要高效、可伸缩的并行算法。MapReduce范式就是解决这些问题的一个 框架。
MapReduce是一个软件框架, 可以采用并行、分布式方式处理GB、TB,甚至PB级的大数据集,同时它也是一个在商用服务器集群之上完成大规模数据处理的执行框架。实现MapReduce的方法有很多,不过这本文中我们主要关注Apache Spark和MapReduce/Hadoop。你将通过简单而具体的示例来了解如何用Spark和Hadoop实现MapReduce。
本文将为以下领域提供了基本分布式算法(分别用MapReduce、Hadoop和Spark实现),并按照这些领域组织本文的章节:
- 基本设计模式。
- 数据挖掘和机器学习。
- 生物信息、基因组和统计。
- 优化技术。
主要内容
本文档总共分为31章,因为内容实在是太多了,所以只做了一个简单的介绍,希望大家拿到手之后能够仔细研读,慢慢的去研究和掌握。
本文档中每一章分别提出一个问题,然后通过一组MapReduce算法加以解决。 MapReduce算法/解决方案相当完整( 包括MapReduce驱动器、映射器、组合器和归约器程序)。可以在项目中直接使用这些代码(不过,有时可能需要剪切粘贴你需要的部分)。
本文没有涉及MapReduce框架的底层理论,而是着重于提供使用MapReduce/Hadoop和Spark解决大数据难题的实用算法和示例。
本文档的主要内容包括:
- 完成超大量交易的购物篮分析。
- 数据挖掘算法[K-均值、K-近邻(kNN)和朴素贝叶斯]
- 使用超大量基因组数据完成DNA测序和RNA测序。
- 朴素贝叶斯分类和马尔可夫链实现数据和市场预测。
- 推荐算法和成对文档相似性。
- 线性回归、Cox回归和皮尔逊(Pearson) 相关系数。
- 等位基因频率和DNA挖掘。
- 社交网络分析(推荐系统、三角形计数,情感分析)。
本文重点
本文的重点是掌握MapReduce范式,并提出一-些可以使用MapReduce/Hadoop算法解决的具体问题。对于这里提出的每一个问题,我们会详细介绍map()、combine()和reduce()函数,并提供完整的解决方案,包括:
- 客户端,可以用适当的输人和输出参数调用驱动器。
- 驱动器,明确map()和reduce()函数,并明确输入和输出。
- 映射器类,实现map()函数。
- 组合器类(如果需要),实现combine()函数。我们会讨论什么情况下有可能使* 用组合器。
- 归约器类,实现reduce()函数。
本文的一个目标是提供一个循序渐进的指南,介绍如何使用Spark和Hadoop作为MapReduce算法的解决方案。另一个目标是展示如何将一 个MapReduce作业的输出作为另一个作业的输入(这称为MapReduce作业链或流水线)。
面向读者
面向了解Java基础知识并且想使用Hadoop和Spark开发MapReduce算法(数据挖掘、机器学习、生物信息技术、基因组和统计领域)和解决方案的软件工程师、软件架构师、数据科学家和应用开发人员。
写在最后
本文档作者Mahmoud Parsian,计算机科学博士,是一位热衷于实践的软件专家,作为开发人员、设计人员、架构师和作者,他有30多年的软件开发经验。目前领导着Ilumina的大数据团队,在过去15年间,他主要从事Java (服务器端)、数据库、MapReduce和分布式计算的有关工作。Mahmoud还著有《JDBCRecipes》和《JDBC Metadata, mysql ,and Oracle Recipes》等书(均由Apress出版)。
因为这份文档包含的内容实在是太多了 ,不能够很详细地给大家展示出来全部的内容。需要完整版文档的小伙伴,可以看向下面来获取!
需要完整版文档的小伙伴,可以一键三连,下方获取免费领取方式!
以上是关于30年开发经验大牛分享:数据算法,Hadoop/Spark大数据处理技巧pdf的主要内容,如果未能解决你的问题,请参考以下文章