(超基础内容,找个地方记记笔记)
本文章为阅读《实战大数据(Hadoop+Spark+Flink)》(机械工业出版社)有感而所记笔记,侵权必删。
一、什么是大数据?
大数据=信息资产(巨多的、一般人用不了需要新处理模式的、高增长率的、多样化的)
作者之前的错误理解:大数据=hadoop (X)
大数据是一种理念、一种解决问题的思维、一系列技术的合集。
Hadoop是一种具体的处理数据的框架,与Spark和Flink一个级别。
二、大数据框架
数据服务与可视化 (用户能看到的一层) | ||
数据处理 | 交互式分析 | 机器学习与数据发觉 |
资源管理 (为了支持数据的处理进行统一的资源调度与分配) | ||
数据管理 (大数据的根基,处理框架都是构建在基础之上) | ||
数据获取 (大数据的来源) |
数据处理
可以分为离线处理和实时处理。(按照执行时间的跨度划分)
离线处理:用于处理复杂的批量数据,也称批处理。数据处理的时间跨度在几分钟到数小时之间。比如电视台的收视率统计。
实时处理:用于处理实时数据流,也称流处理。数据处理的时间跨度在数百毫秒到数秒之间。主要的特点是其处理的数据是源源不断且实时到来的。
交互式分析
有时我们需要对数据根据不同条件进行分析查询并及时返回结果,这时就需要交互式分析。如实时报表分析、在线话单查询,火车站实时大屏等。交互式查询具有以下特点:
- 低延时
- 查询条件复杂
- 查询范围大
- 返回结果数据量小
- 并发数要求高
- 需要支持SQL等接口
机器学习与数据挖掘
常规有序的数据可以使用离线实时分析,交互式分析,复杂的数据需要利用数据挖掘和机器学习的方法。
机器学习是通过通过特定算法使计算机模拟人的学习行为,使之在工作中重新组织已有的知识结构,不断改善自身性能。(人工智能相关)
数据挖掘是从海量数据中通过算法搜索隐藏的信息过程。
在获取信息的过程中,数据挖掘强调结果,机器学习强调使用方法,两个领域有交集,但不能同一而论。
资源管理
资源管理的本质是集群、数据中心级别资源的统一管理和分配。其中多租户、弹性伸缩、动态分配是资源管理系统要解决的核心问题。
数据存储
想象一下小学应用题中用一根管子在一个大水塘中抽水,如果是两个一半大小的水池用两根管子同时同时抽水,那我们只需要一半的时间,如果分成更多的小水池同时抽水,那时间将会变得无限小。类比到存储上,一个1TB的硬盘在传输速度100MB/s的情况下读完所有数据要花2.5小时,如果分存到100个硬盘,只需要2分钟。这就是大数据存储的基础思维。但问题是如果同时保存一百个硬盘,可能会弄丢一两个,还可能摔坏几个,这就需要一些方法来避免数据丢失,这点之后再讲。
数据获取
大数据时代,数据是第一生产力,大数据技术的核心为从数据中挖掘价值,首先要明确的就是如何获取数据。数据可以划分为结构化数据和非结构化数据,结构化数据就是可以由表格来表现的必须严格遵循数据格式与长度规范的数据;非结构化数据就是一切格式的有用数据,不管是文字,图片,音频还是视频。