在实际环境中,HDFS集群上的数据可能是不间断的输入,此时如果直接用distcp复制集群的数据可能会导致执行失败或拷贝的一些数据在目标集群上不可用。
可通过在源集群中创建一个快照(snapshot),然后基于快照的数据进行迁移。后续还可基于快照进行增量的更新。
# shell变量操作
## 字符串长度
`${#var}`
## 头部截取
把字符中头部符合`mode`的部分删除
懒惰模式:`${var#mode}`
贪婪模式:`${var##mode}`
```
var="abcabcabc"
echo ${var#*a}
bcabcabc
echo ${var##*a}
bc
```
## 尾部截取
把字符中尾部符合`mode`的部
# Kafka常用排查命令
Kafka有新旧Consumer Api之分,旧的ConsumerApi提交的组信息及offset是存放在zookeeper中的,
而由于zookeeper并不适合频繁的大批量写入操作,所以在新的ConsumerApi的设计中,
新建了一个`__consumer_offsets`Topic用于存放新ConsumerApi提交的组信息及offset。
所以现在有了新旧
# lsof用法
显示打开的文件 或可通过此命令来查打开的文件句柄数
通过该命令,可以搜索到任何能够在文件系统中通过路径选择到的文件
## 用法
```
lsof
[ -?abChlnNOPRtUvVX ]
[ -A A ]
[ -c c ]
[ +c c ]
[ +|-d d ]
[ +|-D D ]
[ +|-e s ]
[ +|-f [cfgGn]
# ps用法
用于输出进程信息。
支持三种风格的选项参数:
1. `UNIX` 可通过前置一个`-`
2. `BSD` 不能添加`-`
3. `GNU` 全名参数,添加两个`--`
允许三种风格的参数混合使用,但有可能出现冲突
在不加选项时,仅输出**当前登陆用户**且在**同一个tty终端**下的进程,它显示进程ID(pid = PID)、
与进程关联的终端(tname = TTY),和
Linux
2018-03-09 17:35:38
0
0
0
# linux cpu iowait的理解
在其他地方可能会简写为`wa`、`wio`。
在linux中解释为
```
Percentage of time that the CPU or CPUs were idle during
which the system had an outstanding disk I/O request.
```
从字面理解就是:有多少的CPU时间占比是属于
## 背景
最近在重启presto的时候总是报`fork: retry: Resource temporarily unavailable`,导致服务不正常
或跑的过程中会提示`java.lang.OutOfMemoryError: Unable to create new native thread`
## 以下为排查过程及结果
### 查看系统限制的进程数
```
sudo vim /et
# 关于linux shell中IFS变量的理解
## 介绍
Shell 脚本中有个变量叫 IFS(Internal Field Seprator) ,内部域分隔符。
完整定义是:The shell uses the value stored in IFS, which is the space, tab, and newline characters by default,
to delimi
java
2018-03-09 17:20:40
0
0
0
用于测试的类
```java
public class GenericTest {
public static void main(String[] args) {
getParameterizedType(new GenericTest());
getParameterizedType(new GenericTest(){});
}