大数据概述及其生态圈(三)数据采集

本节主要讲解大数据技术中的数据采集技术。数据采集,顾名思义,就是从各种系统每天产生并存放在各类数据库,文件系统的数据,或者服务器每天产生各种日志文件,又或者是各种图像、音频、视频文件等,把相应的数据采集、汇总、入库。

大数据技术分类大数据技术与工具
数据采集数据总线
ETL工具(flume、kafka、sqoop)

数据总线

这里的数据总线并不是指物理上的概念。它指的是数据的汇集和整合,并以统一的接口提供数据服务。

它涉及的概念很多(ESB,SOA等),还是一个简单的例子来解释。假设有一个公司,有好几个存放简历的系统,分别是存放在mysql和hadoop的hdfs中。分别从两个数据库(文件系统)中取出的简历信息格式是不同的,简历的完善度也不相同。现在,我们要就公司的简历资源另外做一个应用,或者对外提供简历查询的服务。显然,单独使用两个系统中的简历不够全面,同时使用的话,格式又不一样,不好整合。那么,我们就需要开发一个系统,他能帮我们汇集和整合这些简历资源,并提供统一的接口,得到的简历格式也是规定好的。这就是数据服务总线。维护这个数据服务总线也好处多多,对于下层数据,我们增加一个简历的数据源,不会对上层的服务有影响;对于上层应用,由于提供的接口统一,我们可以根据不同的业务需求,开发更多的应用服务。

ETL工具

ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库。

下面会简单介绍几个ETL相关的工具。同样以最简单直接的方式给大家留下一个印象,具体技术细节和使用,还是得自己查询相关资料。

刚接触大数据的同学,可能开始都会很疑惑:各种各样的工具好多啊,而且工具之间的功能还有重叠。其实,这个也很容易理解,厨房的工具还很多呢,他们的功能也都是重叠的。比如你可以也用汤勺盛饭,但那显然不合适。所以说,虽然功能重叠,但是也有合适和不合适之分。所以,我们要做的就是了解每个工具的特性,在合适应用场景中选择使用正确的合适的工具。

Flume

Flume是一个日志收集系统。主要用来做日志采集工作。它的工作原理有点类似于一节一节的水管。每一节水管(Agent)的结构如下:

Soure定义进口,进口可以是日志目录或某个日志文件也可以是另一节水管的出口;Sink定义出口,出口可以是某个文件系统(比如:HDFS)也是可以是另一节水管进口;Channel就是水管体,里面可以储水,也就是数据。你要做的就是配置好相关的参数,定义好源头(数据源)和储水池(文件系统),把一节节水管连接起来,保证水的源头产生水源(日志文件或目录产生变更),经过管道(Agent),流进储水池(HDFS)即可。

Kafka

Kafka是一种高吞吐量的分布式发布订阅消息系统。它的工作原理类似于微博的订阅。原理图如下:

这里我们只需要关注三个概念:Producer,Topic,和Consumer。Producer(生产者)相当于微博中的博主,他们是生产内容(消息)的,Topic(话题)就相当于微博中的某个话题,Consumer(消费者)自然就相当于我们用户。工作流程就是,我们(Consumer)订阅某个话题(Topic),如果有博主(Producer)发布了对应话题的内容,就为我们保存起来。我们(Consumer)空闲的时候,就去查看相应的内容(处理消费相应的数据内容)。这样做主要是为了解决生产者产生内容的速度和消费者处理数据的速度不同步的问题。

Sqoop

Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql…)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。

说白了就是一个在关系型数据库和Hadoop数据仓库之间进行数据导入导出的工具。这里就不多做解释了。

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值