code: public void write(Type type, CConfiguration conf) throws IOException {
      String tableName = getTableName(conf.get(Constants.Dataset.TABLE_PREFIX));
      byte[] tableBytes = Bytes.toBytes(tableName);
  
      // must create the table if it doesn't exist
      HBaseAdmin admin = new HBaseAdmin(hbaseConf);
      HTable table = null;
      try {
        HTableDescriptor htd = new HTableDescriptor(tableBytes);
        htd.addFamily(new HColumnDescriptor(FAMILY));
        HBaseTableUtil tableUtil = new HBaseTableUtilFactory().get();
        tableUtil.createTableIfNotExists(admin, tableName, htd);
  
        long now = System.currentTimeMillis();
        long previous = now - 1;
        byte[] typeBytes = Bytes.toBytes(type.name());
        LOG.info("Writing new config row with key " + type);
        // populate the configuration data
        table = new HTable(hbaseConf, tableBytes);
        table.setAutoFlush(false);
        Put p = new Put(typeBytes);
        for (Map.Entry<String, String> e : conf) {
          p.add(FAMILY, Bytes.toBytes(e.getKey()), now, Bytes.toBytes(e.getValue()));
        }
        table.put(p);
  
        LOG.info("Deleting any configuration from " + previous + " or before");
        Delete d = new Delete(typeBytes);
        d.deleteFamily(FAMILY, previous);
        table.delete(d);
      } finally {
        try {
          admin.close();
        } catch (IOException ioe) {
          LOG.error("Error closing HBaseAdmin: " + ioe.getMessage(), ioe);
        }
        if (table != null) {
          try {
            table.close();
          } catch (IOException ioe) {
            LOG.error("Error closing HTable for " + tableName, ioe);
          }
        }
      }
    }
docs: Writes the {@link CConfiguration} instance as a new row to the HBase table.  The {@link Type} given is used as
  the row key (allowing multiple configurations to be stored).  After the new configuration is written, this will
  delete any configurations written with an earlier timestamp (to prevent removed values from being visible).
  @param conf The CConfiguration instance to store
  @throws java.io.IOException If an error occurs while writing the configuration