@Override
 @Before
 public void setUp() {
   Account account = new AliyunAccount(ACCESS_ID, ACCESS_KEY);
   odps = new Odps(account);
   odps.setDefaultProject(PROJECT);
   odps.setEndpoint(ENDPOINT);
   super.setUp();
 }
 protected void createOdpsTable(
     String tableName, String[] partitionCols, ColumnGenerator... extraCols) throws OdpsException {
   TableSchema schema = new TableSchema();
   schema.addColumn(new Column("id", OdpsType.BIGINT));
   schema.addColumn(new Column("msg", OdpsType.STRING));
   int colNum = 0;
   for (ColumnGenerator generator : extraCols) {
     schema.addColumn(new Column(forIdx(colNum++), generator.getOdpsType()));
   }
   if (partitionCols != null) {
     for (String partition : partitionCols) {
       schema.addPartitionColumn(new Column(partition, OdpsType.STRING));
     }
   }
   odps.tables().create(tableName, schema);
 }
 protected void deleteTable(String tableName) throws OdpsException {
   odps.tables().delete(tableName, true);
 }
 protected boolean isTableExist(String tableName) throws OdpsException {
   return odps.tables().exists(tableName);
 }