- 博客(190)
- 资源 (8)
- 收藏
- 关注
原创 git(二)-git添加-删除-修改与日志
题外话: echo ‘hello world’ > test2.txt 如果此命令敲错了,想跳到开头快捷键:ctrl+A,跳到命令结尾:ctrl+E删除操作 第一种删除(git rm ): 我们新建一个test.txt文件提交到远程版本库Administrator@CeaserWang MINGW64 /e/Study/mygit (master)$ lstest.txt test2.
2017-06-28 23:08:02 2345
原创 git(一)-git入门,版本库初始化以及常用命令操作
初始化版本库 第一步:git的安装,到官网下载即可(https://git-scm.com/)Windows下傻瓜式安装,安装完毕会生成git shell客户端,这个客户端在Windows下是一个模拟Linux的窗口,支持大部分的Linux的命令操作: 第二部:创建一个目录,然后进入目录,将此文件夹下作为项目的root,然后执行:git init 初始化版本库: 初始化之后在文件夹下的所有操作
2017-06-26 22:06:11 710
原创 hive原理与源码分析-ACID及总结(八)
ACID是什么? 数据库事务的四个特征 Atomicity原子性:要么成功要么失败,不会残留一半的数据 Consisitency一致性:一旦操作完成,后续的操作可以看到操作的结果 Isolation隔离性:一个用户的未完成操作不会对其它用户产生影响 Durability持久性:一旦操作完成,操作将会持久化,不会受系统故障得影响Hive ACID Hive 0.13 以后的版本
2017-05-29 14:48:59 1598
原创 hive原理与源码分析-服务化:LLAP、HiveServer2、MetaStore(七)
hive流程回顾 LLAP LLAP是Live Long and Prosper(生生不息,繁荣昌盛)的缩写,现已故的美国演员、导演伦纳德·尼莫伊的每一条推文都用它来做结束语。伦纳德·尼莫伊在美国电视剧《星际迷航》中扮演斯波克而成名。是当前的美国网络流行语。LLAP本来是想表达Long Lived Process (长驻进程) 后来借用了星际迷航的东西,搞成了LLAP,Live Lon
2017-05-21 16:43:39 2810
原创 hive原理与源码分析-物理执行计划与执行引擎(六)
Hive执行 相关配置 hive.execution.engine - Hive执行引擎 mr - 在MapReduce上执行 tez - 在Tez上执行 spark - 在Spark上执行 hive.execution.mode – Hive执行模式 container - 在Yarn Container内执行Query Fragment
2017-05-20 10:04:35 4083
原创 hive原理与源码分析-UDxF、优化器及执行引擎(五)
什么是UDF? UDF的全称是User-Defined-Functions Hive中一共有三种UDF UDF(User-Defined Function):输入一行,输入一行,1->1 UDAF(User-Defined Aggregation Function):输入N行,输出一行,N->1 UDTF(User-Defined Table-generating Function
2017-05-14 22:45:45 3076
原创 hive原理与源码分析-算子Operators及查询优化器Optimizers(四)
Operator接口 https://insight.io/github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/exec/Operator.java?line=66 这个接口最重要的一个方法: /** * Process the row. * @param row The object r
2017-05-13 14:22:20 4119 1
原创 hive原理与源码分析-序列化器与反序列化器(三)
使用IDE调试一条简单的SQL 画出AST 画出Operator Tree已有表结构:hive> desc src;OKkey int value string 执行计划:hive> explain select * from sr
2017-05-07 22:28:49 4526
原创 hive原理与源码分析-语法分析器和语义分析器(二)
玩个游戏: 执行:find . -name ‘*.java’ | xargs grep –color ‘main(’ | awk ‘{print $1}’ | uniq | grep -v test 找到cli的执行main方法: https://insight.io/github.com/apache/hive/blob/master/cli/src/java/org/apache/hado
2017-05-07 15:46:58 6968 2
原创 hive原理与源码分析-hive源码架构与理论(一)
什么是Hive? 数据仓库:存储、查询、分析大规模数据 SQL语言:简单易用的类SQL查询语言 编程模型:允许开发者自定义UDF、Transform、Mapper、Reducer,来更简单地完成复杂MapReduce无法完成的工作 数据格式:处理Hadoop上任意数据格式的数据,或者使用优化的格式存储Hadoop上的数据,RCFile,ORCFile,Parquest 数据服务:H
2017-05-06 11:34:35 17972 2
原创 jconsole查看线程池内部对象在jvm内存变化
我们经常再使用线程时查看jvm的使用状况,以jconsole为例: 线程类MyRunnable :public class MyRunnable implements Runnable { @Override public void run() { System.out.println("run"); } @Override protected
2017-05-05 15:18:02 3018
原创 hive启动时报Relative path in absolute URI:${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D解决办法
hive启动时遇到以下错误:Exception in thread “main”java.lang.RuntimeException: java.lang.IllegalArgumentException:java.net.URISyntaxException: Relative path in absolute URI:{system:java.io.tmpdir%7D/{system:java.
2017-04-22 13:14:05 2074 1
原创 hadoop自定义排序、分组、分区(温度统计)
需求: 数据格式如下:1950-10-02 12:21:02 41℃。。。。。。。。。。。。。。。。。。。。。。。。要求: 1、计算1949-1955年,每年温度最高的时间 2、计算1949-1955年,每年温度最高前十天的温度 思路: 1、按照年份升序排序,同时每一年温度降序排序。 2、按照年份分组,每一年对应一个reduce任务。目的: 自定义排序、自定义分组、自定义分区
2017-04-18 22:25:06 778
原创 centos7编译hadoop2.7.3
转自:http://www.cnblogs.com/duking1991/p/6104304.html 文中所需工具下载地址:http://download.csdn.net/detail/wzq6578702/9817101 1.工具准备,最靠谱的是hadoop说明文档里要求具备的那些工具。到hadoop官网,点击source下载hadoop-2.7.3-src.tar.gz。解压之tar -
2017-04-17 22:02:22 595
转载 lease机制
原文:http://www.zenlife.tk/lease.md lease,即租约,是个强大的东西。lease用于缓存 先看缓存的lease。假设每个client都去server取数据,server可能成为性能瓶颈。然后就有了缓存,client每看看自己有没有相应的缓存,没有才去找server要。但是….有缓存就有server和client的不一致了。比如client A向server发送消
2017-04-05 21:15:22 1050
原创 线程池的实现原理
当向线程池提交一个任务之后,线程池是如何处理这个任务的呢?本节来看一下线程池 的主要处理流程,处理流程图所示。 从图中可以看出,当提交一个新任务到线程池时,线程池的处理流程如下。 1)线程池判断核心线程池里的线程是否都在执行任务。如果不是,则创建一个新的工作 线程来执行任务。如果核心线程池里的线程都在执行任务,则进入下个流程。 2)线程池判断工作队列是否已经满。如果工作队列没有满,则将新提
2017-03-31 15:56:13 6044 1
转载 如何浅显易懂地解说 Paxos 的算法?
作者:朱一聪 链接:https://www.zhihu.com/question/19787937/answer/82340987 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。之前的回答本来就觉得一些细节处并不严谨,现在回看=/=。我觉得严谨是一个讨论技术的必要条件,觉得现在也有能力写的严谨,于是想把回答改的尽量严谨,最后发现不如重写,顺便补充了我想补充的内
2017-03-27 11:56:51 3446
原创 jdk8-Collector收集器之并行流陷阱与原理
收集器Collector是jdk8中最为重要的接口之一,一个Collector可分为5个部分(第五个是我自己加上的): 1、supplier 2、accumulator 3、combiner 4、finisher 5、characteristicsCollector有三个泛型:public interface Collector<T, A, R> { /** * A fu
2017-03-26 17:42:21 3904 2
原创 jdk8-方法引用
方法引用的形式 方法引用的标准形式是:类名::方法名。(注意:只需要写方法名,不需要写括号)有以下四种形式的方法引用:类型 示例 引用静态方法 ContainingClass::staticMethodName 引用某个对象的实例方法 containingObject::instanceMethodName 引用某个类型的任意对象的实例方法 ContainingType::meth
2017-03-26 15:09:55 2308
原创 jdk8新加入的default方法
default方法的加入是为了兼容jdk8以前的版本的需要。 (1)当前有两个接口MyInterface和MyInterface1,它们都有相同名字的default方法,之后实现类Myclass同时implements了MyInterface和MyInterface1,同时Myclass实现了default方法,此时Myclass调用default调的是谁的? (2)一个接口I有一个defaul
2017-03-26 14:35:19 4042
原创 函数式编程(jdk8-常用函数式编程基础类)
在jdk8中什么是函数式接口: 1、被@FunctionalInterface注解修饰的。 2、接口里边只有一个非default的方法。 满足以上2个条件的即为函数式接口,ps:即使一个接口没有被@FunctionalInterface修饰,但是满足2,那么这样的接口也会是函数式接口。 Supplier 概要:不接受参数,返回一个值。 jdk源码: */@FunctionalInter
2017-03-26 14:05:47 1088
原创 Lose Yourself
Look’ if you had one shot’ one opportunity 瞧着,如果你拥有 一次,一次机会 To seize everything you ever wanted…One moment 去完成你曾经梦想拥有的一切…此时此刻 Would you capture it or just let it slip? 你是抓住它还是仅仅让它溜走?His palms are
2017-03-19 21:49:42 428
原创 python-import this
优美胜于丑陋(python 以编写优美的代码为目标) 明了胜于晦涩(优美的代码应该是明了的,命名规范,风格相似) 简洁胜于复杂(优美的代码应当是简洁的,不要有复杂的内部实现) 复杂胜于凌乱(如果复杂不可避免。那代码间也不能有难懂的关系,要保持接口简洁) 扁平胜于嵌套(优美的代码应当是扁平的,不能有太多的嵌套) 间隔胜于紧凑(优美的代码有适当的间隔,不要奢望一行代码解决问题) 可读性很重要
2017-03-02 21:35:01 3924
转载 启动hadoop 2.6遇到的datanode启动不了
原文:http://blog.csdn.net/zhangt85/article/details/42078347查看日志如下:2014-12-22 12:08:27,264 INFO org.mortbay.log: Started HttpServer2$SelectChannelConnectorWithSafeStartup@0.0.0.0:50075 2014-12-22 12:08:2
2017-01-10 10:48:32 293
原创 Initialization Demand Holder
public class Singleton {private Singleton(){ System.out.println(Singleton.class);}private static class HolderClass{ private final static Singleton s = new Singleton();}public static Singleton
2017-01-09 15:23:57 377
转载 阿里巴巴 JAVA开发手册 内含大量规范,应用范例.涉及数据库,高并发,集合,索引等等大量干货
原文:http://blog.csdn.net/zp522123428/article/details/53762878阿里巴巴 Java开发手册 Java开发手册 版本号 制定团队 更新日期 备 注 1.0.0 阿里巴巴集团技术部 2016.12.7 首次向Java业界公开 一、编程规约 (一)命名规约 1. 【强制】所有编程相关命名均不能以下划线或美元符号开始,也不能
2016-12-20 16:10:55 650
原创 linux下python3.5+pip安装
安装包; python依赖环境安装: yum install openssl-devel -yyum groupinstall ‘Development Tools’yum install zlib-devel bzip2-devel openssl-devel ncurses-develA:解压python: 解压:tar jxvf Python-* 进入文件目录,运行以下命令: 1)
2016-11-28 21:55:07 2817
转载 我是一颗CPU
前言上帝为你关闭了一扇门,就一定会为你打开一扇窗 这句话来形容我最合适不过了。我是CPU, 他们都叫我阿甘, 因为我和《阿甘正传》里的阿甘一样, 有点傻里傻气的。上帝把我制造出来, 给我了一个很小的脑容量, 为数不多的寄存器能临时的记一点东西, 但是上帝给我打开了一扇特别的窗户, 那就是像阿甘一样,跑的飞快。到底有多快呢? 我这么比喻一下吧, 我的工作都是以纳秒为单位的, 你们人间的一秒,
2016-11-16 21:42:22 500
原创 dubbo_ Linux安装配置
解压: apache-tomcat-7.0.72.tar.gz dubbo-monitor-simple-2.5.0-assembly.tar.gz jdk-7u79-linux-x64.tar.gz zookeeper-3.4.9.tar.gztar –xzvf XXXXX.tar.gz 配置jdk vi /etc/profile 加入jdk环境变量: 配置z
2016-11-13 13:06:26 425
原创 Hbase的JavaAPI----HbaseDao
使用hbase提供的JavaApi和Hbase进行交互,首先搭建一个maven工程:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.
2016-11-10 21:36:18 1539
原创 CopyOnWriteArrayList和CopyOnWriteArraySet
CopyOnWriteArrayList和CopyOnWriteArraySet应用场合一般 是在读多写少的情况,比如黑名单,他们之间的区别就是list和set的区别,但是在实现上CopyOnWriteArraySet使用CopyOnWriteArrayList来实现的,就像set使用了hashmap,treeset使用treemap,下面先看CopyOnWriteArrayList的添加操作.
2016-10-31 20:54:09 662
原创 ArrayBlockingQueue和LinkedBlockingQueue
ArrayBlockQueue和LinkedQueue属于Java.util.current包下的两个封装的线程安全的队列,主要讨论线程安全和阻塞操作的实现 他们之间的关系如下: ArrayBlockQueue: 线程安全和阻塞操作在入队列和取出队列元素都会涉及,先从线程安全进入: 注意:ArrayBlockQueue只有一把锁: /** Main lock guarding al
2016-10-29 14:58:59 428
原创 设计模式(22)-访问者模式
Visitor 思想:表 示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。 场景:其 实你不用去理解上面这句话。该模式其实又是一个在代码的物理结构上和Bridge模式很相似的模 式。但是,其语义,其目的,在逻辑上又是不同的。如果说Bridge,以及上述我称为可视为Bridge扩 展的模式中,作为参数的Bridge类,是作为调用类的被访问对象
2016-10-27 21:07:11 268
原创 设计模式(21)-解释器模式
思想:当 有一个语言需要解释执行, 并且你可将该语言中的句子表示为一个抽象语法树时,定义一个解释器,这 个解释器使用该表示来解释语言中的句子。 场景:其 实,从物理结构上,该模式的代码架构看起来可能和Composite模式一模一样,致使其针对的逻 辑语义不同。Composite模式描述一种一般的整体和部分使用接口上的一致性,而Interpreter模 式则侧重于语言解释器的实现构架。 实现:如
2016-10-27 20:41:50 267
原创 设计模式(20)-中介者模式
Mediator 思想:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 场景:该模式主要用来进行降低一组相互关联调用的对象间的耦合度。如果您发现您的系统的某部分的一组对象间调用极其频繁的坏味道的话,可能您 需要考虑使用该模式来进行一些解耦,否则,这些对象中的任何一个的修改,都将可能导致其他对象许多地方的修改,可维护性
2016-10-27 20:23:52 308
原创 设计模式(19)-命令模式
Command 思想:将一个动态的执行过程封装成一个对象,可以像处理数据来处理和管理这样的对象,在需要的时候激发该对象的方法就能执行被封装的执行过 程。 场景:该模式在很多时候非常有用,它使得我们对逻辑上已经激发的行为进行优化成为可能,我们不仅可以根据需要改变一组逻辑上以经济法的活动的 顺序,消冗余操作,撤销不必要的操作等。也可以把活动和操作视为资源一样来管理和重用。同时该模式也是许多事务处理机
2016-10-27 19:23:29 239
原创 设计模式(18)-责任链模式
Chain of Responsibility 思想:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一 个对象处理它为止。 场景:该模式实际上是对人们常会不自觉地去做的一种代码组织方式的总结而已。有的时候一条消息需要被处理,我们当然可以在一个雷的一个方法中 对他进行所有需要的处理。但是,如果要做的处理很复杂的情形,甚至
2016-10-27 19:01:07 314
原创 设计模式(17)-观察者模式
Observer 思想:定 义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时, 所 有依赖于它的对象都得到通知并被自动更新。 场景:上面描述该模式思想的文字可能显得有些拗口,实际上你也不用想得过于复杂。只要你写过任何的基于图形界面的程序,那么实际上您对他是一 点也不该陌生的。它就是我们每一次鼠标键盘敲击都在我们的程序内部流转着的事件机制的基础。当一个事件发生,则通知订阅该事件的对象。
2016-10-27 18:48:39 295
原创 编译构建AliSql
下载: https://github.com/alibaba/AliSQL 放到本地解压: unzip alisql.zip cd <存放编译后文件的目录> cmake <下载的源码目录> 问题1: CMake Error at cmake/readline.cmake:85 (MES
2016-10-19 21:17:40 1002
centos7_hadoop2.7.3_编译所需工具
2017-04-17
amoeba-mysql-binary-2.1.0
2016-08-07
ktv程序
2011-06-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人