1.Hadoop分布式文件系统(HDFS)

  • HDFS基于GFS(Google File System),能够存储海量的数据,并且使用分布式网络客户端透明访问。
  • HDFS中将文件拆分成特定大小的块结构(block-structured filesystem),一个文件的不同块存储在不同的节点中。
  • 为了防止数据丢失,HDFS默认将一个块重复保存3份。
  • HDFS的架构主要包括两个部分:NameNode和DataNode。
  • NameNode保存整个文件系统的基础信息,例如:文件名,文件权限,文件每个块的存储位置等。为了能够快速访问获取信息,NameNode将这些基础信息保存在内存中。
  • DataNodes是那些保存块(blocks)的机器,通常由大容量存储空间的廉价机器充当。

hadoop中常用文件操作命令

  • hdfs dfs -ls / (列出HDFS根目录的文件信息)

  • hdfs dfs -mkdir /user (在HDFS中创建目录)

  • hdfs dfs -put INPUT_PATH OUTPUT_PATH

  • hdfs dfs -cat

  • hdfs dfs -get

  • hadoop fs,hadoop dfs和hdfs dfs命令的区别:fs既能操作本地文件又能操作分布式文件系统,而dfs只能操作HDFS分布式文件系统。hadoop dfs已经废弃

2.MapReduce with Python

  • MapReduce是一种编程模型,用它来将大量的数据计算任务划分成并行的独立的小任务。
  • MapReduce框架主要包括3个阶段:map, shuffle and sort, and reduce(映射,混合和排序,规约)
  • Map阶段:maper函数分别处理系列键值对,产生零个或多个新的键值对。



  • shuffle and sort:利用基于哈希的分割器给每确定每个键值对对于的reducer,并且进行排序。
  • Reduce阶段:利用reduce函数,将多个map阶段输出的键值对按照键对值进行合并,然后输出新的键值对。

  • Hadoop streaming:maper和reducer都是按照一行一行的顺序从标准输入(stdin)读取数据,然后进行标准输出,maper的输出值为多个键值对,每个键值对用制表符(tab)分开。

3.Hadoop streaming

  • Hadoop Streaming工具的最大的好处是:能够让任何语言编写的map, reduce程序能够在hadoop集群上运行;map/reduce程序只要遵循从标准输入stdin读,写出到标准输出stdout即可。

  • 另外一个方便之处就是:需要编写的map和reduce程序容易进行单机调试,通过管道前后相接的方式就可以模拟streaming, 在本地完成map/reduce程序的调试。

  • 最后,streaming工具提供了丰富的参数来灵活控制作业的过程。

  • map/reduce作业是由一些可执行文件或脚本文件充当mapper或者reducer。

    例如:

$HADOOP_HOME/bin/hadoop  jar $HADOOP_HOME/hadoop-streaming.jar \
-input myInputDirs \
-output myOutputDir \
-mapper /bin/cat \
-reducer /bin/wc

任何可执行文件都可以被指定为mapper/reducer。这些可执行文件不需要事先存放在集群上; 如果在集群上还没有,则需要用-file选项让framework把可执行文件作为作业的一部分,一起打包提交。

例如:

$HADOOP_HOME/bin/hadoop  jar $HADOOP_HOME/hadoop-streaming.jar \
-input myInputDirs \
-output myOutputDir \
-mapper myPythonScript.py \
-reducer /bin/wc \
-file myPythonScript.py

hadoop 日常使用记录的更多相关文章

  1. Hadoop运维记录系列

    http://slaytanic.blog.51cto.com/2057708/1038676 Hadoop运维记录系列(一) Hadoop运维记录系列(二) Hadoop运维记录系列(三) Hado ...

  2. 日常问题记录-- java.lang.IllegalArgumentException: taglib definition not consistent with specification version

    转自:https://www.cnblogs.com/carterzhang/p/4288650.html 背景: tomcat8.0中使用taglib 错误表现: java.lang.Illegal ...

  3. hadoop日常运维与升级总结

    日常运维 升级 问题处理方法 日常运维 进程管理 由于配置文件的更改,需要重启生效, 或者是进程自己因某种致命原因终止, 或者发现进程工作出现异常等情况下,需要进行手动进程的关闭或启动, 或者是增删节 ...

  4. hadoop安装问题记录

    start-yarn.sh 启动正常,但是无法访问网页http://localhost:8088/cluster 原因: 可能是ipv6 的问题 解决方法: http://stackoverflow. ...

  5. hadoop 安装过程记录

    1)首先配置好了四个linux虚拟机 root pwd:z****l*3 关闭了防火墙 开通了 sshd服务 开通了 ftp服务 配置了 jdk 1.8 配置好了互信 (之前配置的过程忘了!--检查了 ...

  6. Hadoop学习问题记录之基础篇

    目的 记录学习hadoop过程中遇到的基础问题,无关大小.无关困扰时间长短. 问题一 全分布式环境中运行mapred程序,报异常:java.net.NoRouteToHostException: 没有 ...

  7. 【日常操作记录】Asp.Net Core 的一些基本操作或属性

    用于记录在项目中使用到的方法.属性.操作,持续更新中 静态文件的使用 在项目中静态文件的使用需要在Startup中的Configure方法中增加: //使用静态文件 app.UseStaticFile ...

  8. Hadoop日常维护系列——Hadoop添加删除节点

    添加节点 1.修改host    和普通的datanode一样.添加namenode的ip 2.修改namenode的配置文件conf/slaves    添加新增节点的ip或host 3.在新节点的 ...

  9. Mac OS X Yosemite安装Hadoop 2.6记录

    整个安装过程分为四部分: 一.  安装Homebrew 二.  ssh localhost 三. 安装Hadoop已经进行配置文件设置 (伪分布式) 四. 执行栗子 一. 安装Homebrew 採用H ...

随机推荐

  1. 「洛谷P3931」 SAC E#1 - 一道难题 Tree

    P3931 SAC E#1 - 一道难题 Tree 题目背景 冴月麟和魏潇承是好朋友. 题目描述 冴月麟为了守护幻想乡,而制造了幻想乡的倒影,将真实的幻想乡封印了.任何人都无法进入真实的幻想乡了,但是 ...

  2. AssemblyScript基本使用与项目构建

    全局安装assemblyscript npm i -S AssemblyScript/assemblyscript glob 生成编译脚手架 npx asinit . 项目构建 npm run asb ...

  3. 4.eclipse中导入别人用的源代码问题

    最近在导入别人用的源代码问题时,出现两个问题: 问题一:提示无法解析导入,如下图: 解决方法:删除项目下的module-info.java文件即可,或者在创建项目时将创建module-info.jav ...

  4. 清晰架构(Clean Architecture)的Go微服务: 程序容器(Application Container)

    清晰架构(Clean Architecture)的一个理念是隔离程序的框架,使框架不会接管你的应用程序,而是由你决定何时何地使用它们.在本程序中,我特意不在开始时使用任何框架,因此我可以更好地控制程序 ...

  5. schedule of 2016-09-26~2016-10-02(Monday~Sunday)——1st semester of 2nd Grade

    2016/9/26 Monday 1.make ppt for this afternoon's group meeting 2.ask teacher Xiqi&Liu some probl ...

  6. 机器学习新手必看:Jupyter Notebook入门指南

    参考网址:https://blog.csdn.net/guleileo/article/details/80490921

  7. 网络流学习 - dinic

    推荐博客:https://www.cnblogs.com/SYCstudio/p/7260613.html#4246029

  8. 洛谷p1502窗口的星星 扫描线

    题目链接:https://www.luogu.org/problem/P1502 扫描线的板子题,把每个点看成矩形,存下边(x,y,y+h-1,li)和(x+w-1,y,y+h-1),在按横坐标扫线段 ...

  9. noip2017考前基础复习——数论数学

    ·最大公约数 gcd 辗转相除法  gcd(a,b)=gcd(b,a%b) int gcd(int x,int y){ ) return x; return gcd(y,x%y); } 效率O(log ...

  10. [bzoj2038] [洛谷P1494] [2009国家集训队] 小Z的袜子(hose)

    Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命-- 具体来说,小Z把这N只 ...