大数据入门

大数据入门

在这里插入图片描述

如上图说示,大数据处理的主要流程包括数据收集,数据存储,数据处理

1.大数据处理的主要流程:

1.1 数据收集:

大数据处理的第一步往往是对数据的采集,中小型项目通常采用微服务架构进行分布式部署,因此需要在多台服务器上同时进行,日志收集工具就显得尤为重要,它们能够通过简单的配置实现复杂的数据收集和数据聚合的业务需求,这里主要以Flume为例。

1.2 数据存储:

说到数据的存储,首先想到的是MySQL,Oracle等传统的关系型数据库,它们可以快速存储结构化的数据且支持随时访问,但是由于大数据的数据结构大部分是有半结构数据(如日志数据)和非结构化数据(如音频、视频等),为了存储这些数据
分布式文件系统完美地解决了海量数据存储的问题,

1.3 数据处理;

数据分析通常分为两种:批处理和流处理。
批处理:对一段时间内海量的离线数据进行统一的处理,对应的处理框架有 Hadoop
MapReduce、Spark、Flink 等;
批处理和流处理各有其适用的场景,时间不敏感或者硬件资源有限,可以采用批处理;时间敏感和及时性要求高就可以采用流处理。随着服务器硬件的价格越来越低和大家对及时性的要求越来越高,流处理越来越普遍,如股票价格预测和电商运营数据分析等。
流处理:对运动中的数据进行处理,即在接收数据的同时就对其进行处理,对应的处理框架有Storm、Spark Streaming、Flink Streaming 等。

1.4 数据应用:

数据的应用完全取决于实际的业务需求,如短视频的个性化推荐,电商以及头条的推荐等等。

1.5 处理流程常用的技术框架

1.5.1 集群管理工具
目前的数据操作需求,单机模式已经无法再满足,所以大数据框架都是采用集群模式进行部署,为了更方便的进行集群的部署,监控和管理,衍生了Ambari、Cloudera Manager 等集群管理工具。
1.5.2 分布式协调服务
为了保证集群的高可用性,,ZooKeeper 是最常用的分布式协调服务,它能够解决大多数集群问题,包括首领选举、失败恢复、元数据存储及其一致性保证。同时针对集群资源管理的需求,又衍生了 Hadoop YARN 。
1.5.3 工作流调度框架
Azkaban 和 Oozie 等工作流调度框架可以实现调度多个复杂的并且彼此之间存在依赖关系的作业的大数据处理需求。
1.5.4 流处理框架
Kafka可以用于消峰,避免在秒杀等场景下并发数据对流处理程序造成冲击。
1.5.5 数据迁移框架
Sqoop主要是解决了数据迁移的问题,它能够通过简单的命令将关系型数据库中的数据导入到 HDFS 、Hive 或 HBase 中,或者从 HDFS 、Hive 导出到关系型数据库上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值