上一页 1 2 3 4 5 6 7 8 9 10 ··· 15 下一页

2012年8月13日

Hadoop:The Definitive Guid 总结 Chapter 10 管理Hadoop

摘要: 1.HDFS1).永久性数据结构A.NameNode的目录结构NameNode被格式化之后,将产生所示的目录结构:${dfs.name.dir}/current/VERSION /edits /fsimage /fstimedfs.name.dir属性中列出的目录的内容都是相同,同为如上所示的目录结构VERSION文件是一个Java属性文件,一般内容如下:#Tue May 29 11:05:47 CST 2012namespaceID=1545978810cTime=0storageType=NAME_NODElayoutVersion=-18layoutVersion是一个负数,描... 阅读全文

posted @ 2012-08-13 18:53 as_ 阅读(1204) 评论(0) 推荐(0) 编辑

Hadoop:The Definitive Guid 总结 Chapter 9 构建MapReduce集群

摘要: 1.集群规范1)配置规范一般Hadoop DataNode和TaskTracker节点典型机器具有吐下规范:处理器:2个四核 2~2.5 GHz CPU内存:16~24 ECC RAM存储器:4*1TB SATA 磁盘网络:千兆以太网2).网络拓扑Hadoop集群架构包含两级网络拓扑,如下图所示,机架拓扑由两个网络位置描述,例如:/交换机1/机架1 和 /交换机1/机架2。这个架构的一突出特点是:同一机架内部节点间的总宽带要远高于不同机架间的节点的宽带2.集群的构建原装、SSH配置、Hadoop配置这里只给出Yarn的典型伪分布配置 分布式配置与此差别不大详见http://hadoop.apa 阅读全文

posted @ 2012-08-13 10:58 as_ 阅读(1180) 评论(0) 推荐(0) 编辑

2012年8月12日

Hadoop:The Definitive Guid 总结 Chapter 8 MapReduce的特性

摘要: 1.计数器计数器是一种收集Job统计的有效手段,用于质量控制或应用级统计。计数器的应用使得获取统计数据比使用日志文件获取数据更加容易。1).内置计数器Hadoop的内置计数器用来描述Job的各项指标,例如已处理的字节数和记录数,输入数据量和输出数据量。内置计数器被分为几类(group):实际上每类都包含Task计数器和Job计数器A.Task计数器Task计数器用来收集整个执行过程中Task所生成的信息,这些结果的通过Job里面所有Task聚集(aggregate)统计出来,例如:MAP_INPUT_RECORDS是用来统计所有map读入的记录数目,Take计数器功能同样也被Task Atte 阅读全文

posted @ 2012-08-12 20:30 as_ 阅读(2611) 评论(0) 推荐(1) 编辑

Hadoop:The Definitive Guid 总结 Chapter 7 MapReduce的类型与格式

摘要: MapReduce数据处理模型非常简单:map和reduce函数的输入和输出是键/值对(key/value pair)1.MapReduce的类型Hadoop的MapReduce一般遵循如下常规格式:map(K1, V1) –> list (K2, V2)combine(K2, list(V2)) –> list(K2, V2)partition(K2, V2) –> integerreduce(K2, list(V2)) –> list(K3, V3)map:对数据进行抽去过滤数据,组织key/value对等操作.combine:为了减少reduce的输入和Hadoo 阅读全文

posted @ 2012-08-12 09:45 as_ 阅读(3886) 评论(1) 推荐(4) 编辑

2012年8月11日

Hadoop:The Definitive Guid 总结 Chapter 6 MapReduce的工作原理

摘要: 1.剖析MapReduce作业运行机制1).经典MapReduce--MapReduce1.0整个过程有有4个独立的实体客户端:提交MapReduceJobTracker:协调作业的运行TaskTracker:运行作业划分后的任务HDFS:用来在其他实体之间共享作业文件以下为运行整体图A.作业的提交JobClient的runJob是用于新建JobClient实例并调用其submitJob()方法的便捷方式,提交Job后,runJob()每秒轮询检测作业的进度,随时监控Job的运行状态。其中JobClient的submitJob()方法所实现的作业提交过程:向JobTracker请求一个新的作业 阅读全文

posted @ 2012-08-11 13:08 as_ 阅读(4352) 评论(0) 推荐(0) 编辑

UNP总结 Chapter 2 传输层:TCP、UDP和SCTP

摘要: 注,总结中暂时忽略SCTP1.总图虽然称为“TCP/IP”协议族,但是本协议族还有许多其他成员,见下图2.用户数据包协议(UDP)UDP 套接字写入一个消息,该消息接着被封装(encapsulating)进一个UDP数据报,该UDP数据报又进而被封装成一个IP数据报,然后发送到目的地。UDP不保证UDP数据报到达其最终目的地,不保证各个数据报的先后顺序跨网络保持不变,也不保证每个数据报只到达一次。用UDP进行网络编程所碰到的问题是缺乏可靠性,我们也称UDP提供无连接的(connectionless)服务,因为UDP客户与服务器不必存在长期的关系。3.传输控制协议(TCP)首先,TCP提供客户与 阅读全文

posted @ 2012-08-11 10:43 as_ 阅读(1563) 评论(0) 推荐(1) 编辑

2012年8月10日

Hadoop:The Definitive Guid 总结 Chapter 5 MapReduce应用开发

摘要: 用MapReduce来编写程序,有几个主要的特定流程,首先写map函数和reduce函数,最好使用单元测试来确保函数的运行符合预期,然后,写一个驱动程序来运行作业,要看这个驱动程序是否可以运行,之后利用本地IDE调试,修改程序实际上权威指南的一些配置已经过时 所以这里很多地方不做介绍1.配置APIHadoop拥有很多xml配置文件,格式遵从一般xml的要求 见实例<!--Example:5-1. A simple configuration file, configuration-1.xml--><?xml version="1.0"?><co 阅读全文

posted @ 2012-08-10 13:35 as_ 阅读(1093) 评论(0) 推荐(0) 编辑

Hadoop:The Definitive Guid 总结 Chapter 4 Hadoop I/O

摘要: 1.数据的完整性1).HDFS的数据完整性HDFS以透明方式校验所有写入它的数据,并在默认设置下,会在读取数据时验证校验和。针对数据的每个io.bytes.per.checksum字节都会创建一个单独的校验和。默认值为512字节;DataNode负责在存储数据(包括数据的校验和)之前验证它们收到的数据,其中管道线的最后一个DataNode负责验证校验和,如果此datanode检测到错误,客户端会收到一个checksum Exception。客户端从datanode上读取数据时,也会验证校验和,将其与datanode上存储的校验和进行比较。每个datanode都维护着一个连续的校验和和验证日志, 阅读全文

posted @ 2012-08-10 10:51 as_ 阅读(1154) 评论(0) 推荐(0) 编辑

2012年8月9日

Hadoop:The Definitive Guid 总结 Chapter 3 Hadoop分布式文件系统

摘要: 1.HDFS的设计HDFS设计的适合对象:超大文件(TB级别的文件)、流式数据访问(一次写入,多次读取)、商用硬件(廉价硬件)HDFS设计不适合的对象:低时间延迟的数据访问、大量的小文件、多用户写入,任意修改文件2.HDFS的概念1).数据块(Block)HDFS中Block的大小默认是64M,小于块大小的的文件并不占据整个块的全部空间(而是将文件大小作为块的大小.比如要存放的文件是1k,但是系统的Block默认是64MB,存放之后块的大小是1k,不是64MB.文件若是大于64MB,则分多快进行存储.)使用Blocks的好处:可以存储大文件,一个文件的大小可以大于网络中任意一个单块硬盘的容量把 阅读全文

posted @ 2012-08-09 16:24 as_ 阅读(1309) 评论(1) 推荐(0) 编辑

2012年8月8日

newInstance() 和 new 的区别

摘要: (来源网络)用newInstance与用new是有区别的,区别在于创建对象的方式不一样,前者是使用类加载机制,那么为什么会有两种创建对象方式?这个就要从可伸缩、可扩展,可重用等软件思想上解释了。 Java中工厂模式经常使用newInstance来创建对象,因此从为什么要使用工厂模式上也可以找到具体答案。 例如: Class c = Class.forName(“A”);factory = (AInterface)c.newInstance(); 其中AInterface是A的接口,如果下面这样写,你可能会理解: String className = "A";Class c 阅读全文

posted @ 2012-08-08 23:30 as_ 阅读(501) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 8 9 10 ··· 15 下一页

导航