从 0 到 1 搭建大数据平台之数据采集系统

简介: 从 0 到 1 搭建大数据平台之数据采集系统
+关注继续查看

关于从 0 到 1 搭建大数据平台,之前的一篇博文《如何从0到1搭建大数据平台》已经给大家介绍过了,接下来我们会分步讲解搭建大数据平台的具体注意事项。

一、“大”数据


image


海量的数据

当你需要搭建大数据平台的时候一定是传统的关系型数据库无法满足业务的存储计算要求了,所以首先我们面临的是海量的数据。

复杂的数据

复杂数据的概念和理想数据完全相反。所有数据集都有一定的复杂性,但有一些天生更难处理。通常这些复杂数据集没有定义结构(没有行列结构),经常变化,数据质量很差。比如更新的网页日志,json 数据,xml 数据等。

高速的数据

高速数据通常被认为是实时的或是准实时的数据流。数据流本质上是在生成后就发给处理器的数据包,比如物联网的穿戴设备,制造业的传感器,车联网的终端芯片等等。处理实时数据流有很多挑战,包括在采集时不丢失数据、处理数据流中的重复记录、数据如何实时写入磁盘存储、以及如何进行实时分析。

二、采集工具

日志采集

我们业务平台每天都会有大量用户访问,会产生大量的访问日志数据,比如电商系统的浏览,加入购物车,下订单,付款等一系列流程我们都可以通过埋点获取到用户的访问路径以及访问时长这些数据;再比智能穿戴设备,实时都会采集我们的血压、脉搏、心率等数据实时上报到云端。通过分析这些日志信息,我们可以得到出很多业务价值。通过对这些日志信息进行日志采集、收集,然后进行数据分析,挖掘公司业务平台日志数据中的潜在价值。为公司决策和公司后台服务器平台性能评估提高可靠的数据保证。系统日志采集系统做的事情就是收集日志数据提供离线和在线的实时分析使用。目前常用的开源日志收集系统有 Flume、Logstash、Filebeat。可以根据自己公司的技术栈储备或者组件的优缺点选择合适的日志采集系统,目前了解到的 Flume 使用的比较多。各个采集工具的对别如下:


image


具体组价的相关配置可以参考之前的文章《日志收集组件—Flume、Logstash、Filebeat对比

数据库抽取


image


企业一般都会会使用传统的关系型数据库 MySQL 或 Oracle 等来存储业务系统数据。每时每刻产生的业务数据,以数据库一行记录的形式被直接写入到数据库中保存。

大数据分析一般是基于历史海量数据,多维度分析,我们不能直接在原始的业务数据库上直接操作,因为分析的一些复杂 SQL 查询会明显的影响业务数据库的效率,导致业务系统不可用。所以我们通常通过数据库采集系统直接与企业业务后台数据库服务器结合,在业务不那么繁忙的凌晨,抽取我们想要的数据到分析数据库或者到 HDFS 上,最后有大数据处理系统对这些数据进行清洗、组合进行数据分析。

常用数据库抽取工具:

  • 阿里开源软件:DataX

        DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle 等)、HDFS、Hive、ODPS、HBase、FTP 等各种异构数据源之间稳定高效的数据同步功能。开源的 DataX 貌似只能单机部署。

  • Apache 开源软件:Sqoop

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

爬虫爬取

有很多外部数据,比如天气、IP 地址等数据,我们通常会爬取相应的网站数据存储。目前常用的爬虫工具是 Scrapy,它是一个爬虫框架,提供给开发人员便利的爬虫 API 接口。开发人员只需要关心爬虫 API 接口的实现,不需要关心具体框架怎么爬取数据。Scrapy 框架大大降低了开发人员开发速率,开发人员可以很快的完成一个爬虫系统的开发。

三、数据存储


image


HDFS

2003 年,Google 发布论文 GFS,启发 Apache Nutch 开发了 HDFS。2004 年,Google 又发布了论文《MapReduce: Simplified Data Processing on Large Clusters》,Doug Cutting 等人实现计算框架 MapReduce ,并与 HDFS 结合来更好的支持该框架。2006 年项目从 Butch 搜索引擎中独立出来,成为了现在的 Hadoop。

GFS 隐藏了底层的负载均衡,切片备份等细节,使复杂性透明化,并提供统一的文件系统接口。其成本低,容错高,高吞吐,适合超大数据集应用场景。

HDFS 原理:

横向扩展,增加“数据节点”就能增加容量。

增加协调部门,“命名节点”维护元数据,负责文件系统的命名空间,控

外部访问,将数据块印射到数据节点。还会备份元数据从命名节点,它只与命名节点通信。

数据在多个数据节点备份。

通常关系型数据库存储的都是结构化的数据,我们抽取后会直接放到 HDFS 上作为离线分析的数据源。

HBase

在实际应用中,我们有很多数据可能不需要复杂的分析,只需要我们能存储,并且提供快速查询的功能。HBase 在 HDFS 基础上提供了 Bigtable 的能力; 并且基于列的模式进行存储。列存储设计的有事减少不必要的字段占用存储,同时查询的时候也可以只对查询的指定列有 IO 操作。HBase 可以存储海量的数据,并且可以根据 rowkey 提供快速的查询性能,是非常好的明细数据存储方案,比如电商的订单数据就可以放入 HBase 提供高效的查询。

当然还有其他的存储引擎,比如 ES 适合文本搜索查询等。

总结

了解了上面的技术栈后,在实际数据接入中,你还会面临各种问题,比如如何考虑确保数据一致性,保障数据不能丢失,数据采集存储的效率,不能产生数据积压等,这些都需要对每个组件进行研究,适配适合你自己业务系统的参数,用最少的资源,达到最好的结果。


相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
10天前
|
消息中间件 JSON 前端开发
大数据采集系统搭建
大数据采集系统搭建
12 0
|
1月前
|
Prometheus 运维 监控
直击运维痛点,大数据计算引擎 EasyMR 的监控告警设计优化之路
监控告警在企业保障系统的稳定性和事故快速恢复的全周期链路中都是至关重要的一环。在新版本的 EasyMR 中袋鼠云开发团队也对监控告警功能进行了全新的优化,通过本文和大家分享监控告警功能的设计思路以及碰到各类问题痛点的解决方法。
39 0
|
7月前
|
SQL 运维 资源调度
开源大数据可观测性方案实践 - 助力集群运维智能化、便捷化
在本篇文章中,我们将介绍大数据集群领域所需的可观测性,实践大数据集群可观测所需要的条件和面临的挑战,以及阿里云EMR 产品如何通过 EMR Doctor 实现大数据可观测并向用户提供相关能力。
16854 4
开源大数据可观测性方案实践 - 助力集群运维智能化、便捷化
|
分布式计算 DataWorks Cloud Native
六大能力,助力企业构建全托管的现代化数仓!阿里云云原生一体化数仓新能力解读训练营来袭!
简介: 离线实时一体、分析服务一体、湖仓一体、数据安全、数据建模、数据治理,六大热门主题,六位大数据专家,带你了解当前炙手可热的云数仓产品最新演进趋势。本期训练营带你走进阿里云云原生一体化数仓新能力!
|
SQL 分布式计算 算法
用户行为分析大数据平台之(一)项目介绍
用户行为分析大数据平台之(一)项目介绍
432 0
|
存储 SQL 自然语言处理
DataFunTalk:阿里建设一站式实时数仓的经验分享
本文内容整理于阿里资深技术专家姜伟华在DataFunTalk上的演讲,为大家介绍阿里巴巴基于一站式实时数仓Hologres建设实时数仓的经验和解决方案。
1452 5
DataFunTalk:阿里建设一站式实时数仓的经验分享
|
数据采集 存储 SQL
从0到1搭建大数据平台之数据采集篇
大数据平台基础理论之数据采集。
683 0
从0到1搭建大数据平台之数据采集篇
|
存储 运维 分布式计算
云原生离线实时一体化数仓建设与实践
本篇内容分享了云原生离线实时一体化数仓建设与实践。 分享人:刘一鸣 Hologres 产品经理
云原生离线实时一体化数仓建设与实践
|
SQL 消息中间件 分布式计算
流批一体生产应用!Bigo 实时计算平台建设实践
本文由 Bigo 计算平台负责人徐帅分享,主要介绍 Bigo 实时计算平台建设实践的介绍
流批一体生产应用!Bigo 实时计算平台建设实践
|
机器学习/深度学习 存储 数据采集
一站式超大规模计算系统GraphScope | 直播回顾
GraphScope是阿里结合海量数据、丰富场景与智能引擎高水平研究成果而研发的图计算引擎,有一站式、开发便捷、性能极致等特点,已被证明在多个关键互联网领域实现重要的业务新价值。阿里巴巴阿里巴巴资深技术专家于文渊在阿里云开发者社区特别栏目《周二开源日》直播中,带大家入门GraphScope。本文为直播内容文字整理,看直播回放,请点击文首链接~
一站式超大规模计算系统GraphScope | 直播回顾
推荐文章
更多