zoukankan      html  css  js  c++  java
  • 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);
        
        
    } 
    }
  • 相关阅读:
    数据处理之PostgreSQL过程语言学习
    Thinkphp中的assign() 和 display()
    JS截取与分割字符串常用技巧总结
    三种JS截取字符串方法
    十大经典排序算法的JS版
    js时间与毫秒互相转换
    javascript--清除表单缓存
    JS join()和split()方法、reverse() 方法、sort()方法
    JS数组去重的几种常见方法
    CSS样式大全
  • 原文地址:https://www.cnblogs.com/husbandmen/p/7132570.html
Copyright © 2011-2022 走看看