2015-05-25 12:17:00 Shell脚本中$的含义 $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。 $@ 所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。 $ 阅读全文...
2015-05-15 07:27:33 解决beeline连接hiveserver2执行sql报错的问题 beeline无用户名密码直接连接hiveserver2,执行sql报错,从hiveserver2的日志中可以看到以下错误: ``` org.apache.hadoop.security.AccessControlException: Permission denied: user=anonymous, access=EXECUTE, inode="/tmp/hadoop-yarn":dig:d 阅读全文...
2015-05-10 02:45:33 解决Spark集群重复出现SparkDeploySchedulerBackend: Asked to remove non-existent executor的问题 直接切入正题,spark版本1.3.1,出现这个问题的原因是因为spark上执行的任务异常终止导致的。 我碰到这个问题是因为hive的metastore出现了故障导致很多任务失败了,然后重启spark后,将应用到部署到集群上运行会应用端重复出现这样的错误: ``` ERROR 15/05/09 19:04:08 SparkDeploySchedulerBackend: Asked to rem 阅读全文...
2015-05-08 11:21:46 python的字符编码问题 刚接触Python不久,经常碰到`UnicodeEncodeError: 'ascii' codec can't encode characters in xxx`的字符编码错误,搞的很头疼。 首先说明:出现这个错误不一定是你代码的问题,很可能和你的terminal或ide有关。 ## 关于python的字符编码 python内部的字符串默认采用unicode编码。 如下代码: ```p 阅读全文...
2015-04-26 07:53:43 Nodejs到底快在什么地方? 如题,和其他非异步操作的语言相比,Nodejs到底快在什么地方? Nodejs说到底还是快在异步IO上,异步IO和多线程相比具有明显的优势,多线程中,单独的一个线程内执行IO操作还是同步的,线程内等待IO操作的结果返回白白消耗了CPU。 而异步IO,发起IO操作请求后可以不必等待去处理其他事情,能够更加充分的利用CPU,处理更多的事情,当IO操作结果返回后,在对IO的操作结果进行处理。 No 阅读全文...
2015-04-11 03:44:40 小心Scala/Java的split函数 最近使用scala在spark上做开发,遇到一个怪异的问题,代码逻辑没问题,最终处理的数据居然不合逻辑。起初以为是spark的问题,最终排查后发现是scala的split函数的问题。 也不能说是scala的split函数有问题吧,它的split默认行为与其他语言不一样。 在python下: ```python a = '1,2,3,,,'.split(',') # a的值为['1', '2' 阅读全文...
2015-04-06 17:08:12 使用ssh打洞实现反向代理访问内网服务 不得不佩服ssh的功能之强大,各种隧道代理,n中玩法,看是很复杂的网络包转发处理,一条ssh命令搞定,真乃神器也! 我家里有个非常省电的cubieboard小主机,原来折腾过一段时间的硬件,后来就凉在一边也没再管了,最近想反正一个月也就耗1-2度点,何不用它跑些对外的服务。于是乎拿Python写了个小的web系统。 现在问题来了,我的主机是在自家的路由器环境下的,ip是192.168.1.xx,这就不能对外开放了呀(也许有人会说设置路由器的DMZ主机呀,我能说我用的方正带宽即便是设置DMZ主机,联通或者移动的网络依然无法访问么,且路由器的公网ip是动态分配的呀,有点啰嗦了,总是DMZ主 阅读全文...
2015-04-01 09:38:06 python屏蔽requests模块日志 最近使用python开发的一个服务使用了logging模块来记录日志,同时用到了requests模块来调用第三方的api。 requests内部也使用了logging模块来记录日志,使用过程中会打出很多我们不需要关心的日志,研究了下logging模块的配置说明,我们可以通过修改配置文件来屏蔽requests的常规日志,只保留错误日志。 requests打出来的日志: ``` 2015-04- 阅读全文...
2015-03-23 03:19:24 MySql常用的一些骚操作 ## 命令行中启用事务操作 ``` mysql start transaction; Query OK, 0 rows affected (0.00 sec) mysql begin; Query OK, 0 rows affected (0.00 sec) mysql insert into t1 values (51, 3000); Query OK, 1 row affected 阅读全文...