大数据学习框架及指南

2023-11-10

Hadoop生态圈
这里写图片描述
一 ,采集,数据从哪里来?主要包括flume等;

一 ,存储,海量的数据怎样有效的存储?主要包括hdfs、Kafka;

二,计算,海量的数据怎样快速计算?主要包括MapReduce、Spark、storm等;

三,查询,海量数据怎样快速查询?主要为Nosql和Olap,Nosql主要包括Hbase、 Cassandra 等,其中olap包括kylin、impla等,其中Nosql主要解决随机查询,Olap技术主要解决关联查询;

四,挖掘,海量数据怎样挖掘出隐藏的知识?也就是当前火热的机器学习和深度学习等技术,包括TensorFlow、mahout、spark等;

Apache Ambari是一种基于Web的工具,界面友好,支持Apache Hadoop集群的供应、管理和监控。Ambari已支持大多数Hadoop组件,包括HDFS、MapReduce、Hive、Pig、 Hbase、Zookeeper、Sqoop等,可用于生产环境。
这里写图片描述

学习路线:
这里写图片描述

1、Hadoop是一个能够对大量数据进行分布式处理的软件框架,他以一种可靠、高效、可伸缩的方式进行数据处理。具有高可靠性、高扩展性、高效性、高容错性、低成本的特点。
这里写图片描述
2、Hadoop hdfs–分布式文件系统
将文件分成多个block,分散存储到不同的节点上,并提供多副本,保证数据容错性能。

  • 主从结构

    • 主节点,可以有2个: namenode
    • 从节点,有很多个: datanode
  • namenode负责:管理整个集群。维护文件系统的目录结构

  • datanode负责:存储文件
    这里写图片描述
    3、Hadoop yarn–资源的调度和管理平台
    集中管理集群的整个计算资源,以container的形式进行资源分配。

  • 主从结构

    • 主节点,可以有2个: ResourceManager
    • 从节点,有很多个: NodeManager
  • ResourceManager负责:集群资源的分配与调度MapReduce、Spark等应用,必须实现
  • NodeManager负责:单节点资源的管理
    这里写图片描述
    4、Hadoop mapreduce
    由两个阶段组成:Map和Reduce,Map阶段每个节点处理自己节点的数据。
    Reduce阶段不同节点间进行数据交换,并进行聚合计算。
    这里写图片描述
    5、zookeeper
    这里写图片描述
    (1) ZooKeeper是什么?
    ZooKeeper是 Hadoop 的分布式协调服务,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

    (2) ZooKeeper提供了什么?

    • 文件系统:每个子目录项如 NameService 都被称作为znode,和文件系统一样,我们能够自由的增加、删除znode,在一个znode下增加、删除子znode,唯一的不同在于znode是可以存储数据的。
      有四种类型的znode:

      • PERSISTENT-持久化目录节点
        客户端与zookeeper断开连接后,该节点依旧存在

      • PERSISTENT_SEQUENTIAL-持久化顺序编号目录节点
        客户端与zookeeper断开连接后,该节点依旧存在,只是Zookeeper给该节点名称进行顺序编号

      • EPHEMERAL-临时目录节点
        客户端与zookeeper断开连接后,该节点被删除

      • EPHEMERAL_SEQUENTIAL-临时顺序编号目录节点
        客户端与zookeeper断开连接后,该节点被删除,只是Zookeeper给该节点名称进行顺序编号

    • 通知机制:客户端注册监听它关心的目录节点,当目录节点发生变化(数据改变、被删除、子目录节点增加删除)时,zookeeper会通知客户端。

(3) Zookeeper做了什么?

  • 命名服务
  • 配置管理
  • 集群管理
  • 分布式锁
  • 队列管理

6、hive
基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。

底层数据存储在哪? hdfs
元数据存储在哪? Mysql、derby等数据库
如何执行? Hive的解释器、编译器、优化器完成 HQL 语句从词法分析、语法分析、编译、优化,生成MapReduce 任务在hadoop上运行
用户接口主要有三个:CLI,JDBC/ODBC和 WebUI

  • CLI,即Shell命令行
  • JDBC/ODBC 是 Hive 的Java,与使用传统数据库JDBC的方式类似
  • WebGUI是通过浏览器访问 Hive

7、hbase
HBase是一个分布式的、面向列的开源数据库
高可靠性、高性能、面向列、可伸缩,底层数据存在hdfs中
处理非常庞大的表, 适合处理1亿条或者10亿条以及以上条记录或者有百万个列的数据库。
这里写图片描述
8、flume
Flume是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。
这里写图片描述
flume是分布式的日志收集系统,它将各个服务器中的数据收集起来并送到指定的地方去比如说送到图中的HDFS,简单来说flume就是收集日志的。同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。

  • flume的架构主要有一下几个核心概念:
    Event:一个数据单元,带有一个可选的消息头
    Flow:Event从源点到达目的点的迁移的抽象
    Client:操作位于源点处的Event,将其发送到Flume Agent
    Agent:一个独立的Flume进程,包含组件Source、Channel、Sink
    Source:用来消费传递到该组件的Event
    Channel:中转Event的一个临时存储,保存有Source组件传递过来的Event
    Sink:从Channel中读取并移除Event,将Event传递到Flow Pipeline中的下一个Agent(如果有的话)

  • flume 常用结构
    这里写图片描述
    这里写图片描述
    这里写图片描述
    9、Spark
    Apache Spark™ 是一个通用的快速的大数据处理引擎.

  • 速度快:
    号称基于内存的运算速度比mapreduce快100倍以上,
    基于磁盘的运算速度比mapreduce快10倍以上

  • 使用简单:
    可以使用scala,java,python,R

  • 通用性强:
    支持批处理spark core,流式处理spark streaming,spark sql, machine learning,GraphX

  • 随处运行
    Spark具有很强的适应性,能够读取HDFS、HBase、 Cassandra、 S3和Techyon为持久层读写原生数据,能够以Mesos、YARN和自身携带的Standalone作为资源管理器调度job,来完成Spark应用程序的计算。
    这里写图片描述
    (1) Spark 基本原理(Map reduce思想)
    这里写图片描述
    每个节点的map任务读取本地数据,按照key进行分类,reduce任务拉取相同key的数据,并进行统计聚合。

(2) Spark 运行模式

  • Local 模式
    是用单机的多个线程来模拟Spark分布式计算,通常用来验证开发出来的应用程序逻辑上有没有问题。
  • Standalone 模式
    Spark自己提供独立的集群,主节点master,从节点worker,使用前需要启动spark集群,不受Hadoop yarn对资源的约束。
  • yarn 模式
    需要 Hadoop的yarn来分配资源,受yarn的约束,适用于生产环境。

10、kafka
Kafka 是一个高吞吐量的、持久性的、分布式发布订阅消息系统。
这里写图片描述
典型的生产消费模式,生产者向主题中发送消息消费者订阅主题消费消息。
应用场景:实时性较高的场合,比如流式处理,经典用法kafka+storm、kafka+sparkStreaming

11、Storm
Storm可以实现高频数据和大规模数据的实时处理不同于spark streaming 的微批处理,storm可以根据进来的每一条数据进行实时处理,实时性能非常高。
这里写图片描述

  • Nimbus,主节点,负责在集群里面发送代码,分配工作给机器,并且监控状态。全局只有一个。
  • Zookeeper是Storm重点依赖的外部资源。负责Nimbus和多个Supervisor之间的所有协调工作。
  • Supervisor,从节点,会监听分配给它那台机器的工作,根据需要启动/关闭工作进程Worker。
  • Worker,工作进程,它会启动很多线程来运行我们的任务。

以上就是我对大数据学习框架的整理。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

大数据学习框架及指南 的相关文章

  • 什么是lambda函数?使用lambda函数有什么好处?

    一 什么是lambda函数 Python支持一种有趣的语法 它允许你快速定义单行的最小函数 这些叫做lambda的函数是从Lisp中借用来的 可以被用在任何需要函数的地方 lambda 函数是一个可以接收任意多个参数 包括可选参数 并且返回
  • 使用C/C++编程控制LEGO EV3

    环境搭建 1 安装Eclipse 选择Eclipse IDE for C C Developers 网址 http www eclipse org downloads 2 安装c4ev3 网址 https c4ev3 github io 该

随机推荐

  • Vue项目更改项目图标

    Vue项目更改图标 Vue新建项目后会有默认图标 如下图左上角 方法一 替换图标图片 找到public文件下的favicon ico 把自己的图标替换掉favicon ico 修改成功 方法二 更换图标路径 找到public文件 把要加的图
  • vray渲染不了 全白_救急!!! vray for sketchup 渲染出来全白 !!求解决。。。重金...

    你说的白强是不是打的VR灯光啊 如果是把VR灯光勾成不可见 另外总体看你的灯光太亮了 调低即可 追问有时候我用Vray渲染 它有一个等待的时间 但是等完了又什么都没生成 就像我刚才没使用一样 这个是为什么呢 难道是有些不合理的地方 比如我在
  • c++模板元

    模版元 主要解决递归加速 单纯的递归会反复调用 函数等待 返回 所需时间多 模版元编译的时候慢 代码会增加 把运行时间节约在编译时 template
  • 深度解析V-REP Remote API (MATLAB) 的应用

    OS Win10 x64 V REP V REP PRO EDU 3 5 0 MATLAB 2016b 下面我们来聊一聊V REP中MATLAB远程API的应用 如果你只对V REP有基本了解 对V REP的远程API不熟悉 强烈建议你先阅
  • LeetCode高频算法刷题记录10

    文章目录 1 旋转图像 中等 1 1 题目描述 1 2 解题思路 1 3 代码实现 2 组合总和 中等 2 1 题目描述 2 2 解题思路 2 3 代码实现 3 回文链表 简单 3 1 题目描述 3 2 解题思路 3 3 代码实现 4 字符
  • 基于YOLOv5的血细胞识别和计数

    VOC格式标注转为yolov5格式 原数据格式是xml文件对目标细胞注释 现在需要将这种注释转换为yolov5所需的格式 即每个图像对应一个txt文件 文件中存储该图像中全部细胞的类别和坐标 一行存储一个细胞的信息 如下图 编写脚本进行注释
  • [Unity]各种Debug方法笔记

    无论是萌新还是Dalao 遇到Bug总是难免的 拒绝反驳 所以一些好的Debug方法就显得尤为重要 这篇文章既写给自己 也给看到文章的大家一个参考 内容主 quan 要 bu 是脚本的Debug方法 ps 如有出错漏记得以我能看到的方式指出
  • COCO数据处理(二)根据自己提取的类的json文件生成对应的mask二值图并画在原图上

    文章目录 COCO数据集根据json文件生成mask二值图 文件目录 目录说明 代码 一 生成mask图 代码 二 将mask图画在原图上 效果图 COCO数据集根据json文件生成mask二值图 文件目录 目录说明 data coco a
  • java中JDBC当中请给出一个DataSource的HelloWorld例子

    马克 to win 在前面 的jdbc的Helloworld程序当中 我们用DriverManager来获取数据库连接 事实上通过这种方法获取数据库连接 是比较耗费计算机资 源的 当然了 这也是没有办法的事儿 就像我们买贵书必须花大价钱一样
  • 【Android】App开发-布局篇

    UI的开发离不开各个组件的精准布局 在我们学习了控件之后 控件篇 我们就需要对这些控件进一一排布 让它们在各个指定的位置 目录 LinearLayout线性布局 RelativeLayout布局 FrameLayout布局 TableLay
  • 【Python爬虫】将爬下来的数据保存到redis数据库里面

    redis库中的Redis类对Hash数据类型操作的常用方法 方法名 具体说明 hset name key value 哈希中添加一个键值对 hmset name mapping 设置哈希中的多个键值对 hmget name keys ar
  • 逻辑架构和物理架构

    逻辑架构和物理架构 理论上划分了5种架构视图 分别是 逻辑架构 开发架构 运行架构 物理架构 数据架构 逻辑架构 逻辑架构关注的是功能 包含用户直接可见的功能 还有系统中隐含的功能 或者更加通俗来描述 逻辑架构更偏向我们日常所理解的 分层
  • HTML学习(二)HTML基础

    以这个为例 h1 我的第一个标题 h1 p 我的第一个段落 p DOCTYPE 前用来申明这是一个html 这里的html不区分大小写 HTML标题 HTML 标题 Heading 是通过 h1 h6 标签来定义的 h1 1级标题 h1 H
  • R语言优雅地修改列名称

    R语言优雅地修改列名称 在R语言中 修改数据框 DataFrame 或矩阵 Matrix 的列名称是一项常见的任务 通过优雅地修改列名称 可以提高代码的可读性和可维护性 在本文中 我将介绍几种优雅的方法来修改列名称 并提供相应的源代码示例
  • GPU计算

    文章目录 GPU计算 1 GPU和CPU的区别 2 GPU的主要参数解读 3 如何在pytorch中使用GPU 4 市面上主流GPU的选择 GPU计算 1 GPU和CPU的区别 设计目标不同 CPU基于低延时 GPU基于高吞吐 CPU 处理
  • 95-34-025-Context-AbstractChannelHandlerContext

    文章目录 1 概述 2 继承体系 3 类签名 4 关键字段 5 构造方法 6 ChannelRead事件 6 1 findContextInbound 7 invokeHandler 1 概述 2 继承体系
  • tensorrt转换模型进行了哪些操作

    对于网络layer graph进行的操作 消除输出未使用的层 消除相当于无操作的操作 卷积 偏置和ReLU运算的融合 具有足够相似参数和相同源张量的运算聚合 例如 GoogleNet v5的初始模块中的1x1卷积 inception结构中同
  • DW9718AF.c

    Copyright C 2015 MediaTek Inc This program is free software you can redistribute it and or modify it under the terms of
  • ERP系统总体解决方案 附下载地址

    企业资源计划即 ERP Enterprise Resource Planning 由美国 Gartner Group 公司于1990年提出 企业资源计划是 MRP II 企业制造资源计划 下一代的制造业系统和资源计划软件 除了MRP II
  • 大数据学习框架及指南

    Hadoop生态圈 一 采集 数据从哪里来 主要包括flume等 一 存储 海量的数据怎样有效的存储 主要包括hdfs Kafka 二 计算 海量的数据怎样快速计算 主要包括MapReduce Spark storm等 三 查询 海量数据怎