19. 大数据-技术生态简介

news2025/4/21 17:51:05

文章目录

  • 前言
  • 一、Hadoop介绍
    • 1. 简介
    • 2. Hadoop发展史
    • 3. Hadoop现状
  • 二、Hadoop特性
    • 1. Hadoop国外应用
    • 2. Hadoop国内应用
  • 三、Hadoop架构变迁
    • 1. 发行版本
    • 2. Hadoop架构变迁(1.0-2.0变迁)
    • 3. Hadoop架构变迁(3.0新版本)
    • 4. 综述
  • 四、技术生态体系


前言

大数据(Big Data)

大数据(Big Data)是指无法用传统数据处理工具处理的大规模数据集合,具有数据量大、数据类型多、数据生成速度快、数据价值密度低等特点。
大数据的处理技术包括分布式存储和计算、数据清洗和转换、数据分析和可视化等。
分布式存储和计算是通过多台计算机协同工作来处理大规模数据,如Hadoop、Spark等;
数据清洗和转换是对大数据进行预处理,如数据去重、数据转换等;
数据分析和可视化是对大数据进行分析和展示,如机器学习、数据可视化等。
大数据的设计和实现需要考虑数据源、数据质量、性能、数据安全等因素。


一、Hadoop介绍

Hadoop是大数据生态圈的核心与基石,是整个大数据开发的入门。

1. 简介

狭义上Hadoop指的是Apache软件基金会的一款开源软件。

用 java语言实现,开源允许用户使用简单的编程模型实现跨机器集群对海量数据进行分布式计算处理。

Hadoop核心组件:

  • Hadoop HDFS (分布式文件存储系统):解决海量数据存储
  • Hadoop YARN (集群资源管理和任务调度框架): 解决资源任务调度
  • Hadoop MapReduce (分布式计算框架):解决海量数据计算

官网:Apache Hadoop

广义上Hadoop指的是围绕Hadoop打造的大数据生态圈。

Hadoop生态圈

2. Hadoop发展史

  • Hadoop之父: Doug Cutting

  • Hadoop起源于Apache Lucene子项目: Nutch,Nutch的设计目标是构建一个大型的全网搜索引擎。遇到瓶颈:如何解决数十亿网页的存储和索引问题

  • Google三篇论文

《The Google file system》 :谷歌分布式文件系统GFS

《MapReduce: Simpliied Data Processing on Large Clusters》 :谷歌分布式计算框架MapReduce

《Bigtable: A Distributed Storage System for Structured Data》 :谷歌结构化数据存储系统

3. Hadoop现状

HDFS作为分布式文件存储系统,处在生态圈的底层与核心地位;

YARN作为分布式通用的集群资源管理系统和任务调度平台, 支撑各种计算引擎运行,保证了Hadoop地位;

MapReduce作为大数据生态圈第一代分布式计算引擎,由于自身设计的模型所产生的弊端, 导致企业一线几乎不再直接使用MapReduce进行编程处理,但是很多软件的底层依然在使用MapReduce引擎来处理数据。

Hadoop是一个由Apache基金会所开发的分布式系统基础架构,主要就是解决数据存储和数据分析计算的问题(通过HDFS和MapReduce实现)。
Hive基于Hadoop的数据仓库工具,可以存储,查询,分析数据,方便决策人员和数据分析人员统计分析历史数据。
Spark是一个基于内存计算的开源的集群计算系统,目的是让数据分析更加快速。

对应于Google三驾马车:
HDFS对应于GFS,即分布式文件系统;
MapReduce即并行计算框架;
HBase对应于BigTable,即分布式NoSQL列数据库。
外加Zookeeper对应于Chubby,即分布式锁设施。

二、Hadoop特性

Hadoop特性优点

1. Hadoop国外应用

  1. Yahoo
  • 支持广告系统
  • 用户行为分析
  • 支持Web搜索
  • 反垃圾邮件系统
  1. Facebook
  • 存储处理数据挖掘和日志统计
  • 构建基于Hadoop数据仓库平台(Apache Hive来自FB)
  1. IBM
  • 蓝云基础设施构建
  • 商业化Hadoop发行、解决方案支持

2. Hadoop国内应用

  1. 百度
  • 用户搜索表征的需求数据、阿拉丁爬虫数据存储
  • 数据分析和挖掘 竞价排名
  1. 阿里巴巴
  • 为电子商务网络平台提供底层的基础计算和存储服务
  • 交易数据、信用数据
  1. 腾讯
  • 用户关系数据
  • 基于Hadoop、 Hive构建TDW (腾讯分布式数据仓库)
  1. 华为
  • 对Hadoop的HA方案,以及HBase领域有深入研究

三、Hadoop架构变迁

1. 发行版本

Hadoop发行版本
Hadoop发行版本:Apache Hadoop

Apache开源社区版本:http://hadoop.apache.org/

商业发行版本:

  • Cloudera: https://www.cloudera.com/products/open-source/apache-hadoop.html
  • Hortonworks: https://www.cloudera.com/products/hdp.html

常用Apache版的Hadoop, 版本号为: 3.3.0

Hadoop版本

2. Hadoop架构变迁(1.0-2.0变迁)

Hadoop 1.0

  • HDFS (分布式文件存储)
  • MapReduce (资源管理和分布式数据处理)

Hadoop 2.0

  • HDFS (分布式文件存储)
  • MapReduce (分布式数据处理)
  • YARN (集群资源管理、任务调度)

Hadoop1.0->2.0

3. Hadoop架构变迁(3.0新版本)

Hadoop 3.0架构组件和Hadoop 2.0类似,3.0着重于性能优化。

  • 通用方面

精简内核、类路径隔离、shell脚本重构

  • Hadoop HDFS

EC纠删码、多NameNode支持

  • Hadoop MapReduce

任务本地化优化、 内存参数自动推断

  • Hadoop YARN

Timeline Service V2、队列配置

Hadoop3.0

4. 综述

① 在Hadoop1.x时代,Hadoop中的MapReduce同时处理业务逻辑运算和资源的调度,耦合性较大。

② 在Hadoop2.x时代,增加了Yarn。Yarn只负责资源的调度,MapReduce只负责运算。

③ Hadoop3.x在组成上没有什么变化。

现状:

HDFS作为分布式文件存储系统,处在生态圈的底层与核心地位;

YARN作为分布式通用的集群资源管理系统和任务调度平台, 支撑各种计算引擎运行,保证了Hadoop地位;

MapReduce作为大数据生态圈第一代分布式计算引擎,由于自身设计的模型所产生的弊端, 导致企业一线几乎不再直接使用MapReduce进行编程处理,但是很多软件的底层依然在使用MapReduce引擎来处理数据。

四、技术生态体系

大数据技术生态体系

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

Flume: Flume 是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume 支持在日志系统中定制各类数据发送方,用于收集数据;

Kafka: Kafka 是一种高吞吐量的分布式发布订阅消息系统

Spark: Spark 是当前最流行的开源大数据内存计算框架。可以基于 Hadoop 上存储的大数据进行计算。

Flink: Flink 是当前最流行的开源大数据内存计算框架。 用于实时计算的场景较多。

Oozie: Oozie 是一个管理 Hadoop 作业(job)的工作流程调度管理系统。

Hbase: HBase 是一个分布式的、面向列的开源数据库。 HBase 不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。

Hive: Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的 SQL 查询功能,可以将 SQL 语句转换为 MapReduce 任务进行运行。其优点是学习成本低,可以通过类 SQL 语句快速实现简单的 MapReduce 统计,不必开发专门的 MapReduce 应用,十分适合数据仓库的统计分析。

ZooKeeper:它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。


本文的引用仅限自我学习如有侵权,请联系作者删除。
参考知识
Hadoop技术栈之Apache Hadoop概述


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2311879.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android Native 之 文件系统挂载

一、文件系统挂载流程概述 二、文件系统挂载流程细节 1、Init启动阶段 众所周知,init进程为android系统的第一个进程,也是native世界的开端,要想让整个android世界能够稳定的运行,文件系统的创建和初始化是必不可少的&#xff…

C++蓝桥杯基础篇(八)

片头 嗨~小伙伴们,大家好!今天我们一起来学习C蓝桥杯基础篇(八),练习相关字符串的习题,准备好了吗?Are you ready? Lets go! 第1题 字符串中的数字个数 这道题,我们用字符数组或者…

IDEA2023 使用枚举类型java: 非法字符: ‘\ufffd‘

一、异常: 二、原因 文件编码问题 IDE或文本编辑器的文件编码设置不正确,可能会导致在保存文件时引入了错误的字符。 三、解决 在IntelliJ IDEA中,你可以通过File -> Settings -> Editor -> File Encodings来设置。

3.6 登录认证

登录功能 登录思路 联调测试 登录校验 问题:在未登录情况下,我们也可以直接访问部门管理、员工管理等功能。 登录标记 用户登录成功之后,每一次请求中,都可以得到该标记。 统一拦截 过滤器Filter拦截器Interceptor 会话技术 会…

qt-C++笔记之ubuntu22.04源码安装Qt6.8.2

qt-C++笔记之ubuntu22.04源码安装Qt6.8.2 code review! 文章目录 qt-C++笔记之ubuntu22.04源码安装Qt6.8.21.作者环境:ubuntu22.04、cmake202.安装3.关联已安装的 Qt6 到 Qt Creator4.附:ubuntu18.0的处理,可尝试,作者没有遇到这个问题1.作者环境:ubuntu22.04、cmake20 安…

简单的二元语言模型bigram实现

内容总结归纳自视频:【珍藏】从头开始用代码构建GPT - 大神Andrej Karpathy 的“神经网络从Zero到Hero 系列”之七_哔哩哔哩_bilibili 项目:https://github.com/karpathy/ng-video-lecture Bigram模型是基于当前Token预测下一个Token的模型。例如&#x…

计算机视觉之dlib人脸关键点绘制及微笑测试

dlib人脸关键点绘制及微笑测试 目录 dlib人脸关键点绘制及微笑测试1 dlib人脸关键点1.1 dlib1.2 人脸关键点检测1.3 检测模型1.4 凸包1.5 笑容检测1.6 函数 2 人脸检测代码2.1 关键点绘制2.2 关键点连线2.3 微笑检测 1 dlib人脸关键点 1.1 dlib dlib 是一个强大的机器学习库&a…

Windows11下玩转 Docker

一、前提准备 WSL2:Windows 提供的一种轻量级 Linux 运行环境,具备完整的 Linux 内核,并支持更好的文件系统性能和兼容性。它允许用户在 Windows 系统中运行 Linux 命令行工具和应用程序,而无需安装虚拟机或双系统。Ubuntu 1.1 安…

Android 平台架构系统启动流程详解

目录 一、平台架构模块 1.1 Linux 内核 1.2 硬件抽象层 (HAL) 1.3 Android 运行时 1.4 原生 C/C 库 1.5 Java API 框架 1.6 系统应用 二、系统启动流程 2.1 Bootloader阶段 2.2 内核启动 2.3 Init进程(PID 1) 2.4 Zygote与System Serv…

【C++设计模式】第四篇:建造者模式(Builder)

注意:复现代码时,确保 VS2022 使用 C17/20 标准以支持现代特性。 分步骤构造复杂对象,实现灵活装配 1. 模式定义与用途 核心目标:将复杂对象的构建过程分离,使得同样的构建步骤可以创建不同的表示形式。 常见场景&am…

使用GitLink个人建站服务部署Allure在线测试报告

更多技术文章,访问软件测试社区 文章目录 🚀前言🔑开通GitLink个人建站服务1. 前提条件2. 登录GitLink平台(https://www.gitlink.org.cn/login)3. 进入设置>个人建站>我的站点4. 新建站点5. 去仓部进行部署6. 安…

专业学习|多线程、多进程、多协程加速程序运行

学习资料来源:【2021最新版】Python 并发编程实战,用多线程、多进程、多协程加速程序运行_哔哩哔哩_bilibili 若有侵权,联系删除。 一、程序的提速方法——多线程、多进程、多协程 在现代编程中,多线程、多进程和多协程是三种常见…

C/C++蓝桥杯算法真题打卡(Day3)

一、P8598 [蓝桥杯 2013 省 AB] 错误票据 - 洛谷 算法代码&#xff1a; #include<bits/stdc.h> using namespace std;int main() {int N;cin >> N; // 读取数据行数unordered_map<int, int> idCount; // 用于统计每个ID出现的次数vector<int> ids; …

烟花燃放安全管控:智能分析网关V4烟火检测技术保障安全

一、方案背景 在中国诸多传统节日的缤纷画卷中&#xff0c;烟花盛放、烧纸祭祀承载着人们的深厚情感。一方面&#xff0c;烟花璀璨&#xff0c;是对节日欢庆氛围的热烈烘托&#xff0c;寄托着大家对美好生活的向往与期许&#xff1b;另一方面&#xff0c;袅袅青烟、点点烛光&a…

【Bert系列模型】

目录 一、BERT模型介绍 1.1 BERT简介 1.2 BERT的架构 1.2.1 Embedding模块 1.2.2 双向Transformer模块 1.2.3 预微调模块 1.3 BERT的预训练任务 1.3.1 Masked Language Model (MLM) 1.3.2 Next Sentence Prediction (NSP) 1.4 预训练与微调的关系 1.5 小结 二、BERT…

android接入rocketmq

一 前言 RocketMQ 作为一个功能强大的消息队列系统&#xff0c;不仅支持基本的消息发布与订阅&#xff0c;还提供了顺序消息、延时消息、事务消息等高级功能&#xff0c;适应了复杂的分布式系统需求。其高可用性架构、多副本机制、完善的运维管理工具&#xff0c;以及安全控制…

前端数据模拟 Mock.js 学习笔记

mock.js介绍 Mock.js是一款前端开发中拦截Ajax请求再生成随机数据响应的工具&#xff0c;可以用来模拟服务器响应 优点是&#xff1a;非常方便简单&#xff0c;无侵入性&#xff0c;基本覆盖常用的接口数据类型支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜…

用DeepSeek-R1-Distill-data-110k蒸馏中文数据集 微调Qwen2.5-7B-Instruct!

下载模型与数据 模型下载&#xff1a; huggingface&#xff1a; Qwen/Qwen2.5-7B-Instruct HF MirrorWe’re on a journey to advance and democratize artificial intelligence through open source and open science.https://hf-mirror.com/Qwen/Qwen2.5-7B-Instruct 魔搭&a…

DeepSeek大模型 —— 全维度技术解析

DeepSeek大模型 —— 全维度技术解析 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;可以分享一下给大家。点击跳转到网站。 https://www.captainbed.cn/ccc 文章目录 DeepSeek大模型 —— 全维度技术解析一、模型架构全景解析1…

EasyRTC嵌入式音视频通话SDK:基于ICE与STUN/TURN的实时音视频通信解决方案

在当今数字化时代&#xff0c;实时音视频通信技术已成为人们生活和工作中不可或缺的一部分。无论是家庭中的远程看护、办公场景中的远程协作&#xff0c;还是工业领域的远程巡检和智能设备的互联互通&#xff0c;高效、稳定的通信技术都是实现这些功能的核心。 EasyRTC嵌入式音…