我的编程空间,编程开发者的网络收藏夹
学习永远不晚

剖析数据的数据采集

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

剖析数据的数据采集

  编程学习网教育平台提醒各位:本篇文章纯干货~因此大家一定要认真阅读本篇文章哦!

  我在一次社区活动中做过一次分享,演讲题目为《大数据平台架构技术选型与场景运用》。在演讲中,我主要分析了大数据平台架构的生态环境,并主要以数据源、数据采集、数据存储与数据处理四个方面展开分析与讲解,并结合具体的技术选型与需求场景,给出了我个人对大数据平台的理解。本文讲解数据采集部分。

  数据采集的设计,几乎完全取决于数据源的特性,毕竟数据源是整个大数据平台蓄水的上游,数据采集不过是获取水源的管道罢了。

  在数据仓库的语境下,ETL基本上就是数据采集的代表,包括数据的提取(Extract)、转换(Transform)和加载(Load)。在转换的过程中,需要针对具体的业务场景对数据进行治理,例如进行非法数据监测与过滤、格式转换与数据规范化、数据替换、保证数据完整性等。

  但是在大数据平台下,由于数据源具有更复杂的多样性,数据采集的形式也变得更加复杂而多样,当然,业务场景也可能变得迥然不同。下图展现了大数据平台比较典型的数据采集架构:

  以下是几种比较典型的业务场景。

剖析数据的数据采集_大数据_it_虚拟化_编程学习网教育

  场景1:为了提升业务处理的性能,同时又希望保留历史数据以备数据挖掘与分析。

  业务处理场景访问的数据库往往是RDB,可伸缩性较差,又需要满足查询与其他数据操作的实时性,这就需要定期将超过时间期限的历史数据执行清除。但是在大数据场景下,这些看似无用的历史数据又可能是能够炼成黄金的沙砾。因而需要实时将RDB的数据同步到HDFS中,让HDFS成为备份了完整数据的冗余存储。在这种场景下,数据采集就仅仅是一个简单的同步,无需执行转换。

  场景2:数据源已经写入Kafka,需要实时采集数据

  在考虑流处理的业务场景,数据采集会成为Kafka的消费者,就像一个水坝一般将上游源源不断的数据拦截住,然后根据业务场景做对应的处理(例如去重、去噪、中间计算等),之后再写入到对应的数据存储中。这个过程类似传统的ETL,但它是流式的处理方式,而非定时的批处理Job。

  场景3:数据源为视频文件,需提取特征数据

  在当今的数字革命浪潮中,大数据成为公司企业分析客户行为和提供个性化定制服务的有力工具,大数据切切实实地帮助这些公司进行交叉销售,提高客户体验,并带来更多的利润。

  随着大数据市场的稳步发展,越来越多的公司开始部署大数据驱动战略。

  Apache Hadoop是目前最成熟的大数据分析工具,但是市场上也不乏其他优秀的大数据工具。目前市场上有数千种工具能够帮你节约时间和成本,带你从全新的角度洞察你所在的行业。

  以下介绍18种功能实用的大数据工具:

  Avro:由Doug Cutting公司研发,可用于编码Hadoop文件模式的数据序列化。

  Cassandra:一种分布式的开源数据库。可用于处理商品服务器在提供高可用性服务时产生的大量分布式数据。这是一种非关系型数据库(NoSQL)解决方案,最初由Facebook主导研发。

  目前很多公司组织都在使用这一数据库,如Netflix,Cisco,Twitter。

  Drill:一种开源分布式系统,用于大规模数据集的交互分析。Drill与谷歌的Dremel系统类似,由Apache公司管理运行。

  Elasticsearch:Apache Lucene开发的开源搜索引擎。Elasticsearch是基于java的系统,可以实现高速搜索,支持你的数据搜索工作。

  Flume:使用网络服务器、应用服务器和移动服务器的数据来填充Hadoop的大数据应用框架,是数据源和Hadoop之间的一种连接纽带。

  HCatalog:是针对Apache Hadoop的集中元数据管理和分享服务。可以通过它集中查看Hadoop集群中的所有数据,并可以在不知道数据在集群中存储位置的情况下,通过Pig和 Hive等多种工具处理所有数据元素。

  Impala: 使用与Apache Hive相同的元数据,SQL语法(Hive SQL),ODBC驱动程序和用户界面(HueBeeswax),直接帮助您对存储在HDFS或HBase中的Apache Hadoop数据进行快速的交互式SQL查询。

  它为批量导向或实时查询提供了一个方便操作的统一平台。

它为批量导向或实时查询提供了一个方便操作的统一平台。

  JSON:今天的许多非关系型数据库(NoSQL)都以JSON(JavaScript对象符号)格式存储数据,这些格式在Web开发人员中很受欢迎。

  Kafka:这是种分布式“发布——订阅”的消息传送系统,它能够提供一种解决方案,帮助处理所有数据流活动,并在消费者网站上处理这些数据。

  这种类型的数据(包括页面查看数据,搜索数据和其他用户操作数据)是当前社交网络的关键组成部分。

  MongoDB:是一个在开源概念指导下开发出来的面向文档的非关系型数据库(NoSQL)。它具有完整的索引支持,同时可以灵活地对任何属性进行索引,并在不影响功能的情况下进行横向扩容。

  Neo4j:是一个图形数据库,与关系数据库相比,性能提升高达1000多倍或更高。

  Oozie:一种工作流程处理系统,可以让用户自定义不同语言编写的一系列工作,如Map Reduce,Pig 和 Hive。它还可以实现不同工作项目之间的智能连接,Oozie还支持用户指定依赖关系。

  Pig:是由雅虎开发的基于Hadoop的一种语言,对于用户来说,学习起来相对简单,且Pig擅长处理非常深入且非常长的数据管道(data pipeline)。

  Storm:是一种免费的进行实时分布式计算的开源系统。通过Storm,用户可以非常轻松的在能够进行实时处理操作的范围内,对非结构化数据流进行可靠处理。

  系统具有容错特性,支持几乎所有编程语言,当然最常用的语言还是Java。Storm最初是Apache家族的一个分支,现在已被Twitter收购。

  Tableau:是一种主要关注商业智能的数据可视化工具。用户无需编程,就可以利用Tableau创建地图,条形图,散点图等可视化图像。

  他们最近发布了一个Web连接器,允许用户直接连接数据库或应用程序界面(API),从而使用户能够在进行可视化项目时获取实时数据。

  针对视频文件的大数据处理,需要在Extract阶段加载图片后,然后根据某种识别算法,识别并提取图片的特征信息,并将其转换为业务场景需要的数据模型。在这个场景下,数据提取的耗时相对较长,也需要较多的内存资源。如果处理不当,可能会成为整个数据阶段的瓶颈。

  在数据采集阶段,一个棘手问题是增量同步,尤其针对那种可变(即可删除、可修改)的数据源。在我们无法掌控数据源的情况下,通常我们会有三种选择:

  放弃同步,采用直连形式;

放弃同步,采用直连形式;

  放弃增量同步,选用全量同步;

  编写定期Job,扫描数据源以获得delta数据,然后针对delta数据进行增量同步

  坦白说,这三种选择皆非最佳选择,但我也未尝发现有更好的方案。如果数据源端可以控制,我们当然也可以侦听数据源的变更,然后执行Job来更新采集后存储的数据。这些又可能牵涉到数据存储的选型,假设我们选择了Parquet格式作为数据存储,则Parquet是不允许变更的。若要应对这种场景,或许应该考虑ORC格式。

  为了更高效地完成数据采集,通常我们需要将整个流程切分成多个阶段,在细分的阶段中可以采用并行执行的方式。在这个过程中,可能牵涉到Job的创建、提交与分发,采集流程的规划,数据格式的转换等。除此之外,在保证数据采集的高性能之外,还要考虑数据丢失的容错。

  如果大家还想了解更多方面的详细内容的话呢,不妨关注编程学习网教育平台,在这里你肯定会有意想不到的收获的!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

剖析数据的数据采集

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

剖析数据的数据采集

如果大家还想了解更多方面的详细内容的话呢,不妨关注编程学习网教育平台,在这里你肯定会有意想不到的收获的!
剖析数据的数据采集
2024-04-23

数据采集 - Marvin

链接:https://bdcc.bigdataedu.org/block/48(需账号登录)
数据采集 - Marvin
2016-08-03

数据采集实战(三)-

1. 概述王者荣耀是一直都挺喜欢的一个手游,玩了好几年,最近一段开始喜欢看比赛,所以想着采集点数据看看各个战队或者选手的情况。顺便也练习练习 puppeteer 的使用。数据来源于:尚牛电竞 。2. 采集流程王者荣耀最近正在进行的最大比赛就是 2021世冠杯,
数据采集实战(三)-
2020-07-29

数据采集实战(一)-

概述最近在学习python的各种数据分析库,为了尝试各种库中各种分析算法的效果,陆陆续续爬取了一些真实的数据来。顺便也练习练习爬虫,踩了不少坑,后续将采集的经验逐步分享出来,希望能给后来者一些参考,也希望能够得到先驱者的指点!采集工具其实基本没用过什么现成的采
数据采集实战(一)-
2017-02-11

亚马逊数据采集

爬虫技术:通过网页抓取、HTTP请求、DNS解析等技术手段来获取网站数据。用户行为数据:通过用户访问网站的行为记录来获取用户信息,包括访问时间、访问页面、跳出率、购买记录等。第三方API接口:通过第三方API接口,可以获取网站的用户信息、商品信息、评论信息等,也可以将这些数据进行处理和分析。社交媒体数据:通过社交媒体平台的用户数据,包括用户账号、兴趣爱好、行为轨迹等,来了解用户的兴趣、需求等。实时...
2023-10-27

数据采集实战(五)-

1. 概述现在学校越来越重视孩子课外知识的掌握,给孩子挑选课外书一般都是参考学校或者家长之间的推荐。有时,也会想看看在儿童阶段,目前到底流行的是些什么样的书。​于是,就简单写了这个小爬虫,采集了畅销童书的前20名。要想采集更多的畅销童书,后者采集其他类型的畅销
数据采集实战(五)-
2015-05-29

数据库数据采集的方法有哪些

这篇“数据库数据采集的方法有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“数据库数据采集的方法有哪些”文章吧。
2023-03-13

数据采集实战(二)-

1. 概述京粉(https://union.jd.com/)是京东联盟下的网站,通过分享其中的商品链接可以赚取佣金,类似淘客联盟。采集京粉的商品,既可以练习 puppeteer的使用,平时想在京东购物时,也能用得上(采集看看有类似商品的价格和评价)。2. 主要
数据采集实战(二)-
2015-01-09

数据采集实战(四)-

1. 概述前段时间在看一本很多人推荐的线性代数教材《线性代数应该这样学》第三版,这一版每个章节都有大量的习题。官方网站上虽然按照章节提供了习题的答案,一来因为网站是国外的,访问不流畅,二来答案中还夹杂着广告,影响查看。所以,想试着将答案爬取下来制作成pdf,查
数据采集实战(四)-
2019-04-29

采集数据的方法有哪些

采集数据的方法有哪些?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1、埋点采集首先就是端上数据,即一个服务的客户端或者服务器端产生的数据,例如我们的用户点了哪些
2023-06-14

用Python解剖数据:深入数据分析

Python是数据分析领域的强大工具,可帮助您探索、可视化和揭示数据中的见解。本文深入探讨了使用Python进行数据分析的各种技术和技巧。
用Python解剖数据:深入数据分析
2024-02-17

数据采集的来源有哪些

这篇文章将为大家详细讲解有关数据采集的来源有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、交易数据。包括POS数据、信用卡卡数据、电子商务数据、互联网点击数据、企业资源规划系统数据、
2023-06-14

第02期:Prometheus 数据采集(一)

上篇文章(第01期:详解 Prometheus 专栏开篇)介绍了 Prometheus 的架构,本文开始将介绍 Prometheus 数据采集。本文首先会介绍采集数据的格式和分类,然后会给出一些使用上的建议。一、采集数据格式及分类1.1 采集数据的格式x`Pr
第02期:Prometheus 数据采集(一)
2022-04-30

Python如何采集基金数据

Python如何采集基金数据,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。案例实现流程思路分析:需要什么数据?需要的数据在哪里?代码实现:发送请求获取数据解析数据多页爬取保
2023-06-22

编程热搜

  • Mysql分表查询海量数据和解决方案
    众所周知数据库的管理往往离不开各种的数据优化,而要想进行优化通常我们都是通过参数来完成优化的。那么到底这些参数有哪些呢?为此在本篇文章中编程学习网笔者就为大家简单介绍MySQL,以供大家参考参考,希望能帮助到大家。以上就是关于大数据的知识点了。喜欢的可以分享给你的朋友,也可以点赞噢~更多内容,就在编程学习网!
    Mysql分表查询海量数据和解决方案
  • 大数据的妙用及17年趋势
    2017年,支持大量结构化和非结构化数据的系统将继续增长。市场需要数据平台来帮助数据管理人员管理和保护大数据,同时允许最终用户进行数据分析。这些系统将逐步成熟,在企业内部的IT系统中更好地运行。所以,我们更要了解大数据!互联网普及使得网民的行为更加多元化,通过互联网产生的数据发展更加迅猛,更具代表性。互联网世界中的商品信息、社交媒体中的图片、文本信息以及视频网站的视频信息,互联网世界中的人与人交互信息、位置信息等,都已经成为大数据的最重要也是增长最快的来源。大家都了解到了吗!更多内容就在编程学习网哟
    大数据的妙用及17年趋势
  • 5G大数据时代空降来袭
    欢迎各位阅读本篇文章,本文主要讲了5G大数据时代。如今 5G 概念已不再陌生,按照行业认同的说法:2017年至2018年 5G 将在国内开始有序测试,2019年进行预商用。工信部之前已表示,中国将在2020年启动 5G 商用。编程学习网教育平台提醒各位:本篇文章纯干货~因此大家一定要认真阅读本篇文章哦!
    5G大数据时代空降来袭
  • es详解-原理-从图解构筑对es原理的初步认知
    在学习ElasticSearch原理时,我推荐你先通过官方博客中的一篇图解文章(虽然是基于2.x版本)来构筑对ES的初步认知(这种认识是体系上的快速认知)。ES详解 - 原理:从图解构筑对ES原理的初步认知前言图解ElasticSearch图解LuceneSegmentInverted IndexStored Fiel
    es详解-原理-从图解构筑对es原理的初步认知
  • elasticsearch-wrapperquery
    在工作中遇到ElasticSearch版本升级时出现Java High Level接口变更导致的兼容性问题: 之前使用的是2.4.x,考虑性能和功能的增强,需要更换为6.4.x; 2.4.x中我们使用DSL语句直接查询(数据的不确定性和方便动态建立查询规则等因素),而新的ES Java 高阶API中去掉了相关接口的支持
    elasticsearch-wrapperquery
  • 学习大数据营销思维(下)
    编程学习网: 其实,通过上面的介绍,我们知道苹果通过各类产品与服务销售相互促进以理及薄利多销的方式来盈利第二种战略联盟类型是合作方的共同赢利。苹果公司打造了一个参与方共同受益的业务系统。
    学习大数据营销思维(下)
  • 纯干货:HLS 协议详解及优化技术全面解析
    编程学习网:HLS (HTTP Live Streaming), 是由 Apple 公司实现的基于 HTTP 的媒体流传输协议。他跟 DASH 协议的原理非常类似,通过将整条流切割成一个小的可以通过 HTTP 下载的媒体文件,然后提供一个配套的媒体列表文件给客户端,让客户端顺序地拉取这些媒体文件播放, 来实现看上去是在播放一条流的效果。HLS 目前广泛地应用于点播和直播领域。
    纯干货:HLS 协议详解及优化技术全面解析
  • 关于Python 代码全面分析
    欢迎各位阅读本篇,Python(KK 英语发音:/ˈpaɪθən/)是一种面向对象、直译式计算机程序设计语言。本篇文章讲述了关于Python 代码全面分析。
    关于Python 代码全面分析
  • es详解-原理-es原理之索引文档流程详解
    ElasticSearch中最重要原理是文档的索引和文档的读取,本文带你理解ES文档的索引过程。ES详解 - 原理:ES原理之索引文档流程详解文档索引步骤顺序单个文档多个文档文档索引过程详解整体的索引流程分步骤看数据持久化过程深入ElasticSearch索引文档的实现机制写操作的关键点Lucene的写Elastics
    es详解-原理-es原理之索引文档流程详解
  • 五大“网管”必备的网络数据分析工具
    是不是在为如何分析统计网络数据和流量烦恼呢?想不想监控、运维、排障轻松一些?下面给大家提供一些免费网络分析工具,以帮助大家更好的掌控自己的网络!编程学习网教育
    五大“网管”必备的网络数据分析工具

目录