大数据相关知识点记录

(内容主要是大数据入门的知识点记录,部分总结的不够专业,用于理解。
参考自各路知乎或公众号文章,但好多来源找不到链接了,原谅擅自引用,仅用于学习)

1. 如何理解数据仓库:

官方说法:是一个面向主题的、集成的、随时间变化的、但信息本身相对稳定的数据集合,用于对管理决策过程的支持。

易理解说法:是逻辑比较清晰、存放有大量历史数据、用于数据分析的数据库,可以支持报表开发和决策。

2. 数据库和数据仓库的区别:

  1. 数据库主要用于事务处理,是操作型。
    数据仓库主要用于数据分析,是分析型。
    比如操作app,登录、填写个人资料、点单、付款等,数据通过程序与数据库交互,在底层数据表上进行增删改的操作。
    数据仓库更多的是通过可视化的BI工具,ETL工具访问,面向报表开发和数据分析;

  2. 数据库很少存放历史数据,随着时间变化不断删去旧的数据内容。
    数据仓库为了分析会存放大量的历史数据。

  3. 数据库强调范式,尽可能减少冗余数据仓库强调查询分析的速度,优化读取操作,主要目的是快速做大量数据的查询。
    数据仓库定期写入新数据,但不覆盖原有数据,而是给数据加上时间戳标签。

  4. 数据库采用行存储,数据仓库一般采用列存储。

  5. 数据仓库的特征是面向主题、集成、相对稳定、反映历史变化,存储数历史数据;数据库是面向事务的,存储在线交易数据。

数据仓库的两个基本元素是维表和事实表,维是看待问题的角度,比如时间、部门等,事实表放着要查询的数据

3. 数据仓库一般分为几层:

一般分为4层。

ODS层(原始数据层 original data store): 存放原始数据,直接加载原始日志、数据,数据保存原貌。
DWD层(明细数据层data warehouse detail): 结构与原始表一致,对ODS层数据进行清洗(ETL,去除空值、脏数据等),轻度聚合,再展开明细!展开明细时,对部分维度表进行降维操作,如将新闻栏目表、新闻分类表合并汇总成一张维度表
DWS层(服务数据层data warehouse service): 以DWD为基础,进行轻度汇总,一般是建宽表
ADS层(数据应用层 applicational data store): 为各种统计报表提供数据

4. 为什么数据仓库要分层:

空间换时间: 通过建设多层次模型提供用户使用,避免直接使用操作型数据,更高效地访问数据;
把复杂问题简单化: 每层只处理单一步骤,比较简单和容易理解;
维护数据安全: 当数据出现问题时,不用修复所有数据,只需要从有问题的步骤开始修复;
便于处理业务变化: 随着业务的变化,只需要调整底层的数据,其它层的数据逻辑不变。

5. 是什么是事实表和维度表:

事实表 是对分析主题的度量,比如小明在沃尔玛购买200元的苹果,200元就是事实信息;
维度表 是对分析主题所属类型的描述,上面的例子,沃尔玛这个商超类别、苹果这个商品类别就是维度信息;

6. 什么是维度建模:

维度建模(dimensional modeling)是专门用于分析型数据库、数据仓库、数据集市建模的方法。
三种模式: 星型模式、雪花型模型、星座模式。
前面两种维度建模方法都是多维表对应单事实表,但很多时候维度空间内的事实表不止一个,一个维表也可能被多个事实表用到,发展出了星座模式。

7. 如何进行维度建模:

首先确定使用何种模式建模,然后需要明确哪些维度对主题分析有用(比如产品种类、时间、销售区域等)?用什么指标来度量主题(比如单价、销量、销售额等)?如何使用现有数据生成事实表?

8. 什么是星型模型(维度建模)和雪花型模型(关系建模):

在实际工作中需要多维分析数据,为决策提供参考。根据事实表和维度表的关系,可将常见的模型分为星型模型和雪花型模型。
星型模型是一种多维的数据关系,由一个事实表(Fact Table)和一组维表(Dimension Table)组成,每个维表都有一个维作为主键,所有这些维的主键组合成事实表的主键。是一种非正规化的结构,多维数据集的每一个维度都直接与事实表相连接,数据有一定冗余。
特点:
1.维度表只和事实表关联,维度表之间没有关联;
2.每个维度表的主键为单列,且该主键放置在事实表中,作为两边连接的外键;
3.以事实表为核心,维度表围绕核心呈星型分布;

雪花型模型是当有一个或多个维表没有直接连接到事实表上,而是通过其他维表连接到事实表上时,就像多个雪花连接在一起。是对星型模型的扩展,对星型模型的维表进一步层次化,原有的各维表可能被扩展成小的事实表。
**特点:**能够通过最大限度地减少数据存储量以及联合较小的维表来改善查询性能,去除了数据冗余。

二者比较:
星型架构更简单方便处理,雪花型架构比较符合业务逻辑,层次比较清晰,雪花型架构具有关系数据模型的所有优点,不会产生冗余数据,而星型架构会产生数据冗余。

9. 关系型数据库的范式设计:

第一范式(1NF): 强调每一列都是不可分割的原子数据项;
消除重复数据,每一列都是不可再分的基本数据项;
(就是每一列只能表示一个意思,不能信息系/何主任,这种情况要分为两列-信息系,何主任)
第二范式(2NF): 在1NF基础上 ,非属性码(除主码属性组以外的属性)的属性必须完全依赖于主码(主键)(在1NF基础上消除非属性码的属性对主码的部分函数依赖);
消除部分依赖,表中没有列只与主键的部分相关,每一行都能被主键唯一标识;
第三范式(3NF): 在2NF基础上,消除传递依赖;
消除传递依赖,消除“表中列不依赖主键,而是依赖表中的非主键列”的情况,即没有列是与主键不相关的;
在这里插入图片描述

10. 关系表的主键和外键:

**主键:**是关系表中记录的唯一标识,保证实体的完整性,加快数据库的操作速度。注意是不使用任何业务相关的字段作为主键(比如一些自增数或随机数,就是id啊),无重复、无空值
**外键:**如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键,表示了两个关系之间的相关联系。外键引用的都是别的表的主键。学号在学生表是主键,在分数排名表里是外键(名次为分数排名表的主键)
是用于和另一张表进行关联。A字段是A表的主键,那么出现在B表中的A字段能够作为B表的外键,实现A,B表的连接查询。

11. 索引:

为了增加查询速度而对表字段附加的一种标志符号,通过创建唯一性索引,可以保证表中每一行数据的唯一性。

主要建在: 经常搜索的列,主键所在列,外键所在列
————————————————————

12. Hadoop相关

参考知乎上相关问答后的总结

12.1 如何理解Hadoop: 大数据框架系统

其核心是HDFS和MapReduce和Yarn。

HDFS为海量数据提供存储,是分布式文件系统,可以实现对数据的高吞吐量、流式访问;
MapReduce为海量数据提供计算框架,是一种编程模型;
Yarn是一个通用资源管理系统,为上层应用提供统一的资源管理和调度。
HDFS是分块(block)存储数据的,HDFS的文件被切割为块(如:块的大小128MB),复制到多个DataNode中。对一份数据按照128 MB分块,并复制3份(3个DataNode),分块存储。

特征:
高可靠性(冗余数据存储、即使一个副本发生故障,其他保持正常)、
高效性(分布式存储和分布式处理)、
高可扩展性(可扩展到多个计算机节点上)、
成本低(可使用廉价计算机集群)

12.2 HDFS:分布式文件存储系统

特点: 大数据文件存储、文件分块存储(从多个主机中取不同区块的文件)、防范硬件故障(将同一个文件块副本分配到其他的某几个主机上,如果一台主机失效,可以迅速找到另一块副本)

12.3 如何理解HBase:

数据库、可存储结构化和非结构化数据、基于HDFS、延迟较低,接入在线业务使用
HBase是一种面向列存储的非关系型数据库,数据持久化存储的体现形式是Hfile,存放在DataNode中,分区存储

12.4 如何理解MapReduce:分布式计算框架

概念Map(映射)和Reduce(归约)是主要思想,是一种计算框架,当想MapReduce提交一个计算时,会将这个计算分成若干个Map任务,然后分配到不同节点执行,每个Map任务处理输入数据的一部分,Map任务完成后,生成的文件会作为Reduce任务输出。
先进行Map,再进行Reduce.

12.5 如何理解Hive:

数据仓库工具、用于数据分析/清洗、基于HDFS、MapReduce
是一个数据仓库工具,在Hadoop上架一层SQL接口,将SQL翻译成MapReduce程序执行,方面分析人员使用SQL进行海量数据的统计和分析。
可以用HQL读取HDFS里面存储的文件,基于MapReduce引擎执行,编写的HQL语句是转化为MapReduce语句执行。

12.6 介绍一下Hue:

Hue是一个可快速开发和调试的Hadoop生态系统,通过Hue的界面,发出hive语句,可以浏览hdfs文件,可以定义oozie工作流(进行作业流调度,定时运行,不需要每天更新),hue的目标就是做一个hadoop各种生态组建的webUI平台。
在这里插入图片描述

12.7 如何理解Spark:

可以认为是Hadoop的改进,MapReduce在计算时是先进行Map,再进行Reduce,是面向磁盘的,受限于磁盘读写性能约束,效率低些。而spark是面向内存的,处理性能高。

12.8 如何理解etl:

Etl(Extraction-Transform-Load)是提取、清洗转化、装载的过程。目的是将分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。
数据抽取:
需要搞清楚数据从几个业务系统中来,各业务系统是什么数据库,是否存在非结构化数据等;
数据的清洗转换:
一般数据仓库包ODS、DW两部分,通常是从业务系统到ODS做清洗,是将脏数据和不完整数据过滤掉,在从ODS到DW的过程中转换,进行一些业务规则的计算和聚合。
数据清洗主要是处理不完整数据、错误数据、重复数据等;数据转换包括不一致数据的转换、数据粒度的转换以及商务规则的转换。
数据装载:
是将转换的结果按照分析模型需要的格式,将数据写入目标表中,这些目标表就是业务自助分析的数据来源,通过一定建模的方式来组织。比如星型分析模型或雪花型分析模型。

13. 大数据应用领域:

1.电商领域:电商平台对用户信息进行分析,为用户推送感兴趣产品,刺激消费
2.安防领域:安防行业可实现视频图像模糊查询、快速检索、精准定位,并能够进一步挖掘海量视频监控数据背后的价值信息,反馈内容知识辅助决策判断
3.金融领域:用户画像基础上,可根据用户的年龄、资产规模、理财偏好等,对用户群进行精准定位,分析潜在的金融服务需求
4.教育领域:对学习行为与学生信息进行分析,为每位学院定制个性化课程
5.交通领域:预测未来交通情况,为改善交通状况提供优化方案,有助于交通部门加强对交通把控能力,防止和缓解交通拥堵,提供人性化服务

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值