java 复制SDS表为一个新表
package com.huami.devops; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.xiaomi.infra.galaxy.sds.client.ClientFactory; import com.xiaomi.infra.galaxy.sds.thrift.AdminService; import com.xiaomi.infra.galaxy.sds.thrift.CommonConstants; import com.xiaomi.infra.galaxy.sds.thrift.Credential; import com.xiaomi.infra.galaxy.sds.thrift.ServiceException; import com.xiaomi.infra.galaxy.sds.thrift.TableSpec; import com.xiaomi.infra.galaxy.sds.thrift.UserType; import libthrift091.TException; public class CopySDSTable { private static ClientFactory clientFactory; private static AdminService.Iface adminClient; private static String secretKeyId = ""; private static String secretKey = ""; private static UserType userType = UserType.APP_SECRET; private String endpoint; private static final Logger LOG = LoggerFactory.getLogger(CopySDSTable.class); private static String tableName = "srctable"; private static String tableName1 = "tartable1"; private static String tableName2 = "tartable-02"; public CopySDSTable(String endpoint){ this.endpoint = endpoint; init(); } private void init() { Credential credential = new Credential().setSecretKey(secretKey).setSecretKeyId(secretKeyId).setType(userType); clientFactory = new ClientFactory().setCredential(credential); adminClient = clientFactory.newAdminClient(endpoint + CommonConstants.ADMIN_SERVICE_PATH, 50000, 30000); } private void CopyTable(String OldTable,String NewTable){ TableSpec tableSpec = null; try { tableSpec = adminClient.describeTable(OldTable); LOG.debug("get tablespec."); LOG.info("aaaaaaaaaaa"); } catch (TException e) { // TODO Auto-generated catch block e.printStackTrace(); LOG.error(e.getMessage(), e.getCause()); } try { adminClient.createTable(NewTable, tableSpec); } catch (ServiceException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (TException e) { // TODO Auto-generated catch block e.printStackTrace(); LOG.error(e.getMessage(), e.getCause()); } } public static void main(String[] args){ CopySDSTable ct = new CopySDSTable("https://awsbj0.sds.api.xiaomi.com"); ct.CopyTable(tableName, tableName1); } }