使用Antlr的C接口(3.4版)

昨天听同事介绍了Antlr 4,它是一个非常强大的词法、语法分析器辅助生成工具,比之前用Flex + Bison强太多倍。

遗憾的是,当前的v4只支持Java,暂不支持C、C++,于是降级了一把,尝试了一下在3.4版上使用Antlr C。

要说明的是,这不是一篇原创文章,我参考了两篇文章,如下:

《用ANTLR3实现规则解析----1-安装》 http://blog.csdn.net/wfp458113181wfp/article/details/9148577

《ANT[......]

继续阅读

[转载]svn分支(branch)创建、合并(到trunk)、冲突解决。

转载自:http://zccst.iteye.com/blog/1430823

一、创建分支

1,创建一个分支
svn copy svn://xx.com/repo/trunk svn://xx.com/repo/branches/TRY-something -m 'make branches TRY-something'

2,把工作目录转到分支
svn switch svn://xx.com/repo/branches/TRY-something

当然,也可以再转到[......]

继续阅读

Hive中Group By的去重

在Hive的是用中,我们经常会有这种需求:

按照同一个id进行Group By,然后对另一个字段去重,例如下面得数据:
id pic
1 1.jpg
2 2.jpg
1 1.jpg
此时,是用DISTINCT或者2 col得Group By都是不行得,我们可以用这个UDAF:collect_set(col),它将对同一个group by 得key进行set去重后,转换为一个array。

再举一个例子,我们可以对pic进行去重,拼接:
SELECT id, CONCAT_W[......]

继续阅读