升级版:深入浅出Hadoop实战开发(云存储、MapReduce、HBase实战微博、Hive应用、Storm应用)
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平台进行模拟讲解,完全基于真实场景进行模拟现实
01,课程介绍,HDFS架构和原理,搭建CentOS开发环境
> Hadoop背景
> HDFS设计目标,应用场景,架构分析
> 使用Virtual安装CentOS虚拟机
> 虚拟机环境配置
02,hdfs单机和集群的配置安装
> Hadoop单机版安装和配置
> Hadoop集群安装和配置
> Hadoop命令行和WebUI的使用
03,hdfs应用-云存储系统(1)
> 云存储系统介绍和基本架构
> 搭建Eclipse和Maven开发环境
> 使用Maven创建并配置Struts2应用
> 使用bootstrap搭建UI框架
04,hdfs应用-云存储系统(2)
> 安装和配置Redis
> 用户管理模块开发
05,hdfs应用-云存储系统(3)
> gson介绍和使用实例
> 实现普通的文件上传,删除,下载
06,hdfs应用-云存储系统(4)
> 实现基于HDFS的上传,下载和删除
> HDFS小文件管理方式:SequenceFile和Har
07,深入hdfs-NameNode和DataNode
> hdfs的架构介绍
> hdfs如何读写文件
> FSImage和EditLog
> Rack Awareness
> hdfs基本管理
08,深入hdfs-HDFS federation
> HDFS节点管理
> HDFS升级和回滚
> HDFS Federation
> 如何使用ViewFS
09,namenode HA
> zookeeper配置
> namenode HA(双机)安装和配置
10,yarn和mapreduce
> 配置Yarn(单机和集群)
> MapReduce的工作原理
> 第一个MapRedcue程序
> Yarn命令行工具
11,mapreduce应用-搜索提示(1)
> 工作原理介绍(Ajax)
> 使用JQuery的AutoComplete控件搭建UI
12,mapreduce应用-搜索提示(2)
> 继承Mapreduce程序
> 使用Redis保存中间数据
> 如何对增量和全量数据进行统计
> ”潜在好友推荐“算法介绍
13,mapreduce的采样工具和partitiion
> 采样和分区的工作原理
> RandomSampler,InputSampler,IntervalSampler
> TotalOrderPartitioner(全局排序)
14,Map Join和Reduce Join
> Reduce side join
> Map side join
> 如何自定义数据类型
> 如何使用DistributedCache
15,mapreduce应用-PageRank
> PageRank算法详细讲解
> 如何用mapreduce实现PageRank算法
16, Hive入门
> Hive的架构
> CLI, Hive Server, HWI介绍
> 配置Hive,使用Mysql存储元数据
> CLI的基本使用
17, hive应用-搜索提示(1)
> Tomcat日志解析
> 使用正则表达式解析Tomcat日志
> 在查询中使用正则表达式
18, hive应用-搜索提示(2)
> 在hive查询中调用python脚本实现Redis插入
19,HQL(1)
> HQL基础:DDL,DML
> 数据类型:原子与集合
> TextFile的默认编码及自定义编码
20,HQL(2)
> Hive查询
> 正则表达式,基本函数,集合函数,表函数
> 嵌套查询,case when语句,like和rlike
> Groupby和Having等
21,Hive自定义函数
> 如何编写自定义函数
> 在自定义函数中连接Redis
> 在自定义函数中使用CacheFile
22,Compression in Hadoop
> Compression in Hadoop介绍
> 在MapReduce和Hive中使用Compression
> 安装和配置lzo
23,24, HBase入门
> Hbase架构
> Hbase集群安装
> 使用HBase Shell
25,26,27,HBase应用 - 话单查询
> Hbase Java API
> Struts2 and JSP
> Jquery Datatable and Datepicker
28,29,30,HBase应用 - 微博
> 表结构设计
> 关注好友
> 发微博
> 我的主页
31,32,Storm入门
> Storm架构及原理介绍
> 安装Storm
> 实现第一个topology
> Storm的grouping
33,Queue spout和DRPC
34,35,storm应用 - 语音话单计费
> 搭建计费topology
> 实现Queue spout和Mysql入库bolt
> 实现漫游和长途类型计算
> 计费逻辑的实现
> 整合所有功能到topology中
> 各个功能模块的验证
升级版:深入浅出Hadoop实战开发(云存储、MapReduce、HBase实战微博、Hive应用、Storm应用)的更多相关文章
- 微信小程序云开发-云存储的应用-识别通用印刷体
一.准备工作 1.创建云函数identify 2.云函数identify中index.js代码 1 // 云函数入口文件 2 const cloud = require('wx-server-sdk' ...
- 微信小程序云开发-云存储的应用-识别营业执照
一.准备工作 1.创建云函数identify 二.云函数identify中index.js代码 1 // 云函数入口文件 2 const cloud = require('wx-server-sdk' ...
- 微信小程序云开发-云存储的应用-识别行驶证
一.准备工作 1.创建云函数identify 2.云函数identify中index.js代码 1 // 云函数入口文件 2 const cloud = require('wx-server-sdk' ...
- 微信小程序云开发-云存储的应用-识别驾驶证
一.准备工作 1.创建云函数identify 2.云函数identify中index.js代码 1 // 云函数入口文件 2 const cloud = require('wx-server-sdk' ...
- 微信小程序云开发-云存储的应用-识别银行卡
一.准备工作 1.创建云函数identify.自定义action=="2"的时候识别银行卡信息. 2.云函数identify中index.js代码 1 const cloud = ...
- 微信小程序云开发-云存储的应用-识别身份证(正面和反面)
一.准备工作 1.创建云函数identify 2.云函数identify中index.js代码 1 // 云函数入口文件 2 const cloud = require('wx-server-sdk' ...
- 微信小程序云开发-云存储的应用-云相册
一.准备工作 1.创建数据库表images 2.设置数据库表images的权限 二.创建图片列表页 创建图片列表页imageList,用于展示图片列表.该页面具有跳转到图片上传页面.图片列表展示.删除 ...
- 微信小程序云开发-云存储-下载并打开文件文件(word/excel/ppt/pdf)
一.wxml文件 1.写文本框,用来获取文件链接. 2.按钮,点击下载文件 <!-- 下载文件(word/excel/ppt/pdf等) --> <view class=" ...
- 微信小程序云开发-云存储-上传文件(word/excel/ppt/pdf)到云存储
说明 word/excel/ppt/pdf是从客户端会话选择文件.使用chooseMessageFile中选择文件. 一.wxml文件 上传按钮,绑定chooseFile <!--上传文件(wo ...
随机推荐
- Python重写C语言程序100例--Part9
''' [程序71] 题目:编写input()和output()函数输入,输出5个学生的数据记录. 1.程序分析: 2.程序源码: 使用list来模拟结构(不使用class) stu = [strin ...
- sqlserver 三种恢复模式
sql server数据库提供了三种恢复模式:完整,简单和大容量日志,这些模式决定了sql server如何使用事务日志,如何选择它要记录的操作,以及是否截断日志.截断事务日志是删除己执行事务并把该日 ...
- ThinkPHP - 查询语句
public function index(){ // + ----------------------- // | 查询语句 // + ----------------------- // 实例化模 ...
- iOS Development: Proper Use of initWithNibName:bundle: Affects UITableViewController
Address:http://www.outofcore.com/2011/07/ios-development-proper-use-of-initwithnibnamebundle-affects ...
- js模态窗口
最近在看js,正好公司用的框架中用到了模态窗口,以前没有接触过,现在把模态窗口的用法先记下来. 常用的浏览器chrome,Firefox,ie11,这三种分别支持document.open(),win ...
- instanceof 变量是否属于某一类 class 的实例
<?phpclass MyClass{} class NotMyClass{}$a = new MyClass;$b = new NotMyClass;var_dump($a instanceo ...
- Mojo 返回一维和二维数组
这种情况不断的网数组@arr2里放入数据,返回的内容为: 这种情况是一维数组: while( $selStmt->fetch() ){ print "\$a1 is $a1\n&quo ...
- 红黑树和AVL树的实现与比较-----算法导论
一.问题描述 实现3种树中的两种:红黑树,AVL树,Treap树 二.算法原理 (1)红黑树 红黑树是一种二叉查找树,但在每个结点上增加一个存储位表示结点的颜色,可以是red或black.红黑树满足以 ...
- 关于 Oracle外键列上是否需要索引问题?
外键列上缺少索引会带来两个问题,限制并发性.影响性能.而这两个问题中的任意一个都可能会造成严重性能问题. 无论是Oracle的官方文档,还是在Tom的书中都说明了两种情况下可以忽略外键上的索引.其 ...
- in window js 未定义和undifined的区别
浏览器报错:未定义和undifined不是同一概念,前者是没有申明,后者是没有赋值. 1: <html> <body> <script> ...