Fork me on GitHub
摘要: SPI简介 SPI是Service Provider Interface的缩写,即服务提供接口(翻译出来好绕口,还是不翻译的好),实质上是接口,作用是对外提供服务。 SPI是Java的一种插件机制,可以不用修改源代码实现新功能的扩展。 主要有如下几个步骤: 1. 实现SPI接口 2. 在项目的MET 阅读全文
posted @ 2018-07-24 09:17 单行线的旋律 阅读(1029) 评论(1) 推荐(1) 编辑
摘要: 这篇文章是Dubbo源码分析的开端,与其说这篇文章是Dubbo源码分析,不如是spring源码分析,因为大部分都是在分析spring如何解析xml配置文件的,为了与后面的Dubbo源码分析保持一致,姑且这样命名了。 使用Dubbo框架开发分布式服务时,一般使用spring进行管理,在spring的配 阅读全文
posted @ 2018-07-23 10:19 单行线的旋律 阅读(1059) 评论(0) 推荐(0) 编辑
摘要: 大家都知道使用java反射可以在运行时动态改变对象的行为,甚至是private final的成员变量,但并不是所有情况下,都可以修改成员变量。今天就举几个小例子说明。 基本数据类型 String类型 Integer类型 总结 首先看下对基本类型的修改: /** * @author Cool-Codi 阅读全文
posted @ 2018-05-15 14:42 单行线的旋律 阅读(4645) 评论(0) 推荐(1) 编辑
摘要: RPC,全称为Remote Procedure Call(远程过程调用)。通俗一点讲就是在本地调用远程服务器上的功能。实现远程调用至少需要满足以下几个条件: 1.网络通信 2.序列化与反序列化 3.反射 远程通信是远程调用的前题,只有经过序列化后的数据才能在网络上传输,传输到服务器端后需要反序列化成 阅读全文
posted @ 2018-04-22 15:23 单行线的旋律 阅读(576) 评论(0) 推荐(0) 编辑
摘要: 最近在工作中,使用CASE WHEN语句的时候,总是出现异常,查看日志是由于数组超界。不知所以然,然后进行了一步步分析,发现这是hive本身的bug,分享出来,一是为了记录,二是想让大家共同看看,欢迎指正。 使用的是CDH5.14.0版本。 CDH5.14.0使用的HIVE版本 自建日志表log: 阅读全文
posted @ 2018-04-04 17:09 单行线的旋律 阅读(1811) 评论(0) 推荐(0) 编辑
摘要: Hive支持自定义map与reduce script。接下来我用一个简单的wordcount例子加以说明。使用Python开发(如果使用Java开发,请看这里)。 一、map与reduce脚本 map脚本(mapper.py) reduce脚本(reducer.py) 注意一点的是,不能使用for 阅读全文
posted @ 2018-04-02 16:55 单行线的旋律 阅读(609) 评论(0) 推荐(0) 编辑
摘要: Hive支持自定义map与reduce script。接下来我用一个简单的wordcount例子加以说明。 如果自己使用Java开发,需要处理System.in,System,out以及key/value的各种逻辑,比较麻烦。有人开发了一个小框架,可以让我们使用与Hadoop中map与reduce相 阅读全文
posted @ 2018-04-02 16:49 单行线的旋律 阅读(419) 评论(0) 推荐(0) 编辑
摘要: 众所周知,数据库必须要能够支持并发。无论在任何时候,允许同一时刻,多个用户能够同时读取或写入。没有必要给用户提供API显示的获取锁,所以所有的锁都是隐式获取的。 在Hive中有两种类型的锁: 共享锁Shared(S) 排它锁Exclusive(X) 就如它们的名字一样,可以在同一时刻,获取多个共享锁 阅读全文
posted @ 2018-04-02 15:35 单行线的旋律 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 大家都知道,Apache Hadoop的配置很繁琐,而且很零散,为此Cloudera公司提供了Clouder Manager工具,而且还封装了Apache Hadoop,flume,spark,hive,hbase等大数据产品形成自己特色的CDH产品,再使用CM进行安装,很大程度上方便了集群的搭建, 阅读全文
posted @ 2018-03-21 16:57 单行线的旋律 阅读(11950) 评论(0) 推荐(1) 编辑
摘要: Replica Set在国内叫做副本集,简单来说就是一份数据在多个地方存储。 1.为什么要用副本集,什么时候使用副本集? 有人说一份数据在多个地方存储占用了大量的额外空间,是一种浪费。 这个说法不能说对也不能说不对,要从不同的角度考虑。如果公司的业务量很少,数据不多,一台服务器就可以搞定,那就不需要 阅读全文
posted @ 2018-03-16 18:41 单行线的旋律 阅读(1666) 评论(0) 推荐(0) 编辑