当前位置: 首页 > news >正文

【云原生 | 29】Docker运行大数据经典分布式平台Hadoop

作者简介:🏅云计算领域优质创作者🏅新星计划第三季python赛道第一名🏅 阿里云ACE认证高级工程师🏅
✒️个人主页:小鹏linux
💊个人社区:小鹏linux(个人社区)欢迎您的加入!

目录

1. Hadoop是什么

2. Hadoop 的发展历史

3. 在Docker上运行Hadoop

3.1 使用官方镜像

3.2 安装验证 

 👑👑👑结束语👑👑👑


1. Hadoop是什么

 作为当今大数据处理领域的经典分布式平台,Apache Hadoop主要基于Java语言实现,由三个核心子系统组成:HDFS、YARN、MapReduce,其中,HDFS是一套分布式文件系统;YARN是资源管理系统,MapReduce是运行在YARN上的应用,负责分布式处理管理。如果从操作系统的角度看,HDFS相当于Linux的 ext3/ext4文件系统,而Yarn相当于Linux的进程调度和内存分配模块

2. Hadoop 的发展历史

1)Hadoop 创始人 Doug Cutting ,为 了实 现与 Google 类似的全文搜索功能,他在 Lucene 框架基础上进行优化升级,查询引擎和索引引擎。
2)2001 年年底 Lucene 成为 Apache 基金会的一个子项目。
3)对于海量数据的场景, Lucene 框 架面 对与 Google 同样的困难, 存 储海量数据困难,检 索海 量速度慢 。
4)学习和模仿 Google 解决这些问题的办法 :微型版 Nutch 。
5)可以说 Google 是 Hadoop 的思想之源( Google 在大数据方面的三篇论文)
        GFS --->HDFS
        Map-Reduce --->MR
        BigTable --->HBase
6) 2003-2004 年, Google 公开了部分 GFS 和 MapReduce 思想的细节,以此为基础 Doug Cutting 等人用
了 2 年业余时间 实现了 DFS 和 MapReduce 机制,使 Nutch 性能飙升。
7)2005 年 Hadoop 作为 Lucene 的子项目 Nutch 的一部分正式引入 Apache 基金会。
8)2006 年 3 月份, Map-Reduce 和 Nutch Distributed File System ( NDFS )分别被纳入到 Hadoop 项目
中, Hadoop 就此正式诞生,标志着大数据时代来临。
9)名字来源于 Doug Cutting 儿子的玩具大象

3. 在Docker上运行Hadoop

3.1 使用官方镜像

可以通过docker run指令运行镜像,同时打开bash命令行,如下所示:

$ docker run -it sequenceiq/hadoop-docker:2.7.0 /etc/bootstrap.sh -bash 
bash-4.1#

此时可以查看各种配置信息和执行操作,例如查看namenode日志等信息:

bash-4.1# cat /usr/local/hadoop/logs/hadoop-root-namenode-d4e1e9d8f24f.out 
ulimit -a for user root 
core file size (blocks, -c) 0 
data seg size (kbytes, -d) unlimited 
scheduling priority (-e) 0 
file size (blocks, -f) unlimited 
pending signals (-i) 7758 
max locked memory (kbytes, -l) 64 
max memory size (kbytes, -m) unlimited 
open files (-n) 1048576 
pipe size (512 bytes, -p) 8 
POSIX message queues (bytes, -q) 819200 
real-time priority (-r) 0 
stack size (kbytes, -s) 8192 
cpu time (seconds, -t) unlimited 
max user processes (-u) unlimited 
virtual memory (kbytes, -v) unlimited 
file locks (-x) unlimited

3.2 安装验证 

需要验证Hadoop环境是否安装成功。打开容器的bash命令行环境,进入Hadoop目录:
bash-4.1# cd $HADOOP_PREFIXbash-4.1# pwd/usr/local/hadoop

然后通过运行Hadoop内置的实例程序来进行测试:

bash-4.1# bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar grep input output 'dfs[a-z.]+' 
16/08/31 10:00:11 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:8032 
16/08/31 10:00:15 INFO input.FileInputFormat: Total input paths to process : 31 
16/08/31 10:00:16 INFO mapreduce.JobSubmitter: number of splits:31 
...

最后可以使用hdfs指令检查输出结果:

bash-4.1# bin/hdfs dfs -cat output/*

 👑👑👑结束语👑👑👑

相关文章:

  • onnx支持的pytorch(aten)算子
  • 外汇天眼:英国央行加息50个基点 英国可能已经陷入衰退
  • 如何在树莓派上安装cpolar内网穿透
  • NIPS 22: GGD Rethinking and Scaling Up Graph Contrastive Learning
  • 微信小程序登录
  • WebDAV之葫芦儿·派盘+可达漫画
  • maven多个moduled,打包target没有class文件
  • 计算机毕业设计之java+javaweb的美容院管理系统
  • 微服务应用性能分析实战05 故障定位:Java VisualVM,第一款多合一的轻量可视化工具
  • 【优化调度】基于粒子群算法解决经济调度附Matlab代码
  • 第七章、优化算法
  • 关于HashMap中重写equals与hashcode的一下问题
  • 互亿无线语音通知平台常用使用场景及接入指南
  • 01 LaTeX命令环境和源代码结构
  • 浏览一个网站时的整个过程
  • 时间复杂度分析经典问题——最大子序列和
  • 【mysql】环境安装、服务启动、密码设置
  • 2018天猫双11|这就是阿里云!不止有新技术,更有温暖的社会力量
  • Apache的80端口被占用以及访问时报错403
  • C++类的相互关联
  • javascript 哈希表
  • Python 基础起步 (十) 什么叫函数?
  • Stream流与Lambda表达式(三) 静态工厂类Collectors
  • 从零开始在ubuntu上搭建node开发环境
  • 大型网站性能监测、分析与优化常见问题QA
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 使用 @font-face
  • 使用putty远程连接linux
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 小李飞刀:SQL题目刷起来!
  • NLPIR智能语义技术让大数据挖掘更简单
  • ​520就是要宠粉,你的心头书我买单
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • #微信小程序:微信小程序常见的配置传旨
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (二)Linux——Linux常用指令
  • (分享)自己整理的一些简单awk实用语句
  • (个人笔记质量不佳)SQL 左连接、右连接、内连接的区别
  • (九十四)函数和二维数组
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • (转)Oracle 9i 数据库设计指引全集(1)
  • (转)拼包函数及网络封包的异常处理(含代码)
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .Net中ListT 泛型转成DataTable、DataSet
  • [Android Pro] Notification的使用
  • [boost]使用boost::function和boost::bind产生的down机一例
  • [C++数据结构](22)哈希表与unordered_set,unordered_map实现
  • [Design Pattern] 工厂方法模式
  • [java基础揉碎]方法的重写/覆盖
  • [Notes]python argparse模块
  • [office] excel2003进行可视性加密的方法 #媒体#其他#知识分享