Hbase修改表名

需要开启快照功能,在hbase-site.xml文件中添加如下配置项:

1
2
3
4
<property>
<name>hbase.snapshot.enabled</name>
<value>true</value>
</property>

进入hbase shell执行:

1
2
3
4
5
hbase shell> disable 'tableName'
hbase shell> snapshot 'tableName', 'tableSnapshot'
hbase shell> clone_snapshot 'tableSnapshot', 'newTableName'
hbase shell> delete_snapshot 'tableSnapshot'
hbase shell> drop 'tableName'

elasticsearch2.3.1升级到2.3.5过程

由于在使用2.3.1版本elasticsearch过程中发现经常出现异常RemoteTransportException - AlreadyClosedException[this IndexReader is closed],发现是在2.3.0中引入的一个bug,在2.3.3中进行了修复,所以对其进行了升级。在小版本之间升级可以进行滚动升级(Rolling upgrades),但大版本之间就只能集群重启升级(Full cluster restart upgrade)。

异常相关信息可以参考https://discuss.elastic.co/t/remotetransportexception-alreadyclosedexception-this-indexreader-is-closed/49577

Read More

Memory Reserved on YARN

在yarn的resource manager页面中有一项是Memory Reserved,解释如下:

An implementation detail of this change that prevents applications from starving under this new flexibility is the notion of reserved containers. Imagine two jobs are running that each have enough tasks to saturate more than the entire cluster. One job wants each of its mappers to get 1GB, and another job wants its mappers to get 2GB. Suppose the first job starts and fills up the entire cluster. Whenever one of its task finishes, it will leave open a 1GB slot. Even though the second job deserves the space, a naive policy will give it to the first one because it’s the only job with tasks that fit. This could cause the second job to be starved indefinitely. To prevent this unfortunate situation, when space on a node is offered to an application, if the application cannot immediately use it, it reserves it, and no other application can be allocated a container on that node until the reservation is fulfilled. Each node may have only one reserved container. The total reserved memory amount is reported in the ResourceManager UI. A high number means that it may take longer for new jobs to get space.

参考http://stackoverflow.com/a/28567229