如何通过java触发hbase的主要压缩

如何通过java触发hbase的主要压缩,java,hbase,Java,Hbase,我想向我的服务器计划程序中添加一个任务,以运行hbase的主要压缩。 如何用java代码实现这一点 它可以是单个区域的,也可以是所有区域的。 我可以对一些特定的表空间进行主要压缩吗 ... String tableName = "mytable"; Configuration conf = HBaseConfiguration.create(); conf.addResource(new Path("/home/user/hbase/conf/hbase-site.xml")); HBaseA

我想向我的服务器计划程序中添加一个任务,以运行hbase的主要压缩。 如何用java代码实现这一点

它可以是单个区域的,也可以是所有区域的。 我可以对一些特定的表空间进行主要压缩吗

...
String tableName = "mytable";
Configuration conf = HBaseConfiguration.create();
conf.addResource(new Path("/home/user/hbase/conf/hbase-site.xml"));

HBaseAdmin admin = new HBaseAdmin(conf);
admin.majorCompact(tableName);
...
如果给定了表名,则将在该表的所有区域上调用压缩。 请参阅:

调用此代码后,您将在主UI上的“当前正在运行的任务”下找到注释“压缩存储…”(默认情况下为端口60010)