예제 #1
0
  /**
   * This utility method creates a new Hbase HColumnDescriptor object based on a Thrift
   * ColumnDescriptor "struct".
   *
   * @param in Thrift ColumnDescriptor object
   * @return HColumnDescriptor
   * @throws IllegalArgument
   */
  public static HColumnDescriptor colDescFromThrift(ColumnDescriptor in) throws IllegalArgument {
    Compression.Algorithm comp =
        Compression.getCompressionAlgorithmByName(in.compression.toLowerCase());
    BloomType bt = BloomType.valueOf(in.bloomFilterType);

    if (in.name == null || !in.name.hasRemaining()) {
      throw new IllegalArgument("column name is empty");
    }
    byte[] parsedName = KeyValue.parseColumn(Bytes.getBytes(in.name))[0];
    HColumnDescriptor col =
        new HColumnDescriptor(parsedName)
            .setMaxVersions(in.maxVersions)
            .setCompressionType(comp)
            .setInMemory(in.inMemory)
            .setBlockCacheEnabled(in.blockCacheEnabled)
            .setTimeToLive(in.timeToLive > 0 ? in.timeToLive : Integer.MAX_VALUE)
            .setBloomFilterType(bt);
    return col;
  }
예제 #2
0
파일: HFile.java 프로젝트: joshua-g/c5
 /**
  * Get names of supported compression algorithms. The names are acceptable by HFile.Writer.
  *
  * @return Array of strings, each represents a supported compression algorithm. Currently, the
  *     following compression algorithms are supported.
  *     <ul>
  *       <li>"none" - No compression.
  *       <li>"gz" - GZIP compression.
  *     </ul>
  */
 public static String[] getSupportedCompressionAlgorithms() {
   return Compression.getSupportedAlgorithms();
 }