升级版:深入浅出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 ...
随机推荐
- 浅谈独立使用NDK编译库文件(Android)
阅读前准备 这是一篇相对入门的文章.文中会涉及到少许NDK的知识,但个人认为对初学者来说都相对比较实用,因为都是在平时项目中遇到的(目前自己也是初学者).一些其他高深的技术不再本文探讨范围之内(因为我 ...
- Android显示GIF动画完整示例(一)
MainActivity如下: package cc.testgif; import com.ant.liao.GifView; import com.ant.liao.GifView.GifImag ...
- Spring通过AOP实现对Redis的缓存同步
废话不多说 说下思路:使用aop注解,在Service实现类添加需要用到redis的方法上,当每次请求过来则对其进行拦截,如果是查询则从redis进行get key,如果是update则删除key,防 ...
- C++创建动态链接库(*.dll)
1. 从 “文件”菜单中,选择 “新建”,然后选择 “项目…”. 2. 在“项目类型”窗格中,选择“Visual C++”下的“Win32”. 3. 在“模板”窗格中,选 ...
- csu1306: Manor
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1306 解题思路:唬人的水题,只要按照他的意思打,就能过,不过,数组最好开大点.用到优先队列,也可以 ...
- Android PopupWindow显示位置和显示大小
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb3l1YW41MTE=/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...
- Cocos2d-x 3.0final手机游戏开发视频教程2014 - 自学编程 -(陆续更新中)
内容: 非常多人问我:沈老师,要不要更新引擎版本号到3.0,更新这么快,以后会不会每一个月都有一次,好怕呀. 我说:无论你曾经是哪个版本号,3.0final是一个架构级别的升级,能够在新项目中果断升级 ...
- 功能间(两个form)数据交互的编程方法
功能间数据交互的编程方法 现在框架具有在两个打开的功能之间进行通讯的机制.通讯是指,一个功能调用另外一个功能的方法,或者传递一些数据,并得到返回结果.比如处置单打开结算单,结算单保存后,将结算单号反填 ...
- java Native 方法
一. 什么是Native Method 简单地讲,一个Native Method就是一个java调用非java代码的接口.一个Native Method是这样一个java的方法:该方法的实现由非j ...
- 14-UIKit(拖拽手势、布局)
目录: 1.手势创建的拖拽方式 2.frame,bounds,transform,center区别 3.触控(touch) 4.布局 5.代码布局 回到顶部 1.手势创建的拖拽方式 创建手势对象,修改 ...