<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[robinjun的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/romaticjun2011</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; romaticjun2011]]></copyright><item><title><![CDATA[proxool 0.9.1-解决 Attempt to register duplicate pool 异常]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40980093</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40980093</guid><author>romaticjun2011</author><pubDate>Mon, 10 Nov 2014 14:01:16 +0800</pubDate><description><![CDATA[今天客户发来的日志中发现异常。该异常偶尔在程序启动的时候出现。]]></description><category></category></item><item><title><![CDATA[Kettle资源库的创建及密码修改]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40685113</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40685113</guid><author>romaticjun2011</author><pubDate>Sat, 01 Nov 2014 21:24:08 +0800</pubDate><description><![CDATA[点击新建图标]]></description><category></category></item><item><title><![CDATA[Storm高级原语-Trident API]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40683897</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40683897</guid><author>romaticjun2011</author><pubDate>Sat, 01 Nov 2014 20:02:47 +0800</pubDate><description><![CDATA[“Stream”是Trident中的核心数据模型，它被当做一系列的batch来处理。在Storm集群的节点之间，一个stream被划分成很多partition（分区），对流的操作（operation）是在每个partition上并行进行的。
注：
①“Stream”是Trident中的核心数据模型：有些地方也说是TridentTuple，没有个标准的说法。
②一个stream被划分成很多pa]]></description><category></category></item><item><title><![CDATA[Storm高级原语-Trident topology]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40683757</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40683757</guid><author>romaticjun2011</author><pubDate>Sat, 01 Nov 2014 19:49:16 +0800</pubDate><description><![CDATA[Trident是在storm基础上，一个以实时计算为目标的高度抽象。 它在提供处理大吞吐量数据能力（每秒百万次消息）的同时，也提供了低延时分布式查询和有状态流式处理的能力。 如果你对Pig和Cascading这种高级批处理工具很了解的话，那么应该很容易理解Trident，因为他们之间很多的概念和思想都是类似的。Tident提供了 joins, aggregations, grouping, fun]]></description><category></category></item><item><title><![CDATA[Kettle Plugin插件开发指导]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40681101</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40681101</guid><author>romaticjun2011</author><pubDate>Sat, 01 Nov 2014 15:43:59 +0800</pubDate><description><![CDATA[Kettle Plugin插件开发
1 开发步骤
1.       Kettle插件开发介绍
2.       搭建kettle源代码环境
3.       在Eclipse中构建kettle项目
4.       在Eclipse中构建插件项目
5.       配置插件到Kettle中
6.       Kettle项目启动
7.       在kettle项目集成插件源代码]]></description><category></category></item><item><title><![CDATA[Kettle Job机制]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40680743</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40680743</guid><author>romaticjun2011</author><pubDate>Sat, 01 Nov 2014 15:12:16 +0800</pubDate><description><![CDATA[Kettle Job机制
1 Job机制
一个job项代表ETL控制流中的一项逻辑任务。Job项将会顺序执行，每个job项会产生一个结果，能作为别的分支上job项的条件。

1.1  Job类图简介

1.2   JobEntryInteface接口
JobEntryInterface是Job Entry插件的主要实现接口。主要包含以下功能：
1)     保存Job Entry设]]></description><category></category></item><item><title><![CDATA[Kettle 体系架构]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40680483</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40680483</guid><author>romaticjun2011</author><pubDate>Sat, 01 Nov 2014 14:40:59 +0800</pubDate><description><![CDATA[Kettle 体系架构
 
1 .  插件体系结构
1.1  插件接口的认识
开发支持插件功能的应用程序必须解决一个问题：如何在主程序与插件间正确地互相通信。为了在主程序与插件之间能正确地互相通信，应该先制定一套通信标准，这套通信标准就是接口，主程序与插件只能通过制订好的接口进行通信。软件开发中，接口只是定义功能并规定调用功能的形式，而不包含功能的实现。接口实质上是软件模块的调用规范。在后]]></description><category></category></item><item><title><![CDATA[C/C++拾遗:关于数组的指针和数组元素首地址的一道经典题]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40561807</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40561807</guid><author>romaticjun2011</author><pubDate>Tue, 28 Oct 2014 23:37:54 +0800</pubDate><description><![CDATA[#include int main(void){ int  a[5] = {1, 2, 3, 4, 5};    int  *ptr = (int *)(&a+1);  int *p1 = a;    int *p2 = &a[0];    int *p3 = (int *)(&a);  if(p1 == p2){       printf("p1 == p2\n");   }else{     ]]></description><category></category></item><item><title><![CDATA[各种排序算法总结]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40561515</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40561515</guid><author>romaticjun2011</author><pubDate>Tue, 28 Oct 2014 23:26:07 +0800</pubDate><description><![CDATA[1 插入排序
void 
InsertSort(int 
a[], int n)
{
      for (inti=1;
in; ++i) {
            int 
key = a[i];
            int 
j = i - 1;
            while(j>=0 &&a[j]>key) {
                  a[j]]></description><category></category></item><item><title><![CDATA[Flume 原理和使用]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40357571</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40357571</guid><author>romaticjun2011</author><pubDate>Tue, 21 Oct 2014 23:44:14 +0800</pubDate><description><![CDATA[1. 介绍
Flume 是 Cloudera 提供的日志收集系统，具有分布式、高可靠、高可用性等特点，对海量日志采集、聚合和传输，Flume 支持在日志系统中定制各类数据发送方，同时，Flume提供对数据进行简单处理，并写到各种数据接受方的能力。
Flume 使用 java 编写，其需要运行在 Java1.6 或更高版本之上。

官方网站：http://flume.apache.org/用]]></description><category></category></item><item><title><![CDATA[Java 多线程多任务循环运行]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40210139</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40210139</guid><author>romaticjun2011</author><pubDate>Sat, 18 Oct 2014 11:55:30 +0800</pubDate><description><![CDATA[import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ThreadManager {
	public List> initList = new ArrayList>();
	publi]]></description><category></category></item><item><title><![CDATA[Java 线程安全：BlockingQueue(阻塞算法) VS ConcurrentLinkedQueue(非阻塞算法)]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40208521</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40208521</guid><author>romaticjun2011</author><pubDate>Sat, 18 Oct 2014 09:59:03 +0800</pubDate><description><![CDATA[Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列，其中阻塞队列的典型例子是BlockingQueue，非阻塞队列的典型例子是ConcurrentLinkedQueue，在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。

注：什么叫线程安全？这个首先要明确。线程安全的类 ，指的是类内共享的全局变量的访问必须保证是不受多线程形式影响的。如果由于多线程的访问（比如修改、遍历、查看]]></description><category></category></item><item><title><![CDATA[C语言易混淆关键词详解-const, static, extern, typedef, 声明]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40186683</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40186683</guid><author>romaticjun2011</author><pubDate>Fri, 17 Oct 2014 15:14:04 +0800</pubDate><description><![CDATA[Const
Const关键词并不能把一个变量变成一个常量, 在符号前加上const表示这个符号不能被赋值, 即他的值对这个符号来说是只读的, 但并不代表这个值不能用其他方法去改变. 通过下面的例子就能比较好理解,
int i = 5;
const int *a = &i;
*a = 8;   //报错, 只读不能赋值
i = 10;   //OK
Const最有用处的地方是用它来限定函]]></description><category></category></item><item><title><![CDATA[C语言中的符号重载]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40186659</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40186659</guid><author>romaticjun2011</author><pubDate>Fri, 17 Oct 2014 15:13:09 +0800</pubDate><description><![CDATA[C语言非常的简洁, 以至于不愿意用太多的符号, 这样有很多符号在不同的地方有不同的含义
这样会让用户很困惑, 这是c的语言特性, 也是设计上的一些失误
static    
在函数内部，表示该变量的值在各个调用间一直保持延续性；
对于函数，表示该函数只在本文件中可见

extern 
用于变量，表示该变量在其它地方定义；
用于函数定义， 表示全局可见（属于冗余的）

void ]]></description><category></category></item><item><title><![CDATA[Java 正则表达式]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40148859</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40148859</guid><author>romaticjun2011</author><pubDate>Thu, 16 Oct 2014 15:18:26 +0800</pubDate><description><![CDATA[1示例1-区间匹配比如匹配[1,2]
正则表达式为：^[(\\[]\\d+,\\d+[)\\]]$

注明：颜色便于拆分理解
 
2示例2-正整数匹配
正则表达式为：^[1-9][0-9]*$ 
 
3示例3-整数匹配
正则表达式为：^-?[1-9][0-9]*$|0 （负整数、正整数、0）
 
4 示例4- 根据正则表达式截取字符串
输入：{start : [{\"ver]]></description><category></category></item><item><title><![CDATA[Java 二维数组根据维度升序或降序排序]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40147055</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40147055</guid><author>romaticjun2011</author><pubDate>Thu, 16 Oct 2014 13:51:02 +0800</pubDate><description><![CDATA[/*二维数组排序*/
	public static String[][] arraySort( String array[][], int row, boolean sort,int len)
	{
	    if( array!=null && len > 0 ) // 假如传入的输入不为 NULL 值
	    {
	      // int len = array.length;      ]]></description><category></category></item><item><title><![CDATA[Hive 中内部表与外部表的区别与创建方法]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/40126039</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/40126039</guid><author>romaticjun2011</author><pubDate>Wed, 15 Oct 2014 23:58:27 +0800</pubDate><description><![CDATA[先来说下Hive中内部表与外部表的区别： 
Hive 创建内部表时，会将数据移动到数据仓库指向的路径；若创建外部表，仅记录数据所在的路径， 
不对数据的位置做任何改变。在删除表的时候，内部表的元数据和数据会被一起删除， 
而外部表只删除元数据，不删除数据。这样外部表相对来说更加安全些，数据组织也更加灵活，方便共享源数据。 

需要注意的是传统数据库对表数据验证是 schema on wr]]></description><category></category></item><item><title><![CDATA[Impala与Hive的比较]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/39964433</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/39964433</guid><author>romaticjun2011</author><pubDate>Fri, 10 Oct 2014 16:12:43 +0800</pubDate><description><![CDATA[1. Impala架构

       Impala是Cloudera在受到Google的Dremel启发下开发的实时交互SQL大数据查询工具，Impala没有再使用缓慢的Hive+MapReduce批处理，而是通过使用与商用并行关系数据库中类似的分布式查询引擎（由Query Planner、Query Coordinator和Query Exec Engine三部分组成），可以直接从HDFS]]></description><category></category></item><item><title><![CDATA[Hadoop-Eclipse插件编译]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/39926401</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/39926401</guid><author>romaticjun2011</author><pubDate>Thu, 09 Oct 2014 10:30:16 +0800</pubDate><description><![CDATA[Hadoop-Eclipse插件编译


1.下载hadoop 1.2.1 
（http://hadoop.apache.org/releases.html#Download），解压在自定义的一个目录中（最好全英文路径，试过中文路径除了问题）。
2.Eclipse导入..\hadoop-1.2.1\src\contrib\eclipse-plugin项目，默认项目是MapReduceTo]]></description><category></category></item><item><title><![CDATA[Hadoop- Zookeeper-Hbase搭建]]></title><link>https://blog.youkuaiyun.com/romaticjun2011/article/details/39925863</link><guid>https://blog.youkuaiyun.com/romaticjun2011/article/details/39925863</guid><author>romaticjun2011</author><pubDate>Thu, 09 Oct 2014 10:11:54 +0800</pubDate><description><![CDATA[Hadoop- Zookeeper-Hbase搭建]]></description><category></category></item></channel></rss>