1.0数据采集与预处理概述

这篇具有很好参考价值的文章主要介绍了1.0数据采集与预处理概述。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

大数据的来源:
1.搜索引擎数据
2.电商交易数据
3.社交网络数据
4.物联网传感器数据
5.网站日志数据
数据采集的概念:
数据采集的ETL 工具负责将分布的、异构数据源中的不同种类,和结构的数据如文本数据、关系数据以及图片、视频等非结构化数据等抽取到临时中间层后进行 清洗、转换、分类、集成 ,最后加载
到对应的数据存储系统如 数据仓库 中,成为 联机分析处理 、数据挖掘的基础。
数据采集来源:
根据MapReduce 产生数据的应用系统分类,大数据的采集主要有四种来源:管理信息系统、web信息系统、物理信息系统、科学实验系统。
(1)管理信息系统
管理信息系统是指企业、机关内部的信息系统,如事务处理系统、办公自动化系统,主要用于经营和管理,为特定用户的工作和业务提供支持。数据的产生既有终端用户的始输人,也有系统的二次加工处理。系统的组织结构上是专用的,数据通常是结构化的。
(2) Web信息系统
web信息系统包括互联网上的各种信息系统,如社交网站、社会媒体、系统引擎等,主要用于构造虚拟的信息空间,为广大用户提供信息服务和社交服务。系统的组织结构是开放式的,大部分数据是半结构化或无结构的。数据的产生者主要是在线用户。
(3)物理信息系统
物理信息系统是指关于各种物理对象和物理过程的信息系统,如实时监控、实时检测,主要用于生产调度、过程控制、现场指挥、环境保护等。系统的组织结构上是封闭的,数据由各种嵌入式传感设备产生,可以是关于物理、化学、生物等性质和状态的基本测量值,也可以是关于行为和状态的音频、视频等多媒体数据。
(4)科学实验系统
科学实验系统实际上也属于物理信息系统,但其实验环境是 预先设定的,主要用于研究和学术,数据是有选择的、可控的, 有时可能是人工模拟生成的仿真数据。数据往往表现为具有不同形式的数据。
数据采集方法:
①系统日志采集方法
很多互联网企业都有自己的海量数据采集工具,多用于系统日志采集,如Hadoop的Chukwa、Cloudera 的 Flume 、 Facebook 的Scribe 等这些工具均采用分布式架构,能满足每秒数百MB 的日志数据采集和传输需求。
②网络数据采集方法
对非结构化数据的采集网络数据采集是指通过网络爬虫或网站公开API等方式从网站上获取数据信息,该方法可以将非结构化数据从网页中抽取出来,将其存储为统一的本地数据文件,并以结构化的方式存储。它支持图片、音频、视频等文件或附件的采集,附件与正文可以自动关联。 除了网络中包含的内容之外,对于网络流量的采集可以使用DPI或DFI等带宽管理技术进行处理。( urllib and beautifulsoup)
③其他数据采集方法
对于企业生产经营数据或学科研究数据等保密性要求较高的数据,可以通过与企业、研究机构合作或授权的方式,使用特定系统接口等相关方式采集数据。
Scrapy的常用命令
startproject                       创建一个新工程             scrapy startproject<name>[dir]
genspider                         创建一个爬虫                 scrapy genspider[options]<name><domain>
settings                           获得爬虫配置信息           scrapy  settings[options]
crawl                                运行一个爬虫                 scrapy   crawl<spider>
list                                    列出工程中所有的爬虫   scrapy   list  
shell                                 启动URL调试命令行      scrapy  shell [url]
flume系统日志环境的搭建
Flume是Cloudera提供的一个 高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统 ,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方 (可定制)的能力。
主要功能: 实时读取服务器本地磁盘的数据,将数据写入到HDFS上。
服务器本地磁盘的数据来源:Python爬虫数据和Java后台日志数据。
1.0数据采集与预处理概述
Flume的一些核心概念:
1.0数据采集与预处理概述

最简单的图一定要会画。

Ø Client:Client生产数据,运行在一个独立的线程。
Ø Event: 一个数据单元,消息头和消息体组成。 (Events可以是日志记录、 avro 对象等。)
Ø Flow: Event从源点到达目的点的迁移的抽象。
Ø Agent: 一个Flume进程包含Source,Channel,Sink( Agent使用JVM 运行Flume。 每台机器运行一个agent,但是可以在一个 agent中包含多个sources和sinks。
Ø Source: 数据收集组件。(source从Client收集数据,传递给Channel)
Ø Channel: 转Event的一个临时存储 ,保存由Source组件传递过来的 Event。(Channel连接 sources 和 sinks ,这个有点像一个队列。)
Ø Sink: 从Channel中读取并移除Event, 将Event传递到FlowPipeline中的下一个Agent (如果有的话)(Sink从Channel收集数据,运行在一个独立线程。)
Agent:
Flume的运行核心是以agent为最小的独立运行单位。 一个 agent 就是一 个JVM 。它是一个完整的数据收集工具,含有三个核心组件,分别是 source channel 、 sink。通过这些组件, Event 可以从一个地方流向另一个地方,如上图图所示。
Source
Source是数据的收集端,负责将数据捕获后进行特殊的格式化,将数据封装到事件(event) 里,然后将事件推入Channel中。 Flume提供了很多内置的Source, 支持 Avro, log4j, syslog 和 http post(body为json格式)。可以让应用程序同已有的Source直接打交道,如 AvroSource,SyslogTcpSource。 如果内置的Source无法满足需要, Flume还支持自定义Source。
1.0数据采集与预处理概述
Channel
Channel是连接Source和Sink的组件 ,可以将它看做 一个数据的缓冲区(数据队列) ,它可以 将事件暂存到内存中也可以持久化到本地磁盘上 , 直到Sink处理完该事件。介绍两个较为常用的Channel, MemoryChannel和FileChannel。
1.0数据采集与预处理概述
Sink
Sink从Channel中取出事件,然后将数据发到别处,可以向文件系统、数据库、hadoop存数据, 也可以是其他agent的Source。在日志数据较少时,可以将数据存储在文件系统中,并且设定一定的时间间隔保存数据。
1.0数据采集与预处理概述

两个重要的概念:

Flume拦截器和Flume数据流

1.Flume拦截器

当我们需要对数据进行过滤时,除了我们在Source、 Channel和Sink进行代码修改之外, Flume为我们提供了拦截器, 拦截器也是chain形式的 。 拦截器的位置 在Source和Channel之间 ,当我们为Source指定拦截器后, 我们在拦截器中会得到event,根据需求我们可以对event进行保留还是抛弃, 抛弃的数据不会进入Channel中。
1.0数据采集与预处理概述

2.Flume数据流

1)Flume 的核心是 把数据从数据源收集过来,再送到目的地 。为了保证输送一定成功,在送到目的地之前
,会 先缓存数据,待数据真正到达目的地后,删除自己缓存的数据
2) Flume 传输的数据的基本单位是 Event ,如果是文本文件,通常是一行记录,这也是 事务的基本单位。
Event 从 Source,流向 Channel,再到 Sink,本身为一个 byte 数组,并可携带 headers 信息。 Event 代 表着一个数据流的最小完整单元,从外部数据源来,向外部的目的地去

 1.0数据采集与预处理概述

3. Flume的可靠性文章来源地址https://www.toymoban.com/news/detail-432783.html

Sink 必须 Event 被存入 Channel ,或者, 已经被传达到下一站 agent里 ,又或者, 已经被存入外部数据目的地之后 ,才能把 Event 从 Channel 中 remove 掉。这样 数据流里的 event 无论是在一个 agent 里还 是多个 agent 之间流转,都能保证可靠,因为以上的事务保证了 event 会 被成功存储起来

到了这里,关于1.0数据采集与预处理概述的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【数据采集与预处理】数据传输工具Sqoop

    目录 一、Sqoop简介 二、Sqoop原理 三、Sqoop安装配置 (一)下载Sqoop安装包并解压 (二)修改配置文件 (三)拷贝JDBC驱动 (四)验证Sqoop (五)测试Sqoop是否能够成功连接数据库 四、导入数据 (一)RDBMS到HDFS (二)RDBMS到HBase (三)RDBMS到Hive 五、导出数据 HDFS/Hive到RDBMS 六、

    2024年01月21日
    浏览(55)
  • YOLOv5训练自己的数据集(含数据采集、数据标注、数据预处理、借助colab训练)

    YOLOv5 github:GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch ONNX CoreML TFLite 先从github下载源码到本地,用pycharm打开工程   本次采集数据采用的方式是录取视频,然后用python截取视频帧当做图片,这是处理代码:   可以使用labelimg工具、make sense(Make Sense)在线标注,注意数据集需要与

    2024年02月05日
    浏览(92)
  • yolov2检测网数据集获取与预处理_采集健康和非健康猫狗数据

    阿里云天池数据集-cat-dog 因为开源数据库中没有非健康猫狗相关的,所以需要自己下载非健康猫狗数据,并制作数据集。 下面是用于爬取非健康猫狗数据的爬虫代码: 使用图片去重/相似图片清理利器 软件清除重复的图片数据。 使用ffmpeg将救助视频文件按照一秒截取一张

    2024年02月14日
    浏览(85)
  • 基于爬虫和Kettle的书籍信息采集与预处理

    将读书网上的书籍的基本信息,比如:封面、书名、作者、出版社、价格、出版时间、内容简介、作者简介、书籍目录、ISBN和标签爬取出来,并将爬取的结果放入数据库中,方便存储。     图1读书网书籍类别详情 此次实验爬取读书网页面中文学、小说、传记、青春文学、

    2024年01月21日
    浏览(54)
  • 基于爬虫和Kettle的豆瓣电影的采集与预处理

    将豆瓣电影网上的电影的基本信息,比如:电影名称、导演、电影类型、国家、上映年份、评分、评论人数爬取出来,并将爬取的结果放入csv文件中,方便存储。     图1豆瓣网网站结构详情 此次实验爬取豆瓣网中电影页面中的电影的基本信息。 每一个电影包括电影名称、

    2024年02月02日
    浏览(49)
  • 数据预处理matlab matlab数据的获取、预处理、统计、可视化、降维

    1.1 从Excel中获取 使用readtable() 例1: 使用 spreadsheetImportOptions(Name,Value) 初步确定导入信息, 再用 opts.Name=Value 的格式添加。 例2: 先初始化 spreadsheetImportOptions 对象, 再用 opts.Name=Value 的格式逐个添加。 例3: 将导入信息存到变量里, 再使用 spreadsheetImportOptions(Name,Value)

    2024年02月15日
    浏览(56)
  • 数据分析--数据预处理

    本文主要是个人的学习笔记总结,数据预处理的基本思路和方法,包括一些方法的使用示例和参数解释,具体的数据预处理案例case详见其他文章。如有错误之处还请指正! 目录 数据的质量评定 数据处理步骤 缺失值的处理 标记缺失值 删除 缺失值 填充 缺失值 重复值处理 异

    2024年02月04日
    浏览(58)
  • 数据预处理之数据规约

    目录 一、前言 二、PCA的主要参数: 三、数据归约任务1 四、数据规约任务2 PCA(Principal Component Analysis),即主成分分析方法,是一种使用最广泛的数据降维算法。PCA的主要思想是将n维特征映射到k维上,这k维是全新的正交特征也被称为主成分,是在原有n维特征的基础上重新构

    2024年02月12日
    浏览(46)
  • 数据清洗和预处理

    预计更新 一、 爬虫技术概述 1.1 什么是爬虫技术 1.2 爬虫技术的应用领域 1.3 爬虫技术的工作原理 二、 网络协议和HTTP协议 2.1 网络协议概述 2.2 HTTP协议介绍 2.3 HTTP请求和响应 三、 Python基础 3.1 Python语言概述 3.2 Python的基本数据类型 3.3 Python的流程控制语句 3.4 Python的函数和模

    2024年02月07日
    浏览(53)
  • 十七、数据预处理(一)

    一、缺失值处理 缺失值就是由某些原因导致部分数据为空,对于为空的这部分数据我们一般有两种处理方式,一种是删除,即把含有缺失值的数据删除,另一种是填充,即把确实的那部分数据用某个值代替。 1、缺失值查看 对缺失值进行处理,首先要把缺失值找出来,也就是

    2024年02月11日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包