美文网首页计算机科学与技术
初步了解大数据技术

初步了解大数据技术

作者: 猫_34b5 | 来源:发表于2020-06-10 11:01 被阅读0次

    大数据的定义:

                            无法在一定时间范围内用常规软件工具进行捕捉,管理和处理的数据集合,需要新处理模式才能有更强的决策力,洞察发现力和流程优化能力的海量,高增长率和多样性的信息资产。


        特征4个V:

                        数据量大,数据价值巨大,数据种类多样,高实时性


    数据类型(结构化数据,非结构化数据,半结构化数据)

    结构化数据:基于关系型数据库的数据;

    非结构化数据:非纯文本数据,没有标准格式,无法直接解析出相应的值,如:文本,图像,语音,视频等;

    半结构化数据:介于完全结构化数据和完全无结构化数据之间的数据,如:邮件,HTML,报表,具有定义模式的XML数据文件等;


    大数据平台框架:



    1.数据采集与预处理(数据库同步常用Sqoop,日志同步可以选择Flume,打点采集和爬虫系统的数据经过格式化转换后通过Kafka消息队列进行传递。)

    【2.存储HDFS

      3.计算机框架(批处理(MapReduce,Spark,流处理Spark Streaming))

      4.分析与挖掘(Hive,Spark SQL等统计分析,MLlib,TensorFlow数据挖掘)】

    5.数据输出与展示(可视化,数据库同步通常用Sqoop)


    为什么要互联网产品和后台的大数据系统整合起来,构建一个大数据平台?


    互联网产品处理用户请求,需要毫秒级的响应,也就是说,要在 1 秒内完成计算,因此大数据计算必然不能实现这样的响应要求。

    互联网应用又需要使用大数据,实现统计分析、数据挖掘、关联推荐、用户画像等一系列功能。

    解决方案就是将面向用户的互联网产品和后台的大数据系统整合起来,构建一个大数据平台。

    大数据平台,顾名思义就是整合网站应用和大数据系统之间的差异,将应用程序产生的数据导入到大数据系统,经过处理计算后再导出给应用程序使用。



    互联网产品处理的数据和大数据处理的数据有什么不一样?


    要实时响应的互联网应用处理的是用户请求的在线业务系统的数据;

    大数据产品需要长时间处理的大数据计算的数据是店铺访问统计数据,或者智能推荐数据,用户画像等;


    数据库 RDBMS 同步到 Hadoop,通常用工具Sqoop

    1.Sqoop 是什么?

    (1)Sqoop:,SQL-to-Hadoop

    (2)连接传统关系型数据库和 Hadoop 桥梁

    (3)底层用 MapReduce 程序实现 ETL

    (4)Sqoop 适合关系数据库数据的批量导入


    日志采集用工具 Flume

    (1)由 Cloudera 公司开源

    (2)分布式、可靠和高可用的海量日志采集、聚合和传输的日志收集系统

    (3)数据源可定制、可扩展

    (4)数据存储系统可定制、可扩展

    (5)中间件:屏蔽了数据源和数据存储系统的异构性

    以下关于日志采集工具 Flume 的说法不正确的是:(B)

    A.Flume 的数据源和目标都是可定制、可扩展的

    B.Flume 适用于大量数据的实时数据采集

    C.Flume 支持多级级联和多路复制

    D.Flume 是一个分布式、可靠和高可用的海量日志采集、聚合和传输的日志收集系统


    Scrapy 爬虫框架

    网络爬虫就像一只蜘蛛一样在互联网上沿着 URL 的丝线爬行,下载每一个URL 所指向的网页,分析页面内容。



    Kafka 是什么?

    (1)Kafka ,2011,Linkin 开发,是一个高吞吐、分布式、基于发布/订阅的消息系统。

    (2)利用 Kafka 技术可在廉价 PC Server 上搭建起大规模消息系统。

    (3)由 Scala 和 Java 编写。

    以下关于数据分发中间件 Kafka 的说法不正确的是:(A)

    A.Kafka 主要是使用 c++、Java 语言实现的

    B.每条发布到 Kafka 集群的消息都属于一个主题(topic)

    C.Kafka 将 Topic 分成一个或者多个 Partition

    D.Kafka 是一个基于发布/订阅的消息系统



    前端埋点数据采集是什么?

    用户的某些前端行为并不会产生后端请求,比如用户在一个页面的停留时间,用户选中一个复选框然后又取消等。这些信息对于大数据处理,分析用户行为,进行智能推荐都有很大价值。但是这些数据必须通过前端埋点获得,所谓前端埋点,就是应用前端为了进行数据统计和分析而采集数据。


    RAID(独立磁盘冗余阵列)



    以下关于分布式文件系统 HDFS 的说法不正确的是:(A)

    A.HDFS 支持多用户写入,任意修改文件

    B.HDFS 支持存储 TB-PB 级别的数据

    C.数据块(Block)是 HDFS 文件系统基本的存储单位

    D.HDFS 是能够运行在通用硬件上的分布式文件系统


    Hadoop 平台安装配置=1.存储 HDFS+2.计算(Mapreduce,Spark)+3, 管 理 YARN (  ResourceManger+ NodeManger)



    以下关于分布式数据库 HBase 的说法不正确的是:(D)

    A. HBase 是一个基于列式存储的分布式数据库系统

    B. HBase 源于 Google BigTable 技术

    C. HBase 不支持复杂的 SQL 操作,例如表连接

    D. HBase 比传统关系数据库系统具有更加丰富的数据类型


    Shuffle 过程包含 4 个过程:分区(partition),排序(sort),合并(combine),归并(merge)



    分块(block),分片(split),分区(partition)三个区别?

    block 分块是 HDFS 中的基本存储单位(真实物理划分)、

    split 分片(逻辑上划分,不是物理上真的划分)split 划分属于逻辑上的划分,目的只是为了让 map task 更好地获取数据

    partition,分区默认采用哈希函数,分给不同的 reduce,需要先进行分区操作,这样就能把map 任务处理的结果发送给指定的 reducer 去执行,从而达到负载均衡,避免数据倾斜


    合并(Combine)和归并(Merge)的区别:

    答:两个键值对<“a”,1>和<“a”,1>,如果合并,会得到<“a”,2>,如果归并,会得到<“a”,<1,1>>


    关于 Spark 的特点说法不正确的是(D)

    A.Spark 提供了内存计算,可将中间结果放到内存中,对于迭代运算效率更高

    B.Spark 的计算模式也属于 MapReduce,但编程模型比 Hadoop MapReduce 更灵活

    C.Spark 基于 DAG 的任务调度执行机制,要优于 Hadoop MapReduce 的迭代执行机制

    D.Scala 是 Spark 的主要编程语言,但 Spark 不支持 Java、Python、R 作为编程语言


    Spark 运行架构包括

    集群资源管理器(Cluster Manager,)、

    运行作业任务的工作节点(Worker Node )、

    每个应用的任务控制节点(Driver,)

    和每个工作节点上负责具体任务的执行进程(Executor)


    RDD(Resilient Distributed Datasets 弹性分布式数据集)



    大数据计算的 3 种类型(批处理,交互式查询,流处理)



    1.下列说法错误的是(D)

    A.RDD 采用惰性调用,遇到“转换(Transformation)”类型的操作时,只会记录 RDD 生成的轨迹,只有遇到“动作(Action)”类型的操作时才会触发真正的计算

    B.在选择 Spark Streaming 和 Storm 时,对实时性要求高(比如要求毫秒级响应)的企业更倾向于选择流计算框架 Storm

    C.Spark 支持三种类型的部署方式:Standalone,Spark on Mesos,Spark on YARN

    D.RDD 提供的转换接口既适用 filter 等粗粒度的转换,也适合某一数据项的细粒度转换

    2..RDD 操作分为转换(Transformation)和动作(Action)两种类型,下列属于动作(Action)类型的操作的是(D)

    A.groupBy

    B.map

    C.filter

    D.count

    3.下列关于常见的动作(Action)和转换(Transformation)操作的API 解释错误的是(c)

    A.map(func):将每个元素传递到函数 func 中,并将结果返回为一个新的数据集

    B.count():返回数据集中的元素个数

    C.Reduce():返回数据集中的第 n 个元素

    D.filter(func):筛选出满足函数 func 的元素,并返回一个新的数据集



    以下关于数据仓库 Hive 的说法不正确的是:(D)

    A.Hive 将用户的查询语句转换为 MapReduce 作业提交到 Hadoop 集群上执行

    B.Hive 的数据最终都保存为 HDFS 文件

    C.Hive 主要是为分析数据而设计的数据仓库

    D.Hive 能够在大规模数据集上实现低延迟快速的查询


    工业界主流的大数据流计算框架Spark Streaming、 Storm、Flink

    Spark Streaming 和 Storm 最大的区别在于:Spark Streaming 无法实现毫秒级的流计算,而 Storm 可以实现毫秒级响应。



    大数据分析驱动运营是什么?

    运营数据的获得,需要在应用程序中大量埋点采集数据,从数据库、日志和其他第三方采集数据,对数据清洗、转换、存储,利用 SQL 进行数据统计、汇总、分析,才能最后得到需要的运营数据报告。而这一切,都需要大数据平台的支持。


    互联网运营常用数据指标

    1. 新增用户数

    2. 用户留存率

    3. 活跃用户数

    4. PV

    5. GMV

    6. 转化率




    数据可视化图表

    1. 折线图

    2. 散点图

    3. 热力图 Heatmap

    4.漏斗图




    数据质量分析是什么?

    数据质量分析是数据预处理的前提,是数据挖掘分析结论有效性和准确性的基础,其主要任务是检查原始数据中是否存在脏数据,脏数据一般是指不符合要求,以及不能直接进行相应分析的数据,在常见的数据挖掘工作中,脏数据包括:

    缺失值

    异常值

    不一致的值



    数据特征分析是什么?

    统计量分析

    相关性分析




    为什么要数据预处理?



    三种规范化方法:最小-最大规范化、零-均值规范化、小数定标规范



    数据规约——属性规约

    数据规约——数值规约



    相关文章

      网友评论

        本文标题:初步了解大数据技术

        本文链接:https://www.haomeiwen.com/subject/talutktx.html