Hi,
        I've setup a little utility to truncate my tables during development 
but I found that if I truncate a table from the HBase shell it takes 2.5 
seconds, from my program it take 30 seconds. The code to truncate is pretty 
simple. Any ideas on what I've done wrong?

Thanks

-Pete

  private void truncateTables()
    throws IOException
  {
    m_hbaseConnection = new HbaseConnection();
    m_hbaseConnection.setupHBaseConnection();
    final HBaseAdmin hBaseAdmin = m_hbaseConnection.getAdmin();

    int counter = 1;
    for (final String tableName : CLUSTER_TABLES)
    {
      final HTableDescriptor hTableDescriptor = 
hBaseAdmin.getTableDescriptor(tableName.getBytes());
      m_logger.info("Truncating Table {}.",tableName);
      hBaseAdmin.disableTable(tableName);
      hBaseAdmin.deleteTable(tableName);
      hBaseAdmin.createTable(hTableDescriptor);
      m_logger.info("Truncated Table {}.", tableName);
      m_logger.info("Finished {} of {} Tables.", counter++, 
CLUSTER_TABLES.length);

    } // - End for each table.

  } // - End truncateTables Method.


  public void setupHBaseConnection()
    throws IOException
  {
    m_hbaseConfiguration = HBaseConfiguration.create();
    m_hbaseConfiguration.clear();

// - Get the m_hbaseConfiguration properties from the Command line -D 
parameters.
    m_hbaseConfiguration.set("hbase.zookeeper.quorum", 
System.getProperty("hbase.zookeeper.quorum"));
    m_hbaseConfiguration.set("hbase.zookeeper.property.clientPort", 
System.getProperty("hbase.zookeeper.property.clientPort"));

    m_logger.info("Using hbase.zookeeper.quorum : {}", 
m_hbaseConfiguration.get("hbase.zookeeper.quorum"));
    m_logger.info("Using hbase.zookeeper.property.clientPort : {}", 
m_hbaseConfiguration.get("hbase.zookeeper.property.clientPort"));

  } // - End setupHBaseConnection Method.

Reply via email to