年薪百万大数据架构师整理的大数据笔记,你要错过这个机会吗?

这篇呢是小编从年薪百万的大数据架构师那里得到的课堂笔记:大数据大型综合项目实战:搜狗日志查询分析,有在学的赶紧来看看了,不常有哦!
大数据学习资料分享群:596471005数据:
=======================================
一、电商大数据平台整体架构
1、大数据(hadoop、spark、hive)都是一种数据仓库的实现方式
核心问题:数据存储、数据计算
什么是数据仓库?传统的解决大数据的方式,就是一个数据库
一般只做查询
2、大数据平台整体的架构
部署:apache、ambari(hdp)、cdh
二、在项目中使用使用瀑布模型(软件工程:方法论)
1、瀑布模型几个阶段?
2、每个阶段完成的任务
三、使用mapreduce进行分析处理(java程序)
1、mapreduce的基本原理(编程模型)
(*) 思想来源:google的论文:mapreduce 问题 pagerank(网页排名)
(*) 先拆分、再合并----->分布式计算
2、使用mapreduce进行日志分析
四、使用spark进行分析和处理(scala语言、java语言)
1、spark的优点和体系架构
2、使用scala开发spark任务进行日志分析
bin/spark-shell --master spark://bigdata11:7077
val rdd1 = sc.textfile(hdfs://mydemo71:8020/myproject/data/sogouq1.txt)
val rdd2=rdd1.map(_.split(\t)).filter(_.length==6)
rdd2.count()
val rdd3=rdd2.filter(_(3).toint==1).filter(_(4).toint==2)
rdd3.count()
rdd3.take(3)
五、使用hive(蜂巢)进行分析和处理
1、什么是hive?特点?hive体系结构
是基于hdfs之上的数据仓库
支持sql语句
是翻译器:sql ---->mapreduce(spark任务)
2、使用hive进行查询操作
① 创建hive对应的表
create table sogoulog(accesstime string,useid string,keyword string,no1 int,clickid int,url string) row format delimited fields terminated by ',';
② 将原始数据进行清洗:因为有些不满足长度为6
val rdd1 = sc.textfile(hdfs://mydemo71:8020/myproject/data/sogouq1.txt)
val rdd2=rdd1.map(_.split(\t)).filter(_.length==6)
val rdd3 = rdd2.map(x=>x.mkstring(,)) 这里需要注意转成字符串
rdd3.saveastextfile(hdfs://mydemo71:8020/myproject/cleandata/sogou)
③ 将清洗后的数据导入hive
load data inpath '/myproject/cleandata/sogou/part-00000' into table sogoulog;
load data inpath '/myproject/cleandata/sogou/part-00001' into table sogoulog;
④ 使用sql查询满足条件的数据(只显示前10条)
select * from sogoulog where no1=1 and clickid=2 limit 10;
查询10号部门 工资大于2000的员工