当前位置:AIGC资讯 > 数据采集 > 正文

【大数据采集技术与应用】【第一章】【大数据采集技术与应用概述】

文章目录

1.1 大数据概述 1.1.1 大数据时代 1.1.2 大数据的概念 1.1.3 大数据的特征 1.1.4 大数据的应用 1.1.5 大数据关键技术 1.1.6 大数据处理流程 1.2 大数据采集技术概述 1.2.1 数据采集与大数据采集 1.2.2 大数据采集流程 1.3大数据采集技术应用 1.3.1 大数据处理平台介绍 1.数据集成服务 2.数据库服务 3.存储服务 4.大数据处理服务 课后作业 一、名词解释 二、简答题 常用工具

1.1 大数据概述

1.1.1 大数据时代

1.第三次信息化浪潮

IBM前首席执行官郭士纳的观点,IT领域每隔15年就会迎来一次重大变革。

信息化浪潮 发生时间 标志 解决的问题 代表企业 第一次浪潮 1980年前后 个人计算机 信息处理 Intel、AMD、IBM、苹果、微软、联想、戴尔、惠普等 第二次浪潮 1995年前后 互联网 信息传播 雅虎、谷歌、阿里巴巴、百度、腾讯等 第三次浪潮 2010年前后 物联网、云计算和大数据 信息爆炸 亚马逊、谷歌、Hortonworks、Cloudera、阿里云等

这里我仿照格式写一下我认为的第四次浪潮:

信息化浪潮 发生时间 标志 解决的问题 代表企业 第四次浪潮 2020年前后 人工智能、机器学习、量子计算机 信息智能 2.信息科技为大数据时代提供技术支撑

信息科技需要解决信息存储、信息传输和信息处理三个核心问题:

(1)存储设备容量不断增加
(2)CPU处理能力大幅提升
(3)网络带宽不断增加

3.大数据的发展历程 阶段 时间 内容 第一阶段:萌芽期 20世纪90年代至21世纪初 随着数据挖掘理论和数据库技术的逐步成熟,一批商业智能工具和知识管理技术开始被应用,如数据仓库、专家系统、知识管理系统等。 第二阶段:成熟期 21世纪前10年 Web 2.0应用迅猛发展,非结构化数据大量产生,传统处理方法难以应对,带动了大数据技术的快速突破,大数据解决方案逐步走向成熟,形成了并行计算与分布式系统两大核心技术,谷歌的GFS和MapReduce等大数据技术受到追捧,Hadoop平台开始大行其道。 第三阶段:大规模应用期 2010年以后 大数据应用渗透各行各业,数据驱动决策,信息社会智能化程度大幅提高。

1.1.2 大数据的概念

Wikipedia:大数据是指无法使用传统和常用的软件技术和工具在一定时间内完成获取、管理和处理的数据.
麦肯锡咨询公司:大数据是指大小超出了常规数据库软件的采集、存储、管理和分析能力的数据集。

1.1.3 大数据的特征

相比于传统处理小数据,大数据具有五个方面的特征:容量大(Volume)、种类多(Variety)、速度快(Velocity)、真实性(Veracity)、价值密度低(Value)。

容量大(Volume):数据以每年50%的速度增长,即“大数据摩尔定律”。

种类多(Variety):数据类型丰富,包括结构化数据(10%)和非结构化数据(90%)。不得不提到的是,如此类型繁多的异构数据,数据处理和分析技术更具挑战:传统数据主要存储在关系数据库中,Web2.0等应用的数据越来越多存储在非关系型数据库中,必然涉及到集成过程中进行数据转换。转换过程复杂且难以管理,传统的联机分析处理(OnLine Analytical Processing,OLAP)和其他工具大都面向结构化数据。

速度快(Velocity):数据产生速度非常迅速。值得一提的是,如今很多应用都需要基于快速生成的数据给出实时分析结果,数据处理和分析的速度通常要达到秒级响应,传统的数据挖掘技术通常不要求给出实时分析结果。

真实性(Veracity):即追求高质量的数据。

价值密度低(Value):随着数据量的增长,数据中有意义的信息却没有呈相应比例增长。有价值的数据与数据的真实性和数据处理时间两点相关。例如监控视频中有价值的画面可能只有一两秒。

1.1.4 大数据的应用

领域 大数据的应用 制造业 利用工业大数据提升制造业水平,包括产品故障诊断与预测、分析工艺流程、改进生产工艺、优化生产过程能耗、工业供应链分析与优化、生产计划与排程 金融行业 大数据在高频交易、社交情绪分析和信贷风险分析三大金融创新领域发挥着重要作用 汽车行业 利用大数据和物联网技术的无人驾驶汽车,在不远的未来将走入我们的日常生活 互联网行业 借助于大数据技术,可以分析客户行为,进行商品推荐和有针对性广告投放 餐饮行业 利用大数据实现餐饮O20模式,彻底改变传统餐饮经营方式 电信行业 利用大数据技术实现客户离网分析,及时掌握客户离网倾向,出台客户挽留措施 能源行业 利用大数据技术分析用户用电模式,改进电网运行,合理设计电力需求响应系统,确保电网运行安全 物流行业 利用大数据优化物流网络,提高物流效率,降低物流成本 城市管理 利用大数据实现智能交通、环保监测、城市规划和智能安防 生物医学 大数据可以帮助我们实现流行病预测、智慧医疗、健康管理,同时还可以帮助我们解读DNA,了解更多生命奥秘 安全领域 政府利用大数据技术构建起强大的国家安全保障体系,企业利用大数据抵御网络攻击,警察借助大数据来预防犯罪 个人生活 利用与每个人相关联的“个人大数据”,分析个人生活行为习惯,为其提供更加周到的个性化服务

1.1.5 大数据关键技术

谈到大数据时,往往并非仅指数据本身,而是数据和大数据技术这两者的综合。

大数据技术,是指伴随着大数据的采集、存储、分析和应用的相关技术,使用非传统工具来对大量的结构化、半结构化和非结构化数据进行处理,从而获得分析和预测结果的一系列数据处理和分析技术。

大数据的基本处理流程,主要包括数据采集、存储、分析和结果呈现等环节:

首先采用相应的设备或软件对每时每刻都在不断产生数据进行采集。

因为对于来源众多、类型多样的数据而言,数据缺失和语义模糊等问题是不可避免的,必须采取相应措施来有效解决这些问题,这就需要“数据预处理”的过程,将数据变成一个可用的状态。

数据经过预处理后,会被存放到文件系统或数据库系统中进行存储与管理。

然后采用数据挖掘工具对数据进行处理分析。

最后采用可视化工具对用户呈现结果。

从数据处理流程的角度,大数据技术主要包括数据采集与预处理、数据存储和管理、数据处理与分析、数据安全和隐私保护等。

大数据技术的不同层面及其功能:

技术层面 功能 数据采集与预处理 利用ETL工具将分布的、异构数据源中的数据,如关系数据、平面数据文件等,抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础;也可以利用日志采集工具(如Flume、Kafka等)把实时采集的数据作为流计算系统的输入,进行实时处理分析 数据存储和管理 利用分布式文件系统、数据仓库、关系数据库、NoSQL数据库、云数据库等,实现对结构化、半结构化和非结构化海量数据的存储和管理 数据处理与分析 利用分布式并行编程模型和计算框架,结合机器学习和数据挖掘算法,实现对海量数据的处理和分析;对分析结果进行可视化呈现,帮助人们更好地理解数据、分析数据 数据安全和隐私保护 在从大数据中挖掘潜在的巨大商业价值和学术价值的同时,构建隐私数据保护体系和数据安全体系,有效保护个人隐私和数据安全

大数据技术是许多技术的一个集合体,这些技术并非全都是新生事物,诸如关系数据库、数据仓库、数据采集、ETL、OLAP、数据挖掘、数据隐私和安全、数据可视化等都是已经发展多年的技术,在大数据时代得到不断补充、完善、提高后又有了新的升华,也可以视为大数据技术的一个组成部分。

1.1.6 大数据处理流程

大数据处理流程主要包括数据采集、数据存储、数据预处理、数据计算、数据统计分析、数据挖掘、数据展示等环节。

大数据的处理流程可以定义为:在合适工具的辅助下,对广泛异构的数据源进行抽取和集成,结果按照一定的标准进行统一存储,并利用合适的数据分析技术对存储的数据进行分析,从中提取有益的知识并利用恰当的方式将结果展现给终端用户。简单来说,可以分为数据抽取与集成、数据分析以及数据解释。

(1)数据采集
大数据的采集是指利用多个数据库来接收发自客户端(Web、App或者传感器形式等)的数据,并且用户可以通过这些数据库来进行简单的查询和处理工作。

(2)数据预处理
虽然采集端本身会有很多数据库,但如果要对这些海量数据进行有效的分析,还是应该将这些来自前端的数据导入到一个集中的大型分布式数据库或者分布式存储集群中,并且可以在导入基础上做一些简单的清洗和预处理工作。

(3)数据统计分析
将海量的来自前端的数据快速导入到一个集中的大型分布式数据库或者分布式存储集群,利用分布式技术对存储于其内的集中的海量数据进行普通的查询和分类汇总等,以此满足大多数常见的分析需求。
统计与分析阶段的特点和挑战主要是导人数据量大,查询涉及的数据量大,查询请求多。

(4)数据挖掘
与前面统计和分析过程不同的是,数据挖掘一般没有预先设定好的主题,主要是在现有数据上进行基于各种算法的计算,从而起到预测的效果,实现一些高级别数据分析的需求。
比较典型算法有用于聚类的K-means、用于统计学习的SVM和用于分类的Naive Bayes,主要使用的工具有Hadogp的Mahout等。

(5)数据展示
当MapReduce过程结束后,产生的数据输出文件将被按需移至数据仓库或其他事务型系统。获得的数据用来进行大数据分析,或者使用BI工具产生报表供使用者作出正确有利的决策,这是大数据处理技术要解决的根本问题。

1.2 大数据采集技术概述

1.2.1 数据采集与大数据采集

数据采集又称数据获取,是指从传感器和其他待测设备等模拟和数字被测但愿中自动采集信息的过程。

新一代数据分类体系中,将新数据源进行归纳与分类,可将其分为线上行为数据与内容数据两大类。

线上行为数据:页面数据、交互数据、表单数据、会话数据等。

内容数据:应用日志、电子文档、机器数据、语音数据、社交媒体数据。

传统数据采集与大数据采集的区别:

传统数据采集 大数据采集 来源单一,数据量相当小 来源广泛,数量巨大 结构单一 数据类型丰富 关系数据库和并行数据库 分布式数据库

大数据采集技术就是对数据进行ETL操作,通过对数据进行提取、转换、加载,挖掘出数据的潜在价值,为用户提供解决方案或决策参考。

ETL是英文(Extract-Transform-Load)的缩写,用来描述将数据从来源端经过抽取(Extract)、转换(Transform)、加载(Load)到目的端,然后进行处理分析的过程,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据模型,将数据加载到数据仓库中,最后对数据仓库中的数据进行数据分析和处理。

采集的数据种类错综复杂,对于不同种类的数据进行数据分析,必须通过提取技术将复杂格式的数据进行数据提取。从数据原始格式中提取出需要的数据,提取过程中丢弃一些不重要的字段。

数据源的采集可能存在不准确性,对于提取后的数据,必须进行数据清洗,对于那些不准确的数据进行过滤、剔除。

针对不同的应用场景,对数据进行分析的工具或者系统不同,还需要对数据进行数据转换操作,将数据转换成不同的数据格式,

最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。

数据产生的种类很多,不同种类的数据产生的方式不同。大数据采集系统主要分为以下三类:

1.日志采集系统
日志采集系统就是收集日志数据并提供离线和在线的实时分析。
常用的开源日志收集系统:Flume、Scribe等。

2.网络数据采集系统
通过网络爬虫和一些网站平台提供的公共AP1(如Twitter和新浪微博APD等方式从网站上获取数据。这样就可以将非结构化数据和半结构化数据的网页数据从网页中提取出来,并对其进行提取、清洗、转换为结构化的数据,将其存储为统一的本地文件数据。
目前常用的网页爬虫系统有Apache Nutch、Crawler4j、Scirpy等框架。

3.数据库采集系统
常用传统关系数据库有:MySQL、Oracle,常用传统非关系数据库有:Redis、MongoDB,均常用于数据的采集。
流行的大数据采集分析技术:Hive
数据转换常用工具:Sqoop

1.2.2 大数据采集流程

互联网大数据采集就是获取互联网中相关网页内容的过程,并从中抽取出用户所需要的属性内容。互联网网页数据处理,就是对抽取出来的网页数据进行内容和格式上的处理,并进行转换和加工,使之能够适应用户的需求,非将之存储下来,以供后用。

1.大数据采集的基本框架

这六个模块的主要功能如下:
(1)网站页面:获取网站的网页内容。
(2)链接抽取:从网页内容中抽取出该网站正文内容的链接地址。
(3)链接过滤:判断该链接地址的网页内容是否已经被抓取过。
(4)内容抽取:从网页内容中抽取所需属性的内容值。
(5)爬取URL队列:为爬虫提供需要抓取数据网站的URL.
(6)数据:包含了网站URL,即需要抓取数据网站的URL信息;抓取数据的网页URL及网页内容三个方面。

2.大数据采集的基本步骤
整个大数据采集过程的基本步骤如下:
(1)将需要抓取数据的网站URL信息写人URL队列。
(2)爬虫从URL队列中获取需要抓取数据的网站URL信息。
(3)获取某个具体网站的网页内容。
(4)从网页内容中抽取该网站正文页内容的链接地址。
(5)从数据库中读取已经抓取过内容的网页地址。
(6)过滤URL:将当前URL与已经抓取过的URL进行比较。
(7)如果该网页地址没有被抓取过,则将该地址写入抓取网页URL数据库:如果该地址已经被抓取过,则放弃对这个地址的抓取操作。
(8)获取该地址的网页内容,并抽取出所需属性的内容值。
(9)将抽取的网页内容写入数据库。

1.3大数据采集技术应用

大数据应用于各个行业,如何利用数据创造价值是大数据采集技术的关键点,大数据平台和技术的应用成了一个出发点。

1.3.1 大数据处理平台介绍

本书所使用到的大数据处理平台:DanaStudio数智开发平台

DanaStudio数智开发平台是面向开发者、数据管理者、数据应用者提供的一站式大数据协作开发、管理平台,致力于解决结构化、半结构化和非结构化数据的采集融合、数据治理、元数据管理、分层管理、交换服务等问题。

1.数据集成服务

DANA 智能大数据开发平台中的数据集成模块提供数据库、文件、日志、网页、实时流数据的抽取、清洗、转换方案。分布式数据集成引擎,不论是数据库里的传统业务数据,还是网页数据,甚至是文档、图片、音视频等非结构化数据都可以用Crab引擎进行智能收集,并支持数据源的过滤、匹配。数据集成模块集网络爬虫、ETL、文件采集、邮件采集等功能于一身。

2.数据库服务

DANA智能大数据开发平台中的数据中心模块提供大数据时代稳定可靠、可弹性伸缩的数据库服务,包括关系型业务分析数据库Stork、内存分析型数据库Lemur、分布式数据库Teryx等。

Stork数据库引擎根据不同业务数据库的需求进行数据存储功能开发,提供便捷统一的数据库管理、使用、监控、运维等服务。

Lemur是基于内存存储的高性能结构化数据库,支持标准SQL语法,可提供每秒百万级别的交互事务和高效的实时数据分析能力。面对大数据业务,可通过在线横向扩展来提高大数据的处理和分析能力,带来更快捷、高效、实时的数据体验。

Teryx帮助构建拍字节(PB)级别的分布式OLAP数据仓库,支持行式、列式、外部存储等多种数据存储形态,提供MPP海量并行查询处理框架与服务。

3.存储服务

Fox文件系统提供无限扩展、NAS协议标准文件存储服务。

Boa块存储提供高性能、高可靠的块级随机存储。

Cayman非结构数据仓库提供私有对象存储和高效率的非结构化数据管理。

4.大数据处理服务

DANA平台提供丰富和强大的数据处理服务引擎,包括如下引擎:

Eagles实时搜索与分析引擎:实现海量实时在线快速搜索和准确分析服务。

Phoenix查询引擎:具有低延时、高性能的特点,轻松应对海量消息的发送和接收,服务于大数据领域中数据管道、日志服务、流处理数据中心等应用方案。

Eel流媒体引擎:支持RTMP、RTSP、HTIP、HLS等多种流媒体协议,轻松实现多媒体文件的直播、点播以及虚拟直播等功能。

Dodo调度引擎:采用流程自动调用组件的形式帮助处理分布式任务的调度、执行和监控。

Mustang实时流计算引擎:基于Spark Streaming实时流计算框架,满足所有对实时性要求高的流计算应用场景和系统需求。

Leopard 智能媒体数据处理引擎:针对海量文档、图片、音视频等数据进行有效快速处理。

各个行业的大数据处理平台包括但不限于:政务大数据融合平台、交通大数据融合平台、出入境大数据融合平台等。

课后作业

一、名词解释

1.什么是大数据?

维基百科定义:大数据是指无法使用传统和常用的软件技术和工具在一定时间内完成获取、管理和处理的数据。

麦肯锡咨询公司定义:大数据是指大小超出了常规数据库软件的采集、存储、管理和分析能力的数据集。

2.什么是数据采集?

数据采集又称数据获取,是指从传感器和其他待测设备等模拟和数字被测单元中自动采集信息的过程。

3.什么是大数据采集?

大数据采集技术就是对数据进行ETL操作,通过对数据进行提取、转换、加载,挖掘出数据的潜在价值,为用户提供解决方案或决策参考。

二、简答题

1.简述大数据的基本特征。

容量大(Volume)、种类多(Variety)、速度快(Velocity)、真实性(Veracity)、价值密度低(Value)。

2.简述大数据的处理流程。

大数据处理流程主要包括数据采集、数据存储、数据预处理、数据计算、数据统计分析、数据挖掘、数据展示等环节。

3.数据采集与大数据采集的区别是什么?

传统数据采集 大数据采集 来源单一,数据量相当小 来源广泛,数量巨大 结构单一 数据类型丰富 关系数据库和并行数据库 分布式数据库

传统数据采集:来源单一,数据量相当小;结构单一;关系数据库和并行数据库存储。

大数据采集:来源广泛,数量巨大;数据类型丰富;分布式数据库存储。

4.什么是大数据采集技术?它包括哪些方法?

大数据采集技术就是对数据进行ETL操作,通过对数据进行提取、转换、加载,挖掘出数据的潜在价值,为用户提供解决方案或决策参考。

它包含的方法有:离线采集、实时采集、互联网采集和其他采集方法。

5.简述大数据采集技术的主要应用。

1、DANA智能大数据处理平台
2、政务大数据融合平台
3、交通大数据融合平台
4、出入境大数据融合平台

常用工具

日志采集工具:Flume、Kafka
关系数据库:MySQL、Oracle、Postgres
NoSQL:Redis、MongoDB
数据预处理:Sqoop、Flume
数据统计分析:Hadoop
数据挖掘:Hadoop的Mahout
日志采集系统:Flume(Apache Flume)、Scribe
网页爬虫系统、框架:Apache Nutch、Crawler4j、Scrapy
大数据采集分析技术:Hive
数据转换:Sqoop(Apache Sqoop)
HDFS(Hadoop Distributed File System):Hadoop分布式文件系统
MapReduce:一个分布式运算程序的编程框架
HQL(Hive Query Language):Hive的SQL语言

PS:仅供参考,因个人能力有限,如有错误,请不吝赐教~

更新时间 2023-11-08