条件检查工具,每种条件检查都提供3个重载方法,以checkArgument方法为例:
- checkArgument(boolean expr)
- checkArgument(boolean expr, String errorMessage)
- checkArgument(boolean expr, String errorMessage, Object ... args) //errorM
Strings.emptyToNull(String)
将空串(纯空格非空串)转成null
Strings.isNullOrEmpty(String)
判断是否为空或空串
Strings.nullToEmpty(String)
将null转成空串
java
2018-08-31 23:41:09
0
0
0
- 当线程被调用 interrupt()时,该线程再调用isInterruptted()会返回True,但如果在调用interrupt()当,由于线程正处于Sleep,此时将会抛出InterruptedException,并会重置interrupt状态,此时isInterruptted()会返回False。需要注意代码中如果是根据isInterruptted来判断的场景
- wait和sleep的
2018-08-31 23:27:00
0
0
0
消息摘要只能保证消息的完整性,不依赖于任何的密钥就可以对消息进行计算求值, 计算公式为:消息 + 算法,那么其在传递的过程中,完全可以被截获者进行伪造并计算新的消息摘要,对于接收方是完全不可知消息是否被篡改
- 消息认证码(MAC,Message Authentication Code)
消息认证码可保证消息的完整性和真实性,它使用对称
Presto
2018-08-31 19:10:26
0
0
0
![](/api/file/getImage?fileId=5ab85e52418f8a54f6000074)
1. Statement就是用户提交的sql。Coordinator会将其生成执行计划,进而生成可以查询的Query
2. Query就是一个查询执行实体,为完成用户sql目标的一系列计算机的操作,其由Stage、Task、Driver、Split、Operator、DataSour
Shell
2018-08-31 19:07:48
5
0
0
#!/bin/bash
if [ $# -lt 1 ] ; then
echo "usage : $0 port"
exit -1
fi
find_pid_cmd="lsof -i:${1} -sTCP:LISTEN -F p"
pid=`${find_pid_cmd}`
if [ "${pid}" == "" ] ; then
echo "not found service o
## 语法
```
sed [-nefr] [动作]
```
**选项与参数:**
-n :使用安静(silent)模式。在一般 sed 的用法中,所有来自STDIN 的数据一般都会被列出到终端上。但如果加上 -n参数后,则只有经过sed特殊处理的那一行(或者动作)才会被列出来。
-e :直接在命令列模式上进行 sed 的动作编辑;
-f :直接将 sed 的动作写在一个文件内, -f file
Hive
2018-08-31 19:05:04
0
0
0
由于在2.3.2版本上`hive.async.log.enabled=true`,用于提高hive服务的性能,但造成了beeline上执行sql看不到进度,给开发造成了不变。
要想让beeline上能看到执行进度,可将`hive.async.log.enabled=false`,注意,是要在hiveserver2启动前设置该参数
参考自:[Apache Hive Beeline : Prog
Hive
2018-08-31 19:03:00
1
0
0
## 通用(hive-site.xml)
### JOIN
* `hive.auto.convert.join.noconditionaltask = true`
控制是否打开map-join
* `hive.auto.convert.join.noconditionaltask.size=10000000`
多大的表可支持map-join,默认为10M.建议是hive.tez.contain
Flume
2018-08-31 18:59:06
2
0
0
## Flume 写Channel的流程
**流程图**
```flow
开始--1.接收事件--> Source
Source --2.处理事件--> ChannelProcessor
ChannelProcessor --3.将事件传递给拦截器链--> Interceptor0
Interceptor0 -.-> InterceptorN
InterceptorN --> ChannelPr