
大数据-云计算
文章平均质量分 64
荒岛码农
这个作者很懒,什么都没留下…
展开
-
Hadoop源码分析11: IPC流程(6)volatile
1.Server 的 runningpublic abstract class Server { volatile boolean running =true; // true while server runs publicsynchronized void join() throwsInterruptedException { while (ru原创 2014-05-28 08:47:35 · 383 阅读 · 0 评论 -
Hadoop源码分析24 JobTracker启动和心跳处理流程
1.初始化和启动JobTracker 生成一个JobQueueTaskScheduler taskScheduler=(TaskScheduler)ReflectionUtils.newInstance(schedulerClass,conf); 生成一个实现 InterTrackerProtocol、JobSubmissionProtocol、RefreshUse原创 2014-05-28 08:48:17 · 491 阅读 · 0 评论 -
十道海量数据处理面试题与十个方法大总结
http://blog.youkuaiyun.com/v_JULY_v/article/details/6279498第一部分、十道海量数据处理面试题1、海量日志数据,提取出某日访问百度次数最多的那个IP。 首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000转载 2015-09-29 09:58:47 · 568 阅读 · 0 评论 -
Hadoop源码分析31 TaskTracke成员
1、启动 HttpServer this.server=newHttpServer("task",httpBindAddress, httpPort, httpPort == 0, conf, aclsManager.getAdminsAcl());server.start();2、生成 DefaultTaskControllertaskControlle原创 2014-05-28 08:48:34 · 643 阅读 · 0 评论 -
JMX 监控 Hadoop
1. 配置所有节点的$HADOOP_HOME/conf/hadoop-env.sh 文件exportHADOOP_HOME=/opt/hadoop-1.0.0exportHADOOP_NAMENODE_OPTS="-Dcom.sun.management.jmxremote.port=9191-Dcom.sun.management.jmxremote.ssl=false-Dcom.原创 2014-05-28 08:48:15 · 2233 阅读 · 0 评论 -
Hadoop源码分析15:IPC流程(10)ClientConnection 复用
两个连接请求发出后,生成ClientConnectionId对象,只要两个ClientConnectionId对象的hashcode相同,就视为一个同一个连接,从而复用ClientConnection publicRPCInvoker(Class《?extendsVersionedProtocol》protocol, InetSocketAddress ad原创 2014-05-28 08:47:44 · 673 阅读 · 0 评论 -
Hadoop源码分析14: IPC流程(9) SelectionKey
1.SelectionKey.OP_ACCEPT publicclassServerListenerextendsThread{ publicServerListener(Serverserver) throwsIOException{ this.server=server; addre原创 2014-05-28 08:47:42 · 406 阅读 · 0 评论 -
Hadoop源码分析13: IPC流程(8) Server的wait、notify
1.Server的wait、notify public abstractclass Server { public synchronized void join()throws InterruptedException { while (running){ wait();原创 2014-05-28 08:47:40 · 436 阅读 · 0 评论 -
Hadoop源码分析12: IPC流程(7)容器
1.Server的 callQueue 典型的生产者-消费者模式 public abstractclass Server { BlockingQueue<ServerCall> callQueue; } publicclass ServerConnection { privatevoid processData(by原创 2014-05-28 08:47:38 · 428 阅读 · 0 评论 -
Hadoop源码分析8: IPC流程(3)客户端的clients、connections、calls复用
1. RPCClientCache 中的 clientspublicclass RPCClientCache { private Map<SocketFactory,Client> clients = new HashMap<SocketFactory,Client>(); synchronizedClient getClient(Configur原创 2014-05-28 08:47:29 · 549 阅读 · 0 评论 -
Hadoop源码分析30 JobInProgress 的 TaskInProgress 执行情况
提交命令行:hadoop jar /opt/hadoop-1.0.0/hadoop-examples-1.0.0.jar wordcount /user/admin/in/yellow.txt /user/admin/out/3JobTracker已生成JobInProgress(job_201404200630_0001),包括以下TaskInProgress:maps[0](t原创 2014-05-28 08:48:32 · 754 阅读 · 0 评论 -
Hadoop源码分析25 JobInProgress 主要容器
1. JobInProgress中的容器1.1maps、reduces、cleanup、setup TaskInProgress maps[]= newTaskInProgress[0]; TaskInProgress reduces[]= newTaskInProgress[0]; TaskInProgress cleanup[]= newTa原创 2014-05-28 08:48:20 · 487 阅读 · 0 评论 -
HDFS 读写流程概要
1、节点介绍(1)、NameNode管理文件系统的命名空间,维护文件系统树及整棵树内所有的文件和目录,以两个文件形式永久保存在本地磁盘上:命名空间镜像文件fsimage 和 编辑日志文件edits。namenode也记录每个文件中各个块所在的数据节点信息。(2)、DataNode是文件系统的工作节点,根据需要存储并检索数据块,并定期向namenode发送它们所存储的块的列表。(原创 2014-05-28 08:48:06 · 472 阅读 · 0 评论 -
Hadoop源码分析20:datanode概要
1.数据节点储存 org.apache.hadoop.hdfs.server.datanode.DataStoragepublicclassDataStorageextendsStorage{ //Constants finalstaticStringBLOCK_SUBDIR_PREFIX="subdir"; finalstaticStringBL原创 2014-05-28 08:47:56 · 528 阅读 · 0 评论 -
Hadoop源码分析18:common包中的fs.FileSystem
1. Hadoop 抽象文件系统 org.apache.hadoop.fs.FileSystem,具体HDFS是这个抽象类的子类publicabstractclassFileSystemextendsConfiguredimplementsCloseable{ publicstaticfinalStringFS_DEFAULT_NAME_KEY="原创 2014-05-28 08:47:51 · 1109 阅读 · 0 评论 -
Hadoop源码分析10: IPC流程(5) Atomic
1.Class类的running 用于主线程的Client 和若干 ClientConnection 线程之间 共享Client的running变量public classClient { public AtomicBoolean running = newAtomicBoolean(true); // if client runs public void stop()原创 2014-05-28 08:47:33 · 440 阅读 · 0 评论 -
Hadoop源码分析17:IPC中的ThreadLocal
待续原创 2014-05-28 08:47:49 · 385 阅读 · 0 评论 -
Hadoop源码分析16: IPC流程(11) 整体流程
1.发送请求:query.getCPUStatus("Intel"); 2.传送到:RPCInvoker.invoke(Object proxy, Method method, Object[]args)其中method:publicabstract org.hadoopinternal.ipc.copy.CPUStatusorg.hadoopinternal.ipc.c原创 2014-05-28 08:47:46 · 476 阅读 · 0 评论 -
Hadoop源码分析9:IPC流程(4) Client 的 wait() 和 notify()
1. ClientCall的 wait() 和 notify()public class Client { public Writablecall(Writable param, ClientConnectionId remoteId) throwsInterruptedException, IOException { Cl原创 2014-05-28 08:47:31 · 464 阅读 · 0 评论 -
Hadoop源码分析5: RPC基本线程
1. 数据记录FileStatuspublic class FileStatus implements Writable { private String filename; private long time; static { // register IPCFileStatus WritableFactories.set原创 2014-05-28 08:47:18 · 702 阅读 · 0 评论 -
【转载】Mongodb VS Hbase
http://hi.baidu.com/i1see1you/item/783a701f39a87549e75e06ea1.Mongodbbson文档型数据库,整个数据都存在磁盘中,hbase是列式数据库,集群部署时每个familycolumn保存在单独的hdfs文件中。2.Mongodb 主键是“_id”,主键上面可以不建索引,记录插入的顺序和存放的顺序一样,hbase的主键就是转载 2014-05-28 08:45:06 · 376 阅读 · 0 评论 -
[原创]安装Sqoop并验证
1.下载包并配置 下载hadoop-0.20.2-CDH3B4.tar.gz、sqoop-1.2.0-CDH3B4.tar.gz,并解压,将Hadoop-0.20.2-CDH3B4 目录下hadoop-core-0.20.2-CDH3B4.jar 复制到Sqoop-1.2.0-CDH3B4的lib目录下。修改Sqoop-1.2.0-CDH3B4/bin/configure-sq原创 2014-05-28 08:44:44 · 673 阅读 · 0 评论 -
Hadoop源码分析19:hdfs概要
1. 客户端与NameNode接口 org.apache.hadoop.hdfs.protocol.ClientProtocolpublic interface ClientProtocolextends VersionedProtocol{ publicintGET_STATS_CAPACITY_IDX=0; publicintGET_STATS_USED_I原创 2014-05-28 08:47:53 · 426 阅读 · 0 评论 -
Hadoop源码分析7: IPC流程(2) 流程
1.服务器端启动流程(1) RPC类构建Server对象,Server对象包括Server.Listener线程 (2) 构建Server.Listener线程,acceptChannel.socket绑定IP和端口,acceptChannel注册到selector接收事件(3) Server.Listener线程包括若干Server.Listener.Reader线程,构建并运行Serv原创 2014-05-28 08:47:27 · 401 阅读 · 0 评论 -
Hadoop源码分析2: NIO Socket 分析
1.客户端公司产品的客户端的使用阻塞式的Socket,并没有使用NIO,在Hadoop中遇到再议。2.服务器端2.1 阻塞式例子程序public class BIOServer { static class Hanlder extendsThread { privateSocket socket; publicHanlder(Socket s原创 2014-05-28 08:47:11 · 603 阅读 · 0 评论 -
Hadoop源码分析32 TaskTracker流程
提交作业:hadoop jar /opt/hadoop-1.0.0/hadoop-examples-1.0.0.jarwordcount /user/admin/in/LICENSE.txt /user/admin/out/26 , 只有一个Map任务 server3-RPC请求:getProtocolVersion(TaskUmbilicalProtocol, 19原创 2014-05-28 08:48:36 · 1643 阅读 · 0 评论 -
Hadoop源码分析28 JobTracker 处理JobClient请求
提交命令行:hadoop jar/opt/hadoop-1.0.0/hadoop-examples-1.0.0.jar wordcount/user/admin/in/yellow.txt /user/admin/out/3 RPC请求:getProtocolVersion(org.apache.hadoop.mapred.JobSubmissionProtocol,28) from 1原创 2014-05-28 08:48:26 · 544 阅读 · 0 评论 -
Hadoop源码分析26 JobTracker主要容器和线程
2. JobTracker中的容器2.1 nodesAtMaxLevel、hostnameToNodeMap //(hostname --> Node(NetworkTopology)) Map<String,Node> hostnameToNodeMap = Collections.synchronizedMap(new TreeMap<String,Node>())原创 2014-05-28 08:48:22 · 663 阅读 · 0 评论 -
Hadoop源码分析22:dfsclient概要
待续原创 2014-05-28 08:48:00 · 422 阅读 · 0 评论 -
Hadoop源码分析21:namenode概要
待续原创 2014-05-28 08:47:58 · 356 阅读 · 0 评论 -
Hadoop源码分析6: RPC基本线程
1.客户端执行RPC.getProxy Queryquery=(Query) RPC.getProxy(Query.class, MyServer.IPC_VER, addr, newConfiguration()); 即调用方法:publicstatic VersionedProtocol getProxy( Class<<spanlang="ZH-原创 2014-05-28 08:47:20 · 475 阅读 · 0 评论 -
[原创]Hadoop Pig 数据处理作业
原题:有一访问记录的日志文件access_log.txt,统计每个IP的访问次数。access_log.txt内容如下所示:Pig 数据处理作业" TITLE="[原创]Hadoop Pig 数据处理作业" />解答:1将access_log.txt导入HDFSPig 数据处理作业" /> 2.利用Hadoop Stream 处理access_log.txt,只取记录第一原创 2014-05-28 08:44:31 · 553 阅读 · 0 评论 -
[原创]全分布模式下 HBase 安装
在三台CentOS虚拟机server1,server2, server3上已经成功安装全分布模式的Hadoop集群,其中server1为NameNode,server2, server3为DataNode。在此基础上安装HBase全分布模式集群,server1为HMaster,server2, server3为HRegionServer 1. 下载hbase-0.90.5并解压H原创 2014-05-28 08:44:27 · 544 阅读 · 0 评论 -
Hadoop源码分析29 split和splitmetainfo
输入文件:hdfs://server1:9000/user/admin/in/yellow.txt1.splitsformatMinSplitSize:1;minSplitSize=conf("mapred.min.split.size"):1;minSize=Math.max(formatMinSplitSize, minSplitSize)=1;maxSize=conf("m原创 2014-05-28 08:48:29 · 757 阅读 · 0 评论 -
Hadoop源码分析27 JobTracker空载处理心跳
JobTracker无任务时处理心跳流程 HeartBeat格式:{restarted=true,initialContact=true,acceptNewTasks=true,responseId=-1,status=TaskTrackerStatus {failures=0,trackerName="tracker_server3:localhost.localdomain/127原创 2014-05-28 08:48:24 · 504 阅读 · 0 评论 -
Hadoop源码分析6: Buffer 细节
Buffer 细节" TITLE="Hadoop源码分析6: Buffer 细节" />0 <= position <= limit <= capacityBuffer.clear(): 清空数据。limit = capacity,position = 0Buffer.flip(): 调整指针供读写。limit = position,position = 0Bu原创 2014-05-28 08:47:22 · 395 阅读 · 0 评论 -
Hadoop源码分析7: IPC流程(1) 主要类
1.服务器端主要类public abstractclass Server{ public static final ByteBuffer HEADER =ByteBuffer.wrap("hrpc".getBytes()); public static final byte CURRENT_VERSION =4; private static finalTh原创 2014-05-28 08:47:24 · 504 阅读 · 0 评论 -
[原创]独立模式安装Hive
独立模式安装Hive 在三台CentOS虚拟机server1、server2、 server3上已经成功安装全分布模式的Hadoop集群,其中server1为NameNode,server2、server3为DataNode。本人在server1即NameNode上安装Hive,并使用MySQL数据库存放metadata。 1.首先配置MySQL安装MySQL[root@原创 2014-05-28 08:44:42 · 489 阅读 · 0 评论 -
【转载】如何理解Hadoop-Hbase原理
原文:http://space.itpub.net/26686207/viewspace-7469771 我们常说HBase是“数据即日志”的数据库,它是怎样修改和删除数据的?和Oracle这类传统的RDBMS有什么区别?答:首先Hbase中的一个“元素”是由行键、列族名、限定符、时间戳唯一标识的并且行键作为数据行在表里的唯一标识,我们只有通过行键来访问列族别无他法。修改数据:转载 2014-05-28 08:44:29 · 518 阅读 · 0 评论 -
[原创]全分布模式下Hadoop安装
1. 在Windows操作系统下安装软件VMware Workstation,并安在此软件中安装三台CentOS系统虚拟机server1, server2,server3, 选择网络连接方式为桥接。server1, server2, server3 的IP分别设置为192.168.1.201,192.168.1.202,192.168.1.203 Hadoop 安装" TITLE="原创 2014-05-28 08:44:25 · 514 阅读 · 0 评论