2016年9月

今天碰到一个问题,同样的jar包,在不同的环境,有的可用,有的不可用。跟了一下,才发现jdk1.8的这个差异点。
简化的示例代码
[code]
package test;

import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

public class JDK8 {
private static final Map<String, String> map = new ConcurrentHashMap<String, String>();
public static void main(String[] args) {
map.putIfAbsent("name", "value");
}
}
[/code]

- 阅读剩余部分 -

今天手工迁移了一批HBase的数据,然后又碰到了这个熟悉的面孔:
[code]
On-disk size without header provided is 327866, but block header contains 65584. Block offset: -1, data starts with: DATABLK* ....
[/code]

怀疑是数据不一致问题,对数据进行了一次刷新,果然好了。
所以目前的情况,只能理解为:数据不一致引起的问题。

具体操作如下:
[code]
flush 'confirmedfile';
major_compact 'confirmedfile';
[/code]
即:
1、将confirmedfile表所有memstore刷新到hdfs,会产生大量storefile。
2、合并storefile。

- 阅读剩余部分 -