自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (1)
  • 收藏
  • 关注

原创 RocketMQ消费者,设置setConsumeFromWhere无效的问题

今天用了阿里开源的RocketMQ,第一次消费,使用新的consumserGroup消费,设置consumer.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_LAST_OFFSET);但是结果还是从offset为0 开始消费。网上也有很多人遇到了这个问题,但是并没有答案。所以我查看了一下源码,在客户端代码(rocketmq-clie

2016-06-16 20:22:13 13697 3

转载 Hadoop-HBase各版本兼容矩阵-20160114

20160114从官方文档中获取!

2016-01-14 11:38:18 1916

原创 使用R语言画圆弧条形图

之前在微博上看到一个用弧形展示的百分比图,感觉很有创意,就想使用R来实现一样的功能,效果如下:原图:http://photo.weibo.com/1787567623/wbphotos/large/photo_id/3567461742163767?refer=weibofeedv5使用R画出来的效果图:代码比较简单,这里就不讲解了,有兴趣的话,大家自己看代码吧

2013-04-22 21:50:18 11495

翻译 JAVA Metrics度量工具 - Metrics Core 翻译

Metrics核心翻译自Metrics官方文档: http://metrics.codahale.com/manual/core/JAVA Metrics是一个用于度量的一个JAVA的类库,使用请参见   Java Metric使用介绍1> http://blog.csdn.net/scutshuxue/article/details/8350135或者官方的快速入门:

2012-12-20 22:04:11 16303

原创 JAVA Metrics 度量工具使用介绍1

Java Metric使用介绍1Metrics是一个给JAVA提供度量工具的包,在JAVA代码中嵌入Metrics代码,可以方便的对业务代码的各个指标进行监控,同时,Metrics能够很好的跟Ganlia、Graphite结合,方便的提供图形化接口。         下面简单介绍下Metrics如何使用。Maven地址:只需要增加metrics-core即可使用

2012-12-20 15:40:21 46667 6

原创 Greenplum获取一个SQL结果的字段名

在Greenplum中,对于任意一个SQL,我们想获取这个SQL执行后的字段名是比较难的。比方说在写一个通用工具的时候,使用copy命令将一个SQL导出成文本,但是每个字段的名称导出的文本中却没有,如果使用自己解析SQL的话就太复杂了如果我们想取得这些字段名的话,不真正执行sql,因为在生成执行计划的时候已经,我知道的有以下几种方法:1.使用JDBC,prepareStatement先

2011-12-18 00:02:23 3243

原创 greenplum is_date C语言接口

在greenplum/postgresql中,将字符串转换成时间是很方便的,很多种格式的时间,gp都可以自动识别出是否时间字符。如果不是时间或者时间不正确的话,sql会报错。aligputf8=# select'2011-13-10 10:10:10'::date;ERROR: date/time field value out of range:"2011-13-10 10:10:

2011-12-05 09:31:08 3127

原创 Hbase shell 常用命令(1)

下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下:名称命令表达式创建表create '表名称', '列名称1','列名称2','列名称N'添加记录      put '表名称', '行名称', '列名称:', '值'查看记录

2011-11-18 14:28:29 250617 7

原创 postgresql/greenplum查询依赖于表上的视图

在postgresql、greenplum中,我们经常需要重建某张表,为了方便回滚,我们一般将原表rename掉,然后重建原表。       这样子,就会有一个问题:依赖于原表的视图还是依赖于rename的表,没有依赖于新表。这是因为视图定义的时候是根据表的oid来定义了,原

2011-09-19 19:10:34 7372 2

原创 Greenplum聚合函数的两种实现:HashAggregate与GroupAggregate

在Postgresql/Greenplum数据库中,聚合函数有两种实现方式:HashAggregate与GroupAggregate。     我们现在通过一个最简单的sql来分析这两种聚合的区别以及其应用场景。      select count(1) from pg_

2011-09-19 18:39:15 7712

原创 关于greenplum中的appendonly表

在greenplum里面有一种appendonly表,只能insert,不能update、delete的一种表,对于压缩表跟列存储来说,前提是必须是appendonly的表。下面介绍appendonly表的一些特性。1.首先建一张appendonly的表:aligpu

2011-09-01 17:00:19 9886

原创 greenplum(postgresql)之数据字典

greenplum是基于postgresql开发的分布式数据库,里面大部分的数据字典是一样的。我们在维护gp的时候对gp的数据字典比较熟悉,特此分享给大家。在这里不会详细介绍每个字典的内容,只会介绍常见的应用以及一些已经封装好了的函数。具体的介绍大家可以去看postgresql的

2011-04-29 13:36:00 18250

原创 greenplum中在master上查看底层所有节点的sql语句

<br /> <br />greenplum是一个分布式数据库,底下有很多的postgresql的数据库,我们有时候需要知道底层节点在干些什么,能否直接在master上有一个视图,或者sql,可以看到底下每个节点的sql,并且可以标识出是哪一个机器,哪一个端口的数据库,下面介绍方法:<br />3.3跟4.0的架构有所改变,所以方法也不一样。<br />1.创建v_active_sql视图方便查看sql:<br />CREATE VIEW v_active_sql AS<br />SELECT pg_sta

2011-04-02 14:45:00 5970

原创 OpenSolaris新特性解析

OpenSolaris新特性解析之一:Opensolaris之前身今世    http://bbs.chinaunix.net/viewthread.php?tid=1221539OpenSolaris新特性解析之二:ZFS

2011-01-02 15:26:00 1181

原创 postgresql 多行变一行,C语言自定义函数

函数效果如下:select * from cxf limit 10;id----------abcdefghij(10 row)mysql=# select STRCAT2(id,'|') from (select

2010-12-19 13:43:00 2755

原创 gp_distribution_policy

<br />gp_distribution_policy 记录了greenplum中一个表的分布策略,其实就是哪一个字段是分布键。<br /> <br />Table "pg_catalog.gp_distribution_policy"<br />  Column  |    Type    | Modifiers <br />----------+------------+-----------<br /> localoid | oid        | not null<br /> attrnums

2010-12-12 22:12:00 2499

原创 gp_configuration_history

gp_configuration_history是关于gp_configuration的一个日志记录,当有节点不可用时,或者使用gprecovery修复节点时,这个时候需要修改gp_configuration,并把修改的日志写gp_configuration_history中, gpaddmirrors, gprecoverseg, 和gpinitsystem 这几个命令会中记录这个日志,当有节点坏了的时候,我们可以查询这个表看greenplum是什么时候发现的。有助于我们排除错误  Table "pg_c

2010-12-12 21:46:00 1626

原创 postgresql中快速对系统表实现vacuum full

<br />     vacuum full会锁表,而且效率很低,在实际中不可能使用vacuum来缩小pg_class,这样会有很长的停机时间。<br />     其实要实现vacuum full最简单的方法就是将一个表重新复制一遍,create table b as select * from a;然后再使用b表代替a表使用就可以了。<br />     鉴于pg_class是所有表的基础,我们就算将其拷贝也无法将其取代掉。这样,我们可以以另外一种方式来实现,替换底层数据文件。由于pg_class有一个

2010-12-11 23:55:00 4241

原创 如何修改postgresql中一个表的oid

<br />oid是一个系统的隐藏列。直接修改是不行的。<br />mysql=# update pg_class set oid = 99999 where oid=73728;<br />ERROR:  cannot assign to system column "oid"<br />LINE 1: update pg_class set oid = 99999 where oid=73728;<br />但是我们可以将其删除<br />mysql=# delete from pg_class whe

2010-12-02 23:34:00 5611 1

原创 postgresql 通过数据字典建表,不用create TABLE

<br />postgresql 通过数据字典建表,不用create TABLE<br />今天对postgresql的数据字典有个简单的了解,postgre的表结构等信息都是放在数据字典中的,那我们能不能简单的往数据字典中插入数据来实现建表的功能呢?<br />以下做了一个简单的实验:<br />1.在postgresql的实例中创建一个表<br />create table test(a int); <br />然后去查以下几个数据字典,结果如下<br />pg_class:<br />select o

2010-12-02 00:30:00 3989

原创 postgresql,oracle,mysql通过数据字典获取表结构

<br />postgresql,oracle,mysql通过数据字典获取表结构,需要schema名跟表名。<br />postgresql:<br /> SELECT a.attname,pg_catalog.format_type(a.atttypid, a.atttypmod) AS data_type  <br /> FROM    pg_catalog.pg_attribute a,<br /> (SELECT  c.oid <br /> FROM    pg_catalog.pg_class c

2010-11-30 21:51:00 3099 1

原创 os.walk 遍历目录

<br />在python中,遍历目录是很方便的,不用自己再去写代码。已经集成在其中了<br />import os<br />for root, dirs, files in os.walk('/home/gpadmin1/cxf/gpdata', topdown = True):<br />    print root,' : ',dirs,' : ',files<br />root  存放的是所有的目录,递归的<br />dirs  表示在该目录下还有其他的哪些目录<br />files 表示在该目录

2010-11-30 15:42:00 1780

原创 基于hadoop的Cloudbase的问题/Bug

<br />1./t 是关键字来的<br />2.insert 不存在的表 select * from other表;<br />  先会跑hadoop任务,在insert,发现错误<br />3.容错处理差<br />4.不能使用‘/005’,需要使用,必须修改源码<br />    if( sep.equals( "//t"))<br />      sep = "/t";<br />    else<br />      sep = sep.replaceAll("^////", "");<br />

2010-11-28 17:05:00 985

原创 greenplum 实验,动态增加节点

<br /><br />greenplum 实验,动态增加节点<br />1.我原有在hadoop4-hadoop6上初始化了一个greenplum的集群<br />2.所有的primary,mirror都启动着,我连接master,在两个表里插入记录:<br />aligputf8=# insert into pg_catalog.pg_filespace_entry values(3052,15,'/home/gpadmin1/cxf/gpdata/gpdb_p1/gp6');<br />INSERT

2010-11-28 16:04:00 5482

原创 MapReduce名词解释

<br /><br />在网上收集了一些mapreduce中常用的一些名词的解释,分享一下:<br />Shuffle(洗牌):当第一个map任务完成后,节点可能还要继续执行更多的map 任务,但这时候也开始把map任务的中间输出交换到需要它们的 reducer那里去,这个移动map输出到 reducer 的过程叫做shuffle。<br /> <br />Partition:每一个reduce节点会分派到中间输出的键集合中的一个不同的子集合,这些子集合(被称为“partitions”)是reduce任

2010-11-28 16:00:00 3328

原创 关于tinyxml的剖析及遍历

<br />之前在学习xml文本解析,发现一个比较好用的开源程序,tinyxml,在这里分享一下tinyxml的原理跟XML文件的遍历操作。TinyXML是一个简单的,轻量级的,由C++实现的XML文档的解析器,它可以被其它程序方便地集成进去使用关于tinyxml的剖析:<br />下面是名为 example.xml的文档,后续的剖析都会以这个xml文档为例:example.xml<br />(1)tinyxml把xml文档建立成一棵DOM(Document Object Model)树,具体实现用的是

2010-11-28 15:59:00 4958

原创 java服务端,python客户端交互

<br /><br />java服务端,python客户端交互<br />前段时间考虑了一下不同语言的程序之间怎么进行交互。就像是数据库系统,可以用很多语言(c,java,php,python等待)来连接,那他们之间应该是怎么交互的呢。以下我尝试用python跟java写了一个C/S结构的交互。代码如下。<br />启动一个java的server后,可以用多个python程序来连接(当然,也可以用其他语言来连接),这里采用的都是socket的连接方式,client端可以向服务端发送请求,等待服务端响应(我写

2010-11-28 15:58:00 5998

原创 gp升级脚本gpmigrator笔记

<br /><br />必备条件(从gp的admin手册中翻译)<br />   1.保证你登录到gpmaster节点,并且是gp superuser(gpadmin)<br />   2.在所有gp节点上安装gp4.0的bin文件<br />   3.把用户自定义的模块复制到gp4.0的相应目录下,如一些函数,包等<br />   4.把一些你额外增加的文件或文件夹复制或保存,因为只有gp需要的文件才会被gpmigrator这个命令保存<br />   5.在所有的数据库中运行vacuum,并且删除所有的

2010-11-28 15:57:00 2900

原创 分布式数据库系统扩容时数据迁移问题的一点思考

<br /> <br />分布式数据库系统扩容时数据迁移问题的一点思考<br />记得在以前找工作的时候笔试时就遇到过类似这种问题,那个时候只知道普通hash取模,没做好这道题目,现在工作了之后,接触过一些类似的东西,对这个问题有点思路了,在这里抛砖引玉,写出来跟大家交流一下,写得不好欢迎拍砖。<br />假设:我们现在集群中有三台机器,标记为ma,mb,mc,假设现在每个机器的数据都是比较平均的。<br />一般做数据分布的时候一般用的都是hash算法,将主键(或者说是分布键)算出hash值,普通的就通过

2010-11-28 15:56:00 4387

原创 使用hadoop MapReduce进行排序

<br /><br /> 在hadoop中的例子TeraSort,就是一个利用mapredue进行排序的例子。本文参考并简化了这个例子:<br />       排序的基本思想是利用了mapreduce的自动排序功能,在hadoop中,从map到reduce阶段,map出来的结构会按照各个key按照hash值分配到各个reduce中,其中,在reduce中所有的key都是有序的了。如果使用一个reduce,那么我们直接将他output出来就行了,但是这不能够体现分布式的好处,所以,我们还是要用多个reduc

2010-09-30 09:45:00 11542

原创 使用ant编译hive

<br /><br />使用ant编译hive<br />需要的工具:ant 具体安装,请自己在网上查找<br />1.使用svn检出hive的源代码:<br />         svn地址:http://svn.apache.org/repos/asf/hadoop/hive/trunk<br />         可参考:http://wiki.apache.org/hadoop/Hive/GettingStarted<br /> <br />2.直接使用ant命令的时候,程序会去网上下载hadoop

2010-09-30 09:42:00 6146 2

利用VC6.0 编写的基于单文档视图结构的空战游戏

利用VC6.0 编写的基于单文档视图结构的空战游戏

2009-04-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除