Hadoop 2.2.0正式版特性分析 Apache官网的说明:15 October, 2013: Release 2.2.0 availableApache Hadoop2.2.0 is the GA release of Apache Hadoop 2.x.Users areencouraged to immediately move to 2.2.0 since this release is significantl
Impala重点问题列表 Impala重点问题列表(截止到1.01)从目前的情况来看,impala的稳定性和易用性还有待提高,在生产环境中部署还存在比较大的风险。未解决:· impala-shell命令不兼容Python 2.4Impala 1.0.1中的impala-shell命令与Python 2.4不兼容, 后者是Red Hat 5的默认Python.Impala 1.0中的im
Hadoop中的RPC实现——服务器端通信组件 在前一篇博文中,我已经详细的讲解了Hadoop RPC中客户端通信组件的实现,与之对应的就会有一套服务器端通信组件的实现。Hadoop RPC的服务器端采用了多线程的设计,即服务器会开启多个处理器(后天线程)来处理所有客户端发送过来的RPC调用请求,所以在服务器端主要包括三个组件:监听器(Listener)、处理器(多个Handler)、响应发送器(Responder)。接下来我将主要围绕这三大组
Hadoop中的RPC实现——客户端通信组件 在Hadoop中为了方便集群中各个组件之间的通信,它采用了RPC,当然为了提高组件之间的通信效率以及考虑到组件自身的负载等情况,Hadoop在其内部实现了一个基于IPC模型的RPC。关于这个RPC组件的整体情况我已绍经在前面的博文中介绍过了。而在本文,我将结合源代码详细地介绍它在客户端的实现。 先来看看与RPC客户端相关联的一些类吧!1.Client类
Hadoop中的RPC实现(概述) Hadoop作为一个存储与服务的基础性平台,同时它的内部有采用了master/slave架构,那么其内部通信和与客户端的交互就是必不可少的了。Hadoop在实现时抛弃了JDK自带的一个RPC实现——RMI,而自己基于IPC模型实现了一个高效的轻量级RPC。整体结构 在IPC包中,最重要的3个类是ServerC,lient和RPC,它们具有层次化的结构。 1.R
Impala各版本新特性 自0.3之后的重点新特性1.0· 支持ALTER TABLE。· 支持通过Hints指定join策略。支持的Hints:o [broadcast]:broadcast join策略(将小表放到所有节点上与大表进行分片join)o [shuffle]: partitionedjoin策略(分片join)· 支持
Hotspot垃圾收集器介绍 注意垃圾回收器Garbage Collector(简称Collector)和垃圾回收Garbage Collection(简称GC)的区别。Collector的职责分配内存。保证有引用的内存不被释放。回收没有指针引用的内存。对象被引用称为活对象,对象没有被引用称为垃圾对象/垃圾/垃圾内存,找到垃圾对象并回收是Collector的一个主要工作,
JVM运行时内存空间结构 JVM执行Java程序的过程中管理的内存空间,包括下列几个区域:程序计数器(Program CounterRegister)· 线程私有,占用空间很小。· 线程所执行代码行号指示器。· 解释器通过计数器的值选择下一条执行的字节码指令。· 线程执行Native方法时值为空。·
MapReduce之Join操作(4) 半连接(semijoin) 之前已经讨论了reduce-side join和map-side join(replicated join),第一种较通用但效率不高,第二种对于表的大小有需求。然而即使存在表的大小不对称的情况,在许多情况下较小的表仍然不能存到内存中。这里讨论一下半连接(semijoin),这是传统的关系型数据库中的概念。它对应这样一种常见需求:用户只关心合并之后的某些
MapReduce之Join操作(3) 原文链接:http://bjyjtdj.iteye.com/blog/1454803 本文讲述如何在map端完成join操作。之前我们提到了reduce-join,这种方法的灵活性不错,也是理所当然地能够想到的方法;但这种方法存在的一个最大的问题是性能。大量的中间数据需要从map节点通过网络发送到reduce节点,因而效率比较低。实际上,两表的join操作中很多都是无用的数据。现在考
MapReduce之Join操作(2) 原文链接:http://bjyjtdj.iteye.com/blog/1453451上一篇介绍了 Repartition Join 的基本思想,实践出真知,具体的实现中总是存在各种细节问题。下面我们通过具体的源码分析来加深理解。本文分析的是 Hadoop-0.20.2 版本的 datajoin 代码,其它版本也许会有变化,这里暂且不论。参看源码目录下,共实现有 7 个类,分别是:
MapReduce之Join操作(1) 原文链接:http://bjyjtdj.iteye.com/blog/1453410在关系型数据库中 join 是非常常见的操作,各种优化手段已经到了极致。在海量数据的环境下,不可避免的也会碰到这种类型的需求,例如在数据分析时需要连接从不同的数据源中获取到的数据。不同于传统的单机模式,在分布式存储的下采用 MapReduce 编程模型,也有相应的处理措施和优化方法。本文对 Hado
Impala查询流程日志分析 UHP博客文章地址:http://yuntai.1kapp.com/?p=1060原创文章,转载请注明出处:http://blog.csdn.net/wind5shy/article/details/8563355物理环境主节点10.28.171.33处理节点110.28.171.40处理节点2
Impala查询过程详解 UHP博客文章地址:http://yuntai.1kapp.com/?p=1043原创文章,转载请注明出处:http://blog.csdn.net/wind5shy/article/details/8562844流程流程图 用户通过ODBC/Beeswax Thrift API提交query到某个impalad。Impalad的Qu
Hive原理与不足 UHP博客文章地址:http://yuntai.1kapp.com/?p=1035原创文章,转载请注明出处:http://blog.csdn.net/wind5shy/article/details/8560059架构UI:用户提交查询请求与获得查询结果。包括三个接口:命令行(CLI)、Web GUI(Hue)和客户端。Driver:接受查询请求与返回查
Google Dremel 原理 - 如何能3秒分析1PB 原文链接:http://www.yankay.com/google-dremel-rationale/简介Dremel 是Google 的“交互式”数据分析系统。可以组建成规模上千的集群,处理PB级别的数据。MapReduce处理一个数据,需要分钟级的时间。作为MapReduce的发起人,Google开发了Dremel将处理时间缩短到秒级,作为MapReduce的有
Hive与并行数据仓库的体系结构比较 原文链接:http://db3.iteye.com/blog/807787最近分析和比较了Hive和并行数据仓库的架构,本文记下一些体会。 Hive是架构在Hadoop MapReduce Framework之上的开源数据分析系统。 Hive具有如下特点: 1. 数据以HDFS文件的形式存储,从而可以很方便的使用外部文件 2. 元数据存储独立于数据存储之外,从而解耦合元
Hive 随谈(六)– Hive 的扩展特性 原文链接:http://www.alidata.org/archives/604Hive 是一个很开放的系统,很多内容都支持用户定制,包括:文件格式:Text File,Sequence File内存中的数据格式: Java Integer/String, Hadoop IntWritable/Text用户提供的 map/reduce 脚本:不管什么语言,利
Hive 随谈(五)– Hive 优化 原文链接:http://www.alidata.org/archives/595Hive 针对不同的查询进行了优化,优化可以通过配置进行控制,本文将介绍部分优化的策略以及优化控制选项。列裁剪(Column Pruning)在读数据的时候,只读取查询中需要用到的列,而忽略其他列。例如,对于查询: SELECT a,b FROM T WHERE e 其中,T 包
Hive 随谈(四)– Hive QL 原文链接:http://www.alidata.org/archives/581Hive 的官方文档中对查询语言有了很详细的描述,请参考:http://wiki.apache.org/hadoop/Hive/LanguageManual ,本文的内容大部分翻译自该页面,期间加入了一些在使用过程中需要注意到的事项。Create TableCREATE [EXTERNAL] T