(一)数据可视化
1、了解常见可视化图形(散点图、折线图、饼图、环图、双层环图、柱状图、堆积柱状图、分组柱状图、正负条形图、雷达图)的概念,具有初步的可视化图形展示数据的能力。
散点图
散点图是指在回归分析中,数据点在直角坐标系平面上的分布图,散点图表示因变量随自变量而变化的大致趋势,据此可以选择合适的函数对数据点进行拟合。
用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间是否存在某种关联或总结坐标点的分布模式。散点图将序列显示为一组点。值由点在图表中的位置表示。类别由图表中的不同标记表示。散点图通常用于比较跨类别的聚合数据。
折线图
折线图是排列在工作表的列或行中的数据可以绘制到折线图中。折线图可以显示随时间(根据常用比例设置)而变化的连续数据,因此非常适用于显示在相等时间间隔下数据的趋势。
在折线图中,类别数据沿水平轴均匀分布,所有值数据沿垂直轴均匀分布。
饼图
饼图常用于统计学模块。
仅排列在工作表的一列或一行中的数据可以绘制到饼图中。饼图显示一个数据系列中各项的大小与各项总和的比例。饼图中的数据点显示为整个饼图的百分比。
数据系列:在图表中绘制的相关数据点,这些数据源自数据表的行或列。图表中的每个数据系列具有唯一的颜色或图案并且在图表的图例中表示。可以在图表中绘制一个或多个数据系列。饼图只有一个数据系列。
数据点:在图表中绘制的单个值,这些值由条形、柱形、折线、饼图或圆环图的扇面、圆点和其他被称为数据标记的图形表示。相同颜色的数据标记组成一个数据系列。
环图
双层环图
柱状图
柱形图,又称长条图、柱状统计图,亦称条图、条状图、棒形图,是一种以长方形的长度为变量的统计图表。长条图用来比较两个或以上的价值(不同时间或者不同条件),只有一个变量,通常利用于较小的数据集分析。长条图亦可横向排列,或用多维方式表达。
堆积柱状图
分组柱状图
正负条形图
雷达图
雷达图是以从同一点开始的轴上表示的三个或更多个定量变量的二维图表的形式显示多变量数据的图形方法。轴的相对位置和角度通常是无信息的。 雷达图也称为网络图,蜘蛛图,星图,蜘蛛网图,不规则多边形,极坐标图或Kiviat图。它相当于平行坐标图,轴径向排列。
(二)大数据处理技术
1、掌握云计算的概念、云计算的特征、云计算的三层 SPI 模型(IaaS、PaaS、 SaaS)。
参考[信息化基础知识(三)新一代信息技术]云计算部分。
2、掌握虚拟化技术的概念、常用虚拟化方法,了解常用虚拟化软件。
虚拟化(Virtualization)技术最早出现在 20 世纪 60 年代的 IBM 大型机系统,在 20 世纪 70 年代的 System370 系列中逐渐流行起来,这些机器通过一种叫虚拟机监控器(Virtual Machine Monitor, VMM)的程序在物理硬件之上生成许多可以运行独立操作系统软件的虚拟机(Virtual Machine)实例。随着近年多核系统、集群、网格甚至云计算的广泛部署,虚拟化技术在商业应用上的优势日益体现,不仅降低了 T 成本,而且还增强了系统安全性和可靠性,虚拟化的概念也逐渐深入到人们日常的工作与生活中。
虚拟化是一个广义的术语,对于不同的人来说可能意味着不同的东西,这要取决他们所处的环境。在计算机科学领域中,虚拟化代表着对计算资源的抽象,而不仅仅局限于虚拟机的概念。例如对物理内存的抽象,产生了虚拟内存技术,使得应用程序认为其自身拥有连续可用的地址空间(Address Space),而实际上,应用程序的代码和数据可能被分隔成多个碎片页或段,甚至被交换到磁盘、闪存等外部存储器上,即使物理内存不足,应用程序也能顺利执行。
(1)全虚拟化
全虚拟化(Full Virtualization)是指虚拟机模拟了完整的底层硬件,包括处理器、物理 内存、时钟、外设等,使得为原始硬件设计的操作系统或其他系统软件完全不作任何修改就 可以在虚拟机中运行。
比较著名的全虚拟化 VMM 有 Microsoft Virtual PC、VMware Workstation、SUN Virtual Box、Parallels Desktop forMac 和 QEMU。
(2)超虚拟化
超虚拟化(Paravirtualization)是一种修改 Guest OS 部分访问特权状态的代码以便直接 与 VMM 交互的技术。在超虚拟化虚拟机中,部分硬件接口以软件的形式提供给客户机操 作系统,这可以通过 Hypercall(VMM 提供给 Guest OS 的直接调用,与系统调用类似)的 方式来提供。
比较著名的 VMM 有 Denali、Xen。
(3)硬件辅助虚拟化
硬件辅助虚拟化(Hardware-Assisted Virtualization)是指借助硬件(主要是主机处理器) 的支持来实现高效的全虚拟化。
Intel-VT 和 AMD-V 是目前 x86 体系结构上可用的两种硬件辅助虚拟化技术。
(4)部分虚拟化
部分虚拟化(Partial Virtualization)中,VMM 只模拟部分底层硬件,因此客户机操作系 统不作修改是无法在虚拟机中运行的,其他程序可能也需要进行修改。
(5)操作系统级虚拟化
在传统操作系统中,所有用户的进程本质上是在同一个操作系统的实例中运行,因此内 核或应用程序的缺陷可能影响到其他进程。 操作系统级虚拟化( Operating System Level Virtualization)是一种在服务器操作系统中使用的轻量级的虚拟化技术,内核通过创建多个 虚拟的操作系统实例(内核和库)来隔离不同的进程,不同实例中的进程完全不了解对方的 存在。
比较著名的有 Solaris Container、FreeBSD Jail 和 OpenVZ 等。
3、具有应用虚拟化技术搭建虚拟化平台的能力。
4、了解分布式计算、高性能计算、边缘计算的概念。
分布式计算
分布式计算是一种计算方法,和集中式计算是相对的。
随着计算技术的发展,有些应用需要非常巨大的计算能力才能完成,如果采用集中式计算,需要耗费相当长的时间来完成。
分布式计算将该应用分解成许多小的部分,分配给多台计算机进行处理。这样可以节约整体计算时间,大大提高计算效率。
高性能计算
高性能计算(High performance computing, 缩写HPC) 指通常使用很多处理器(作为单个机器的一部分)或者某一集群中组织的几台计算机(作为单个计 算资源操作)的计算系统和环境。有许多类型的HPC 系统,其范围从标准计算机的大型集群,到高度专用的硬件。大多数基于集群的HPC系统使用高性能网络互连,比如那些来自 InfiniBand 或 Myrinet 的网络互连。基本的网络拓扑和组织可以使用一个简单的总线拓扑,在性能很高的环境中,网状网络系统在主机之间提供较短的潜伏期,所以可改善总体网络性能和传输速率。
边缘计算
边缘计算,是指在靠近物或数据源头的一侧,采用网络、计算、存储、应用核心能力为一体的开放平台,就近提供最近端服务。其应用程序在边缘侧发起,产生更快的网络服务响应,满足行业在实时业务、应用智能、安全与隐私保护等方面的基本需求。边缘计算处于物理实体和工业连接之间,或处于物理实体的顶端。而云端计算,仍然可以访问边缘计算的历史数据。
5.了解有监督学习、无监督学习、强化学习的概念和区别。
有监督学习
训练数据由一组训练实例组成。在监督学习中,每一个例子都是一对由一个输入对象(通常是一个向量)和一个期望的输出值(也被称为监督信号)。有监督学习算法分析训练数据,并产生一个推断的功能,它可以用于映射新的例子。一个最佳的方案将允许该算法正确地在标签不可见的情况下确定类标签。
用已知某种或某些特性的样本作为训练集,以建立一个数学模型(如模式识别中的判别模型,人工神经网络法中的权重模型等),再用已建立的模型来预测未知样本,此种方法称为有监督学习。是最常见的机器学习方法。
无监督学习
现实生活中常常会有这样的问题:缺乏足够的先验知识,因此难以人工标注类别或进行人工类别标注的成本太高。很自然地,我们希望计算机能代我们完成这些工作,或至少提供一些帮助。根据类别未知(没有被标记)的训练样本解决模式识别中的各种问题,称之为无监督学习。
强化学习
强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
强化学习的常见模型是标准的马尔可夫决策过程(Markov Decision Process, MDP)。按给定条件,强化学习可分为基于模式的强化学习(model-based RL)和无模式强化学习(model-free RL),以及主动强化学习(active RL)和被动强化学习(passive RL)。强化学习的变体包括逆向强化学习、阶层强化学习和部分可观测系统的强化学习。求解强化学习问题所使用的算法可分为策略搜索算法和值函数(value function)算法两类。深度学习模型可以在强化学习中得到使用,形成深度强化学习。
6、了解数据集市、数据仓库、数据中台、数据平台的概念。
数据仓库
数据仓库:是一个集成的面向主题的数据集合,设计的目的是支持DSS(决策支持系统)的功能,在数据仓库里,每个数据单元都和特定的时间相关。数据仓库包括原子级别的数据和轻度汇总的数据。数据仓库是面向主题的、集成的、不可更新的(稳定性)、随时间不断变化(不同时间)的数据集合,用以支持经营管理中的决策制定过程。
数据集市
数据集市:是一个小型的部门或工作组级别的数据仓库。有两种类型的数据集市——独立型和从属型。独立型数据集市直接从操作型环境获取数据。从属型数据集市从企业级数据仓库获取数据。从长远的角度看,从属型数据集市在体系结构上比独立型数据集市更稳定。
数据中台和数据平台
数据中台的本质就是“数据仓库+数据服务中间件”。
想要理解数据中台和数据平台的区别,首先应该了解中台和平台的区别。我理解的平台是企业或者研发团队为了满足用户需求而建设的基于业务的平台(也就是各种不同类型的能力组合后的产物)。而中台,一般是组合前的能力集合,处于同一中台的能力一般都是相似能力的,前台调用者只需要对中台的各种能力进行组合就可以来满足用户的需求。
数据中台就是对数据能力的一个建设集合,数据平台可以通过组合数据中台的能力来满足用户的需求,数据平台是直接面向客户的能力组合过后的商业产品,而数据中台是企业自身的能力集合。产品层从用户获取需求之后,制定出需要构建的数据能力平台,该能力平台就可以从企业已有的数据中台中获取不同的数据能力,通过能力的组合的方法,将中台中的小能力通过组合,拆分聚合构建起数据平台。如果数据能力中台中不包含某项能力,那么中台的建设者就应该积极去拓展这样的能力。
中台建设的过程中,中台抽象自平台。在平台的搭建过程中,平台来源于对中台能力的组合和聚合。单从用处来讲,中台的出现是为了减少重复劳动,基于用户需求的各种平台可以构建在企业能力中台之上,平台由各种中台能力类似于像搭积木一样构建起来。通过对不同能力的组合,聚合,构建起满足一定用户需求的大功能。中台的建设也需要从平台中借鉴经验,比如,用户需要什么样的功能,如果目前中台对这样的功能无法支持,那么我们就需要对中台能力进行扩充。数据中台就是为了避免重复创造数据能力相关的轮子而出现的数据能力集合。虽然数据平台也是能力集合,单从组成来讲,平台的能力比较基于某种功能,而中台能力集合中的某一个能力往往只基于某一个点。可以简单想象成企业内部的能力库。中台的出现就是为了减少重复轮子的构建工作。
7、掌握数据采集与预处理过程,掌握数据采集、数据清洗、数据转换、数据脱敏的方法。
数据采集
数据采集根据采集数据的类型可以分为不同的方式,主要方式有:传感器采集、爬虫、录入、导入、接口等。
数据清洗
1)忽略该条记录
若一条记录中有属性值被遗漏了,则将此条记录排除,尤其是没有类别属性值而又要进行分类数据挖掘时。当然,这种方法并不很有效,尤其是在每个属性的遗漏值的记录比例相差较大时。
2)手工填补遗漏值
一般这种方法比较耗时,而且对于存在许多遗漏情况的大规模数据集而言,显然可行性较差。
3)利用默认值填补遗漏值
对一个属性的所有遗漏的值均利用一个事先确定好的值来填补,如都用“OK”来填补。但当一个属性的遗漏值较多时,若采用这种方法,就可能误导挖掘进程。因此这种方法虽然简单,但并不推荐使用,或使用时需要仔细分析填补后的情况,以尽量避免对最终挖掘结果产生较大误差。
4)利用均值填补遗漏值
计算一个属性值的平均值,并用此值填补该属性所有遗漏的值。例如,若顾客的平均收入为 10000 元,则用此值填补“顾客收入”属性中所有被遗漏的值。
5)利用同类别均值填补遗漏值
这种方法尤其适合在进行分类挖掘时使用。例如,若要对商场顾客按信用风险进行分类挖掘时,就可以用在同一信用风险类别(如良好)下的“顾客收入”属性的平均值,来填补所有在同一信用风险类别下“顾客收入”属性的遗漏值。
6)利用最可能的值填补遗漏值
可以利用回归分析、贝叶斯计算公式或决策树推断出该条记录特定属性的最大可能的取值。例如,利用数据集中其他顾客的属性值,可以构造一个决策树来预测“顾客收入”属性的遗漏值。
最后一种方法是一种较常用的方法,与其他方法相比,它最大程度地利用了当前数据所包含的信息来帮助预测所遗漏的数据。
数据转换
1)平滑处理
帮助除去数据中的噪声,主要技术方法有 Bin 方法、聚类方法和回归方法。
2)合计处理
对数据进行总结或合计操作。例如,每天的数据经过合计操作可以获得每月或每年的总额。这一操作常用于构造数据立方或对数据进行多粒度的分析。
3)数据泛化处理
用更抽象(更高层次)的概念来取代低层次或数据层的数据对象。
例如,街道属性可以泛化到更高层次的概念,如城市、国家,数值型的属性,如年龄属性,可以映射到更高层次的概念,如年轻、中年和老年。
4)规格化处理
将有关属性数据按比例投射到特定的小范围之中。例如,将工资收入属性值映射到 0 到 1 范围内。
5)属性构造处理
根据已有属性集构造新的属性,以帮助数据处理过程。
数据脱敏
1.数据替换
要求:用设置的固定虚构值替换真值。例如将手机号码统一替换为 13800013800
2.无效化
要求:通过对数据值得截断、加密、隐藏等方式使敏感数据脱敏,使其不再具有利用价值,例如将地址以 ****** 代替真值。数据无效化与数据替换所达成的效果基本类似。
3.随机化
要求:用随机数据代替真值,保持替换值的随机性以模拟样本的真实性。例如用随机生成的姓和名代替真值。
【注意】这个例子中我们针对数据脱敏引入了外部字典表,实际情况中可以根据数据脱敏要求,随时引入任意外部字典表,通过数据的随机化组合,实现替换真值数据的脱敏处理。
4.偏移和取整
要求:通过随机移位改变数字数据,例如日期 2018-01-02 8:12:25 变为 2018-01-02 8:00:00,偏移取整在保持了数据的安全性的同时保证了范围的大致真实性,此项功能在大数据利用环境中具有重大价值。
5.掩码屏蔽
要求:掩码屏蔽是针对账户类数据的部分信息进行脱敏时的有力工具,比如银行卡号或是身份证号的脱敏。将身份证号的出生日期进行掩码屏蔽脱敏。使用left()函数截取身份证号的左边 6 位 + 字符串 ********+right()函数截取身份证号右边 4 位替换源身份证字符串。
6.灵活编码
要求:在需要特殊脱敏规则时,可执行灵活编码以满足各种可能的脱敏规则。比如用固定字母和固定位数的数字替代合同编号真值。将合同编号进行自定义编码脱敏。自定义编码规则:4 位固定码 + 当前年份 + 源目标字符串 4 位号码 + 9 位数值组成。
8、了解数据存储与管理技术、大数据处理架构 Hadoop、分布式文件系统 HDFS、NoSQL 数据库、分布式数据库 HBase 的相关概念。
Hadoop
Hadoop 是一种分析和处理大数据的软件平台,是一个用 Java 语言实现的 Apache 的开源软件框架,在大量计算机组成的集群中实现了对海量数据的分布式计算。
Hadoop 采用 MapReduce 分布式计算框架,根据 GFS 原理开发了 HDFS(分布式文件系统),并根据 BigTable 原理开发了 HBase 数据存储系统。
Hadoop 是一个基础框架,允许用简单的编程模型在计算机集群上对大型数据集进行分布式处理。它的设计规模从单一服务器到数千台机器,每个服务器都能提供本地计算和存储功能,框架本身提供的是计算机集群高可用的服务,不依靠硬件来提供高可用性。
用户可以在不了解分布式底层细节的情况下,轻松地在 Hadoop 上开发和运行处理海量数据的应用程序。低成本、高可靠、高扩展、高有效、高容错等特性让 hadoop 成为最流行的大数据分析系统。
Hadoop 生态圈包括以下主要组件。
1)HDFS
一个提供高可用的获取应用数据的分布式文件系统。
2)MapReduce
一个并行处理大数据集的编程模型。
3)HBase
一个可扩展的分布式数据库,支持大表的结构化数据存储。是一个建立在 HDFS 之上的,面向列的 NoSQL 数据库,用于快速读/写大量数据。
4)Hive
一个建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具;可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。
Hive 定义了简单的类 SQL 查询语言,称为 HQL,它允许不熟悉 MapReduce 的开发人员也能编写数据查询语句,然后这些语句被翻译为 Hadoop 上面的 MapReduce 任务。
5)Mahout
可扩展的机器学习和数据挖掘库。它提供的 MapReduce 包含很多实现方法,包括聚类算法、回归测试、统计建模。
6)Pig
一个支持并行计算的高级的数据流语言和执行框架。它是 MapReduce 编程的复杂性的抽象。Pig 平台包括运行环境和用于分析 Hadoop 数据集的脚本语言(PigLatin)。其编译器将 PigLatin 翻译成 MapReduce 程序序列。
7)Zookeeper
—个应用于分布式应用的高性能的协调服务。它是一个为分布式应用提供一致性服务的软件,提供的功能包括配置维护、域名服务、分布式同步、组服务等。
8)Amban
一个基于 Web 的工具,用来供应、管理和监测 Hadoop 集群,包括支持 HDFS、MapReduceAHive、HCatalog、HBase、ZooKeeperAOozie、Pig 和 Sqoop 。
HDFS
HDFS 是 Hadoop 的一个分布式文件系统,是 Hadoop 应用程序使用的主要分布式存储。HDFS 被设计成适合运行在通用硬件上的分布式文件系统。
在 HDFS 体系结构中有两类结点:一类是 NameNode,又叫“名称结点”;另一类是 DataNode,又叫“数据结点”。这两类结点分别承担 Master 和 Worker 具体任务的执行。
HDFS 总的设计思想是分而治之,即将大文件和大批量文件分布式存放在大量独立的服务器上,以便采取分而治之的方式对海量数据进行运算分析。
HDFS 是一个主/从体系结构,从最终用户的角度来看,它就像传统的文件系统一样,可以通过目录路径对文件执行 CRUD(Create、Read、Update 和 Delete)操作。但由于分布式存储的性质,HDFS 集群拥有一个 NameNode 和一些 DataNode。NameNode 管理文件系统的元数据,DataNode 存储实际的数据。
客户端通过同 NameNode 和 DataNode 的交互来访问文件系统。客户端通过联系 NameNode 来获取文件的元数据,而真正的文件 I/O 操作是直接和 DataNode 交互进行的。
HDFS 主要针对“一次写入,多次读取”的应用场景,不适合实时交互性很强的应用场景,也不适合存储大量小文件。
NoSQL
NoSQL 是一种不同于关系型数据库的数据库管理系统设计方式,是对非关系型数据库的统称。它所采用的数据模型并非关系型数据库的关系模型,而是类似键值、列族、文档等的非今系模型。它打破了长久以来关系型数据库与 ACID(原子性(Atomicity)、一致性(Consistency)隔离性(Isolation)和持久性(Durability))理论大一统的局面。
NoSQL 数据存储不需要固定的表结构,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。
HBase
HBase 是基于 Apache Hadoop 的面向列的 NoSQL 数据库,是 Google 的 BigTable 的开源实现。HBase 是一个针对半结构化数据的开源的、多版本的、可伸缩的、高可靠的、高性能的、分布式的和面向列的动态模式数据库。
HBase 和传统关系数据库不同,它采用了 BigTable 的数据模型增强的稀疏排序映射表(Key/Value),其中,键由行关键字、列关键字和时间戳构成。
HBase 提供了对大规模数据的随机、实时读写访问。HBase 的目标是存储并处理大型的数据,也就是仅用普通的硬件配置,就能够处理上千亿的行和几百万的列所组成的超大型数据库。
9、了解大数据处理环节的主要思想:大数据采集、大数据预处理、大数据存储及管理、大数据分析及挖掘、大数据展现和应用(包括大数据检索、大数据可视化、大数据应用、大数据安全等)。
10、了解大数据处理与分析的代表性流行产品。
1、大数据平台,华为和星环。
华为- Fusioninsight,基于 Apache 进行功能增强的企业级大数据存储、查询和分析的统一平台。
星环,基于 Hadoop 生态系列的大数据平台公司。
2、云端大数据,阿里云和华为云。
阿里云实力不差,与亚马逊 AWS 抗衡,做公有云、私有云、混,面向中小型企业。
华为云,定位运营商和大中型企业,依傍数据安全
3、数据应用方面,围绕大数据和报表的帆软,特定业务应用的云 CRM 的纷享销客和等等。数据应用现在主要分为两种模式,一种是纯正 IT 类,围绕企业部暑应用的,如帆软。还有一类是互联网 2B 形式,主要是 SAAS 产品,如销售易。