企业实训课第八节

继续补上节的知识点
  • hive视图
    [定义]

    • HIVE中的视图(view)是一种虚拟表,指保存定义,不实际存储数据
    • 通常从真实 物理表查询中创建生成视图,也可以从已经存在的视图上创建新视图。
    • 创建视图时,将冻结视图的架构,如果删除或更改基础表,则视图将失败。
    • 视图是用来简化操作的,不缓冲记录,也没有提高查询性能。
语法
--hive中有一张真实的基础表t_usa_covid19
select *
from t_usa_covid19;--1、创建视图
create view v_usa_covid19 as select count_date, county,state,deaths from t_usa_covid19 limit 5;--能否从已有的视图中创建视图呢  可以的
create view v_usa_covid19_from_view as select * from v_usa_covid19 limit 2;--2、显示当前已有的视图
show tables;
show views;--hive v2.2.0之后支持--3、视图的查询使用
select *
from v_usa_covid19;--能否插入数据到视图中呢?
--不行 报错  SemanticException:A view cannot be used as target table for LOAD or INSERT
insert into v_usa_covid19 select count_date,county,state,deaths from t_usa_covid19;--4、查看视图定义
show create table v_usa_covid19;--5、删除视图
drop view v_usa_covid19_from_view;
--6、更改视图属性
alter view v_usa_covid19 set TBLPROPERTIES ('comment' = 'This is a view');
--7、更改视图定义
alter view v_usa_covid19 as  select county,deaths from t_usa_covid19 limit 2;

10月底做完项目

滴滴出行项目

通过此项目实战,将某出行打车的**日志数据**来进行**数据分析**,如:**统计某一天订单量是多少、预约订单与非预约订单的占比是多少、不同时段订单占比**等。

通过此案例,必须掌握以下技术来进行数据分析:

  • HDFS
  • Hive Sql
  • Zeppelin
  • Sqoop
  • Superset
项目架构方案
1. 用户打车的订单数据非常庞大,当遇到庞大的数据需要存储时,一般选择一个大规模数据的分布式文件系统来存储这些文件,HDFS作用就是海量存储大规模数据文件。
2. 为了方便进行数据分析,需要将这些日志文件数据映射为一张张的表——基于hive来构建数据仓库(为了提高数据处理的性能)
3. 基于Spark引擎来进行数据开发,所有的应用程序都将运行在Spark集群上。
4. 使用Zeppelin来快速将数据进行SQL指令交互
5. 使用Sqoop到处分析后的数据到传统型数据库,便于后期应用
6. 使用Superset来实现数据可视化展示。

日志数据集介绍
  • 用户打车订单日志为例
构建数据仓库——数仓分层
目标:分析用户打车的订单,进行各类的指标计算(指标,例如:订单的总数、订单的总支付金额等等)。

我们学过HDFS以及HIVE,可以将日志数据上传到HDFS保存下来(HDFS保存海量数据),每天都可以上传。再将HDFS中的数据文件,对应到HIVE的表中。

但需要考虑一个问题,业务系统的日志数据不一定是能够直接进行分析的。

例如:我们需要分析不同时段的订单占比,凌晨有多少订单、早上有多少订单、上午有多少订单等。
但是,我们发现,原始的日志文件中,并没有区分该订单的是哪个时间段的字段。
所以,我们需要对日志文件的原始数据进行预处理,才能进行分析。我们会有这么几类数据要考虑:
1. 原始日志数据(业务系统中保存的日志文件数据)
2. 预处理后的数据
3. 分析结果数据

这些数据我们都通过Hive来进行处理,因为Hive可以将数据映射为一张张的表,然后就可以通过编写HQL来处理数据了,简单、快捷、高效。为了区分以上这些数据,我们将这些数据对应的表分别保存在不同的数据库中。

构建数据仓库——创建数据库
根据之前的分析,我们的数仓架构为三层,接下来,创建三个数据库,分别用来管理每一层的表数据。
-- 创建ods库
create database if not exitsts ods_didi;
-- 创建dw库
create database if not exitsts dw_didi;
-- 创建app库
create database if not exitsts app_didi;
数据分区表构建
配置sqoop

配置步骤,参考文档

  • sqoop 1.4.7的安装.docx
sqoop list-databases --connect jdbc:mysql://node1:3306/ --username root --password hadoop

出现这个,说明配置成功

安装superset
跟着手册来 superset安装.docx
用户名superset p:123456
  • 进入superset
    http://192.168.88.100:8099/login/
端口号
  • zeppelin
    http://node1:9090/
  • superset 8099
  • HDFS 9870
IDEA连接HIVE

小结
这一节视频课,主要是自己跟着手册实操。
这里总结需要看的文档手册
1、滴滴出行的PPT
2、sqoop数据导出数据并在superset上显示.docx
(连接数据库,必须先有didi的数据库,所以跟着手册做完~)
3、idea连接HIVE配置方法.ppt

实战_滴滴出行_理论(上篇)|配置Sqoop|安装Superset相关推荐

  1. Python+大数据-数仓实战之滴滴出行(二)

    Python+大数据-数仓实战之滴滴出行(二) 1. 数据转移 #验证sqoop是否工作 /export/server/sqoop-1.4.7/bin/sqoop list-databases \ - ...

  2. Python+大数据-数仓实战之滴滴出行(一)

    Python+大数据-数仓实战之滴滴出行(一) 1. 项目架构图 1.1 数据流程处理 1.2 数仓分层 1.3 创建数据库 在Hive中创建数据库-- 创建ods库 create database ...

  3. 滴滴java开发面试题_滴滴出行(小桔科技)亲身面试经验分享,java开发岗

    2020.11.25 概要 本次面试是最近刚面的. PS:本人java开发2年经验,这次面的是滴滴出行(小桔科技)java开发岗. 2020.11.30 滴滴又打来电话了, 预定12.3.星期四面试, ...

  4. 苹果免密支付怎么关闭_滴滴出行怎么开通支付宝小额免密支付 具体内容

    用滴滴用的久了,总觉得支付车费时输入密码很麻烦.该怎么办呢?接下来就给大家探讨一下:滴滴出行怎么开启支付宝小额免密支付吧. 工具/材料 滴滴出行 支付宝 操作方法 01 打开滴滴出行,进入当前页面,然 ...

  5. 滴滴出行大数据数仓实战

    我正在参加年度博客之星评选,请大家帮我投票打分,您的每一分都是对我的支持与鼓励. 2021年「博客之星」参赛博主:Maynor大数据 (感谢礼品.红包免费送!) https://bbs.csdn.ne ...

  6. 滴滴出行商业模式分析

    分享经济下企业商业模式分析_滴滴出行 文章整合于 --v关钰桥孟韬_分享经济背景下企业商业模式比较分析 摘 要: 随着移动互联网的迅速发展和快速普及,全球范围内越来越多的消费者开始接受分享经济,通过共 ...

  7. 滴滴行程单用的什么字体_打车就送冰淇淋!滴滴出行放大招,限时19天

    九月过半,上海的秋老虎依旧肆虐,亟需降温!!! 上海专属"夏日彩蛋车"来了! 即日起-9月30日,在上海用滴滴出行app呼叫快车.优享(不含特惠特快和拼车),就有机会遇上嗖嗖清凉主 ...

  8. kali2020进入单模式_出租车使用“滴滴”平台 司机希望恢复抢单模式 滴滴出行有回应...

    袁师傅是一名出租车司机,他说滴滴平台针对出租车有抢单模式,但最近他们无法抢单,都变成系统派单了,他说这样对出租车司机影响很大. 袁师傅:今年的10月27号开始收费以来,对出租车实施强制派单,每做一单必 ...

  9. 数据查询和业务流分开_滴滴实时数仓逐层剖解:实时与离线数据误差0.5%

    原标题:滴滴实时数仓逐层剖解:实时与离线数据误差< 作者介绍 潘澄,资深软件开发工程师.负责实时数据仓库建设,多年数据相关工作经验,专注数据建模.数据仓库.实时数据技术等领域. 朱峰,高级软件开 ...

最新文章

  1. SpringMVC js如何获取后台model中的属性值
  2. java多线程 ThreadPoolExecutor 策略的坑
  3. HMAC(2)哈希运算消息认证码HMAC
  4. 汇编 div_Solidity汇编开发简明教程
  5. Qt 中Treewidget添加右键菜单
  6. 【排序】算法(python实现)
  7. Oracle VM + Windows2003 Server 配置
  8. Delphi Access violations 问题的解决之道[转]
  9. Qt对话框关闭时清理资源
  10. 用于登录的mysql语句_mysql常用语句
  11. python xps_XPS 15 9560 安装 Ubuntu 18.04
  12. 使用Animate制作汽车广告动画
  13. 影子系统PowerShadow v2.6.0511中文破解版
  14. 模2除法(CRC冗余码计算)和二进制/十进制除法
  15. 有道云笔记 迁移 语雀过程记录
  16. iptables 中 SNAT、DNAT 和 MASQUERADE 的含义
  17. 网上邻居,详细教您如何打开win7网上邻居
  18. skl pipline 运行流程演示
  19. Java class located out of the source root
  20. (十二)采购与入库数据表

热门文章

  1. 你的格局,注定你的结局
  2. Tokyo Tyrant
  3. 基于java使用jsoup爬取网站投票数据的demo
  4. 我放弃了年薪20万offer,挑战自动化测试(一)
  5. 航空爱好者自问自答(2)
  6. win7配置免安装mysql5.6.19过程详解
  7. 关于设立“链改青岛链湾综合试验区”的复函
  8. 辐射幽灵 前苏联核试验场纪实照片
  9. catia 创成钣金设计_CATIA钣金设计实例教程
  10. AjaxUpLoad.js文件上传插件的使用