大数据学习常用组件及作用

Posted 星空逐梦路人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据学习常用组件及作用相关的知识,希望对你有一定的参考价值。

大数据学习常用组件及作用

前言:网上找了大数据学习相关的资料用作学习和复习使用,基本上没有全面的复习资料,特此自己基于理解,浅显的罗列大数据相关组件作用及使用方法(含实时和离线数据采集),用作复习使用;点赞过百,更新各组件详细讲解及使用方式,不足之处还望指正,共同进步。

Linux

简称

​ 操作系统

作用

程序执行的环境

重点知识点

​ 文件/应用的增删改查&免秘钥登录&shell编程

实现方式

nginx

简称

​ 负载均衡&反向代理服务器

作用

​ 构建服务器集群,解决单节点服务器过载问题

重点知识点

​ 基本概念&Nginx使用&负载策略

实现方式

​ nginx.conf中server内定义监听的端口和域名,upstream定义拦截后分发的服务器集群

zookeeper

简称

​ 分布式协调服务

作用

基于分布式数据一致性和监听、存储机制,常用与节点监控/选举/元数据保存

重点知识点

​ 基本概念&存储模型&监听机制

实现方式

一主多从,主节点数据写入,从节点数据读取;基于Paxos,从节点接收的事务信息,将转发至主节点操作

Hadoop-HDFS

简称

​ 分布式文件管理系统

作用

​ 文件分块存储并具有备份恢复机制

重点知识点

​ 架构中节点功能与 作用&数据写入流程

实现方式

集群启动后,web界面(NN可视化界面)提供数据传输接口,传输完成。数据存储在DN中并产生多个备份,可多节点同时计算;也可在命令页面使用指令上传文件

Hadoop-MapReduce

简称

​ 分布式离线计算框架

作用

​ 基于HDFS基础上对文件进行计算处理

重点知识点

​ MR计算流程&计算节点 作用&集成JAVAapi

实现方式

JAVA调用MR程序对HDFS数据块进行并行计算,定义Map&Reduce的实现类编写计算代码,启动类定义启动配置,结果可输出至HDFS中;

Hive

简称

​ 数仓工具

作用

​ 将SQL转换为MR的任务进行运算,使用HDFS数据源,类似MR的封装客户端

重点知识点

​ 架构概念&数据库基本操作&分区/分桶表&抽样方式&Hive函数与优化&数据倾斜

实现方式

创建文本的表结构映射并加载数据,数据存储在HDFS中;登录hive客户端直接查询SQL即可,默认调用MR进行计算,得出结果

Hbase

简称

​ 列式存储的非关系型分布式数据库

作用

​ 数据源存放在HDFS中,基于索引实现海量数据快速查询,一般用于日志或订单查询,

重点知识点

​ Hbase数据/架构模型&数据库操作&数据读写流程&MemStore数据刷写&StoreFile数据合并&Region数据切分&Hbase优化&Hive和Hbase的整合

实现方式

使用Hbase
shell和JAVA进行访问,操作模式类似SQL

Flume

简称

​ 海量日志收集系统

作用

​ 常用实时计算的日志收集,并指定存储模式

重点知识点

​ 核心组件 作用和使用

实现方式

配置.conf文件,每台机器有一个Agent单元,包含source(定义监听端口/文件/控制台实时信息)、Channel(数据缓冲区)、Sink(接收数据后,设置传递模式),一个Agent包含一或多个Source和sink;使用命令即可启动

Ganglia

简称

​ 进程监控工具

作用

监控每个节点资源,用来监控系统性能比如CPU、mem、硬盘使用率,IO负载,网络流量等

重点知识点

​ 学会使用即可

实现方式

Gmond安装在每个节点中,监控资源;Gmetad负责汇总Gmond发过来的资源信息;Ganglia-web将汇总后的信息展示在前台

Sqoop

简称

​ HDFS-数据库传输框架

作用

可以将数据库中的数据导入到HDFS/HIVE/HBASE中,也可以将HDFS/HIVE/HBASE数据导出到数据库中

重点知识点

​ 学会使用即可

实现方式

基于MR中的map进行作业,命令页面直接输入指令即可启动程序

DataX

简称

​ 数据传输框架

作用

​ 可以实现任意数据源类型的数据同步工作(sqoop升级版)

重点知识点

​ 学会使用即可

实现方式

配置josn文件,定义导入导出信息,调用python
启动json即可(提供web页面)

Azkaban

简称

​ 任务调度工具

作用

​ 与定时任务不同,可以对任务进行时间控制和顺序控制

重点知识点

​ 学会使用即可

实现方式

启动集群,开启控制节点和前端页面,登录后将job上传即可使用

Redis

简称

​ 非关系型分布式数据库

作用

实现数据的KV存储,常用于做缓存

重点知识点

​ 缓存面试题&SQL&持久化机制&哨兵机制&全量/增量同步&一致性hash与数据切片

实现方式

启动集群后,通过客户端访问主节点即可操作,从节点只提供查询

ElasticSearch

简称

​ 分布式多文件搜索引擎

作用

​ 提供海量文档快速检索的功能,使用倒排索引

重点知识点

​ 了解即可

实现方式

自定义搜索固定词,可以实现秒查询

Kafka

简称

​ 消息中间件

作用

​ 提供数据临时缓存的功能,解耦削峰;常用于生产者消费者模式

重点知识点

​ 系统架构&数据存储流程&生产者消费者数据安全

实现方式

通过生产者指令接听端口发送的信息,通过消费者指令接收端口的信息,有WEB界面

Storm

简称

​ 分布式实时处理框架,实时版Hadoop

作用

​ 实现实时监控数据更新,实时计算,逐条计算

重点知识点

​ 物理/计算架构&数据分发策略&消息完整性&通信机制

实现方式

JAVAAPI调用,定义bolt/spout实现类定义数据源和计算逻辑,定义启动类进行启动配置

ClickHouse

简称

​ 列式存储的数据库管理系统,也是数据库

作用

允许实时写入实时分析,但不支持完整事务

重点知识点

​ 系统架构&数据库SQL&MergrTree引擎&MergrTreeFamily&表引擎&数据查询方式

实现方式

支持可视化工具,建表时标注引擎,基本语句与SQL一致,列式查询

Scala

简称

​ 基于JAVA开发的语言

作用

​ 可以优化Spark代码,使用起来比较方便

重点知识点

 基础语法&Scala函数&集合&偏函数&隐式转换&actor model

实现方式

安装后即可编写语言

SparkCore

简称

​ Spark核心

作用

​ 计算离线数据,速度远超MR

重点知识点

​ 系统架构&分区&RDD&算子&任务提交流程&宽窄依赖&资源调度&广播变量与累加器

实现方式

编辑JAVA代码,连接数据源进行计算

SparkSQL

简称

​ SparkCore的封装,SQL操作Spark

作用

​ 计算离线数据,RDD结果集可以使用SQL处理

重点知识点

发展历史&Dateset与DateFrame&常用的聚合函数

实现方式

定义DateSet数据映射,将RDD计算内存的结果映射到表中,使用SQL进行查询

SparkStreaming

简称

​ 流式处理框架

作用

实时接收数据,批处理数据,偏于实时1

重点知识点

​ 概念&与MR的区别&数据反压机制&事务机制

实现方式

每个时间间隔接收一批数据,生成Dstream流,使用RDD方法进行计算

Kylin

简称

​ 分布式预处理框架

作用

将需要查询的聚合结果按照维度提前查询好,便于缩短查询时间

重点知识点

​ 数仓回顾&Kylin简介&图形化界面使用&计算流程&Kylin访问方式&Cube的增量与优化

实现方式

基于WEB界面操作,提前查询完数据

以上是关于大数据学习常用组件及作用的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop 大数据平台常用组件端口号汇总

vuex - 常用命令学习及用法整理

大数据常用算法及应用讲座

大数据主题分享第五期|ElasticSearch简介常用命令及插件介绍

常用的大数据采集工具

常用的大数据采集工具