Hadoop应用开发实战(flume应用开发、搜索引擎算法、Pipes、集群、PageRank算法)

Hadoop是2013年最热门的技术之一,通过北风网robby老师<深入浅出Hadoop实战开发>、<Hadoop应用开发实战>两套课程的学习,普通Java开发人员可以在最快的时间内提升工资超过15000.成为一位完全精通Hadoop应用开发的高端人才。

Hadoop是什么,为什么要学习Hadoop?

Hadoop是一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高传输率(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求(requirements)这样可以流的形式访问(streaming access)文件系统中的数据。
   Hadoop 是一个能够对大量数据进行分布式处理的软件框架。但是 Hadoop 是以一种可靠、高效、可伸缩的方式进行处理的。Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。Hadoop 是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。Hadoop 还是可伸缩的,能够处理 PB 级数据。此外,Hadoop 依赖于社区服务器,因此它的成本比较低,任何人都可以使用。
   Hadoop带有用Java 语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。本课程的讲解是采用linux平台进行模拟讲解,完全基于真实场景进行模拟现实

亮点一:技术先进,经典应用

新的课程采用了全新平台:Oracle VirtualBox + CentOs + 最新的Hadoop 1.x稳定版本,提供了更稳定,安全的平台,更加贴近企业级应用的真实环境。课程完整,详细的介绍并实现了多个Hadoop经典应用:搜索引擎自动推荐,好友智能推荐,最短路径算法,PageRank。他们代表了当前最成功,应用范围最广的Hadoop应用案例,特别是PageRank,更是Google赖以发家的法宝,直到如今,仍然是Google搜索引擎最为重要的技术。通过这些案例,对于学习如何开发成功的Hadoop应用有极大的帮助。

亮点二:内容实用,全面深入

非Java的MapReduce应用是Hadoop重要内容之一,Streaming和Pipes是将现有应用移植到Hadoop平台的重要技术。另外,Hadoop提供了海量数据的处理方案,但是如何进行原始数据收集,Apache Flume给出了答案,新的Apache Flume的解决方案,更加简单,实用和高效。课程还详细介绍了如何借助Hadoop提供的工具,对集群中的节点进行有效的管理,这些都是一个Hadoop管理人员必备知识。

亮点三:讲师丰富的电信集团云平台运作经验

讲师robby拥有丰富的电信集团工作经验,目前负责云平台的各方面工作,并拥有多年的企业内部培训经验。讲课内容完全贴近企业需求,绝不纸上谈兵。

第1章节: (4课时)

搜索引擎自动推荐(4课时)

> 新平台搭建: 使用VirtualBox创建CentOs虚拟机,并使用RPM的方式安装和使用Hadoop

> 内存数据库Redis的安装和基本使用

> 搜索引擎自动推荐算法讲解

> 使用JqueryUI + Ajax + Redis搭建前后台框架

> 使用Map Reduce实现数据统计算法

> 定制Map Reduce输出,将数据直接写入Redis内存数据库

第2章节: (3课时)

好友智能推荐 (3课时)

> 应用背景和算法详细讲解

> Web框架搭建Struts2 + Redis

> 使用Map Reduce结合Redis实现潜在好友查找算法

> 完整的应用逻辑实现:前台好友关注,后台潜在好友查找,再到前台潜在好友推荐

第3章节:(2课时)

Hadoop Streaming(2课时)

> 非Java的Map Reduce实现

> 如何使用脚本语言实现一个Map Reduce任务

> 如何使用C语言实现一个Map Reduce任务

第4章节: (1课时)

Hadoop Pipes (1课时)

> 基于Hadoop Pipes,使用C++实现Map Reduce任务

第5章节: (2课时)

Apache Flume基础 (2课时)

> Apache Flume概述

> Flume Agent详细介绍及使用

> 深入Flume子模块: Source, Sink及Channel的使用

第6章节:  (3课时)

Flume实践及分布式应用 (3课时)

> 与搜索引擎自动推荐应用的结合

> 搭建分布式的flume应用

第7章节: (5课时)

最短路径算法的Hadoop实现(约5课时)

> 最短路径算法介绍

> 如何使用MapReduce实现最短路径算法

> 找到城市任意公交站点之间的最短路径

第8章节: (3课时)

Hadoop集群管理(约3课时)

> Hadoop的日志管理

> 动态添加和删除Hadoop节点

> Namenode和Datanode目录结构介绍

> HDFS的数据安全性:fsimage和editlog

> Hadoop管理工具dfsadmin和fsck的使用

第9章节:(5课时)

PageRank算法的Hadoop实现(约5课时)

> Google的成名之作:PageRank算法介绍

> 如何使用Hadoop实现PageRank算法

时间: 2024-12-10 10:16:34

Hadoop应用开发实战(flume应用开发、搜索引擎算法、Pipes、集群、PageRank算法)的相关文章

分享Java企业级开发必备高级技术(WebLogic、Tomcat集群,Apach调优)

Java自面世后就非常流行,发展迅速,对C++语言形成有力冲击.在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景,那么滋生的基于java项目也越来越多,对java运行环境的要求也越来越高,很多java的程序员只知道对业务的扩展而不知道对java本身的运行环境的调试,例如虚拟机调优,服务器集群等,所以也滋生本门课程的产生. Java企业级开发必备高级技术(WebLogic.Tomcat集群,Apach调优),刚刚买的,这个教程讲的很好,高清完整版,现低价转两个播放码,可以先

java商城开发中设计的数据库处理大量数据的集群开发技术

今天作为java商城开发.java商城产品以及jsp商城开发的技术人员就来说说现在数据库处理大量数据的集群开发技术.集群(cluster)技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能.可靠性.灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技术.本文就集群系统的定义.发展趋势.任务调度等问题进行了简要论述. 集群是一组相互独立的.通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理.一个客户与集群相互作用时,集群像是一个独立的服务器.集群配

【原创 Hadoop&amp;Spark 动手实践 5】Spark 基础入门,集群搭建以及Spark Shell

Spark 基础入门,集群搭建以及Spark Shell 主要借助Spark基础的PPT,再加上实际的动手操作来加强概念的理解和实践. Spark 安装部署 理论已经了解的差不多了,接下来是实际动手实验: 练习1 利用Spark Shell(本机模式) 完成WordCount spark-shell 进行Spark-shell本机模式 第一步:通过文件方式导入数据 scala> val rdd1 = sc.textFile("file:///tmp/wordcount.txt")

hadoop零基础系列之一:虚拟机下的Linux集群构建

经过了近两年的hadoop学习和使用,有必要把hadoop的学习进行一个总结,最好的方式就是以博客的方式来总结,既重新梳理以前的学习也可以和同行沟通交流,从今天开始将陆续推出hadoop零基础系列的文章, 当然总结过程中会参考相关方面的资料书,有些例子会直接来源与网络和书籍,我会在文中列出引用 考虑到初学者都是在单机的环境进行学习,所以我们采用虚拟机的方式来构建Linux集群,本篇我们先把Linux集群给构建起来,主机系统本人采用的系统是win7 旗舰版 1.虚拟机软件VMware 采用的VMw

Hadoop学习之路(1)腾讯云搭建Hadoop3集群

1主机名和IP配置 1.1主机名 1.首先使用root用户名和root密码分别登录三台服务器2.分别在三台虚拟机上执行命令:hostnamectl set-hostname node1hostnamectl set-hostname node2hostnamectl set-hostname node33.分别在三台服务器上执行logout 1.2 IP设置 systemctl restart network 2配置免密登录 2.1 生成公钥和私钥 使用此命令:ssh-keygen -t rsa

《Python高效开发实战》实战演练——开发Django站点1

6.2 实战演练:开发Django站点 用Django开发网站需要遵循Django的一套开发流程.本节通过建立一个消息录入页面演示Django的开发流程及相关技术. 6.12.1  建立项目 在进行Django开发之前需要先用django-admin建立Django项目,语法如下: #django-adminstartproject 站点名称 其中django-admin是安装好Django组件后在Python目录中生成的django项目管理工具.比如,建立一个叫djangosite的开发项目:

Modbus软件开发实战指南 之 开发自己的Modbus Poll工具 - 2

接上一篇文章的内容. 看了前面需求提到的复杂的命令行解析功能,很多人立马开始发怵,其实大可不必. 我们都知道,Linux下的程序往往都提供了复杂的命令行参数处理机制,因为这是与 其他程序或用户进行交互的主要手段,在这样的情况下难能可贵的是,为了减轻开发 人员对命令行处理的负担,Linux提供了系统函数getopt()或getopt_long()专门解析命令行参数. 在Linux系统中,函数getopt()/getopt_long()位于 unistd.h 系统头文件中,其原型分别为: int g

Storm集群上的开发 ,Storm的内部原理,storm集群间的通信机制(九)

storm间的worker会互相通信,上一个worker的结果会交给下一个worker进行计算.看图

实战4节点Centos7.3 安装Kubernetes集群

Kubernetes集群安装部署 Kubernetes集群组件: -Master节点 - etcd 一个高可用的K/V键值对存储和服务发现系统 - kube-apiserver 提供kubernetes集群的API调用 - kube-controller-manager 确保集群服务 - kube-scheduler 调度容器,分配到Node -Minion节点 - flannel 实现夸主机的容器网络的通信 - kubelet 在Node节点上按照配置文件中定义的容器规格启动容器 - kube