- 博客(20)
- 收藏
- 关注
翻译 hadoop2.7.2学习笔记20-HDFS Snapshots
HDFS快照是文件系统的某一时刻的只读复制。它通常用于数据备份、用户错误保护和灾备恢复。它具有以下特定:创建快照是瞬时的,除开寻找inode的开销,其他开销为O(1);只有当快照被修改时才会用到额外的内存,内存开销是O(M),其中M是修改的文件/目录数目;datanodes中的blocks并未被复制;仅复制block清单和文件的大小;快照不会影响正常的HDFS操作,创建快照后的
2017-05-22 14:19:45 420
翻译 hadoop2.7.2学习笔记19-ViewFs
1、在Federation之前一个集群拥有一个namenode,它为集群提供一个单一的文件系统NameSpace。假设有很多集群,那么它们的NameSpace是彼此独立的。更重要的是,物理存储也没有在集群之间进行共享。单namenode集群每个集群的core-site.xml有一个配置参数设置默认文件系统的namenode: fs.default.name hdfs:/
2017-05-22 10:01:25 776
翻译 hadoop2.7.2学习笔记18-HDFS Federation
HDFS分为两个主要的层:Namespace,由目录、文件和blocks组成。它支持所有和NameSpace相关的文件系统操作,如创建、删除、修改和打印清单。Block Storage Service,它由两部分组成。1、Block Management(运行于NameNode),它处理来自DataNode的注册和周期性心跳,处理block的报告并保存block的位置,支持block相
2017-05-21 22:48:01 418
翻译 hadoop2.7.2学习笔记16-QJM和HA
HA提供namenode热备服务,保证集群的持续服务。1、HA架构集群拥有两个namenode,一个active,另一个standby。active负责处理客户端的操作,standby像slave一样运行。standby和active通过一组独立的进程(JournalNodes,JNs)进行NameSpace的同步。同时,DataNode会同时配有两个namenode的地址,并周期性向
2017-05-21 10:11:22 328
翻译 spark1.6.1学习笔记02-spark集群的作业调度
1、spark应用之间的作业调度每个spark应用拥有一个独立的executor虚拟机集合,这些executor只会执行该spark应用的tasks。spark提供了多种集群资源分配方式:(1)最简易的方式是静态资源分配。此模式给每个spark应用分配一个静态的最大资源量,在spark应用的整个生命周期中都会保有这些资源。spark standalone、YARN和coase-gran
2017-05-17 16:48:47 770
翻译 hadoop2.7.2学习笔记15-HDFS user guide
1、概要hdfs由namenode和datanode组成,前者负责管理文件系统元数据,后者负责存储具体数据。hdfs支持类shell的命令行直接与其交互。hdfs的主要特性包括:1、文件权限和认证;2、机架敏感,在分配tasks和存储时会考虑到机架;3、安全模式,维护中用到的一种管理模式;4、fsck,一个检测文件系统健康的工具,可以查找丢失的文件或blocks;5
2017-05-16 11:26:28 556
翻译 hadoop2.7.2学习笔记09-机架敏感
hadoop的master进程可以通过外部脚本或者java类来获取slaves的机架信息。无论用哪种方式,得到的拓扑结构都必须符合org.apache.hadoop.net.DNSToSwitchMapping接口。该接口的拓扑信息格式是‘/myrack/myhost’。设想每个机架都是一个24位掩码的子网,‘/192.168.100.0/192.168.100.5’即可表示唯一的一个‘机架-主机
2017-05-12 16:48:52 460
翻译 hadoop2.7.2学习笔记08-代理用户(超级用户以其他用户的名义执行操作)
1、场景假设一个超级用户super想要以一个名为joe的用户的名义向hdfs提交作业。super使用kerberos认证,但joe并没有。这要求joe可以使用超级用户认证过了的连接,来操作namenode和job tracker。这个场景在Apache Oozie中可能会发生。示例代码:... //Create ugi for joe. The login user i
2017-05-12 15:05:14 3306
翻译 hadoop2.7.2学习笔记07-本地库
1、hadoop本地库32位的i386-Linux的hadoop本地库位于lib/native目录中。hadoop本地库包含三个组件(后两个完全不知所云,不过以后可能会学习到):1、压缩与解压(bzip2,lz4,snappy,zlib)。2、用于支持 HDFS Short-Circuit Local Reads和Centralized Cache Management i
2017-05-12 14:33:15 350
翻译 hadoop2.7.2学习笔记06-CLI MiniCluster
CLI cluster功能可以使用一个命令直接启动一个包含yarn/mapreduce和hdfs的hadoop集群,避免了配置环境变量和配置文件。首先需要指定一个环境变量,否则会抛出异常说找不到某个类$ export HADOOP_CLASSPATH=./share/hadoop/yarn/test/hadoop-yarn-server-tests-2.7.2-tests.jar
2017-05-11 16:11:57 632
翻译 hadoop2.7.2学习笔记05-hadoop文件系统API定义-hadoop数据输入流类FSDataInputStream
Class FSDataInputStream extends DataInputStream FSDataInputStream仿自java.io.DataInputStream,但有如下扩展: 1、源可以是本地或远程文件系统 2、正在读入的流指向一个有限的字节数组 3、在读取过程中,数据的长度不能发生变化,数据的内容也不能发生变化 4、在读取过程中,文件不
2017-05-11 15:12:37 940
翻译 hadoop2.7.2学习笔记05-hadoop文件系统API定义-hadoop文件系统类org.apache.hadoop.fs.FileSystem
class org.apache.hadoop.fs.FileSystem 抽象类FileSystem是访问hadoop文件系统的最原生态的方式;它的非抽象的子类用来实现hadoop支持的各个文件系统。 所有基于此接口的的操作必须要支持相对路径,相对路径指相对于工作路径,工作路径由setWorkingDirectory()指定。 对于每个客户端都有一个当前工作目录的概念,但是
2017-05-11 09:39:13 2753
翻译 hadoop2.7.2学习笔记05-hadoop文件系统API定义-hadoop文件系统模型
这一章继续用专业的符号语言说废话。。。 1、路径和路径元素(paths and path elements) 路径由路径元素组成,所有的路径包括到文件的路径、到目录的路径和到链接的路径。 路径的元素不能是空字符串也不能是{"", ".", "..", "/"}。 路径的元素不能包含{'/', ':'}。 当路径元素无效时,需要抛出InvalidPathExce
2017-05-10 17:26:00 232
翻译 hadoop2.7.2学习笔记05-hadoop文件系统API定义-本文档使用到的专用符号
类似z-node的正式的符号集可以用来精确地定义hadoop文件系统的特征。 然而它有一些缺陷(这里不一一列出)。这里使用纯数学的正式符号来对hadoop文件系统的特征进行描述。 1、本文档中使用到的符号集 本文档使用的符号集将会包含z-node语法的一个子集,但是使用ASCII的格式。使用python list符号集来操作lists和sets。iff : iff I
2017-05-10 15:51:03 296
翻译 hadoop2.7.2学习笔记05-hadoop文件系统API定义-简介
本文档用于定义hadoop文件系统模型和API,以便于其他的文件系统实现这些API,这样不同的文件系统就可以展示一致性的模型给应用。接下来几天开始学习这个内容。这一部分主要介绍hadoop兼容的文件系统的一些要求。目前hadoop不仅支持hdfs,还支持亚马逊s3,openstack swift和微软Azure。 1、关于hadoop文件系统API的一些假设。 FileSystem
2017-05-09 17:31:21 503
翻译 spark1.6.1学习笔记01-spark调优
spark调优主要在两个方面进行考虑,一个是数据序列化,另一个是内存管理。 1、从数据序列化角度进行优化 spark提供了两个序列化库。默认情况下Spark使用Java的ObjectOutputStream框架,它可以作用于任何实现了java.io.Serializable接口的类。通过实现java.io.Externalizable接口可以更精细地控制序列化过程。Java序列化非常的
2017-05-09 10:46:32 466
原创 hadoop2.7.2学习笔记04-hadoop fs shell
hadoop fs shell包含与HDFS或Hadoop支持的其他文件系统(如本地文件系统,HFTP,S3)的交互操作。 hadoop fs shell通过上一节的fs命令行进行调用: bin/hadoop fs 所有的fs shell命令都需要使用URIs作为参数。URI的格式为scheme://authority/path。对于hdfs来说scheme是hdfs,对于本地
2017-05-05 16:35:26 380
原创 hadoop2.7.2学习笔记03-hadoop命令
所有的hadoop命令都由bin/hadoop脚本执行。hadoop命令大致分为三类,hadoop common,hdfs和yarn 这个脚本的用法是:hadoop [--config confdir] [--loglevel loglevel] [COMMAND] [GENERIC_OPTIONS] [COMMAND_OPTIONS]。其中 --config confdir 用来
2017-05-05 15:04:26 478
原创 hadoop2.7.2学习笔记02-启动集群
一般集群中的一台机器作为NameNode,另一台机器作为ResourceManager,这是masters。 剩下的服务(Web App Proxy Server和MapReduce Job History server)会运行在专用硬件或者共享设施上,这取决于加载方式。(这一块还不太理解) master之外的机器都是DataNode和NodeManager。他们属于slaves。
2017-04-28 16:31:30 514
原创 hadoop2.7.2学习笔记01-启动单节点集群
准备:在linux平台上部署单节点hadoop集群。要求安装有java和ssh。需要启动sshd 服务,请参考 sshd服务开启 。 步骤: 1、在apache官网下载hadoop distribution,并解压。 2、在etc/hadoop/hadoop-env.sh文件中做如下的编辑: export JAVA_HOME = /usr/java/late
2017-04-28 10:17:29 561
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人