当前位置: 首页>>代码示例>>Java>>正文


Java ClientProtos.Scan方法代码示例

本文整理汇总了Java中org.apache.hadoop.hbase.protobuf.generated.ClientProtos.Scan方法的典型用法代码示例。如果您正苦于以下问题:Java ClientProtos.Scan方法的具体用法?Java ClientProtos.Scan怎么用?Java ClientProtos.Scan使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.hadoop.hbase.protobuf.generated.ClientProtos的用法示例。


在下文中一共展示了ClientProtos.Scan方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testAttributesSerialization

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
@Test
public void testAttributesSerialization() throws IOException {
  Scan scan = new Scan();
  scan.setAttribute("attribute1", Bytes.toBytes("value1"));
  scan.setAttribute("attribute2", Bytes.toBytes("value2"));
  scan.setAttribute("attribute3", Bytes.toBytes("value3"));

  ClientProtos.Scan scanProto = ProtobufUtil.toScan(scan);

  Scan scan2 = ProtobufUtil.toScan(scanProto);

  Assert.assertNull(scan2.getAttribute("absent"));
  Assert.assertTrue(Arrays.equals(Bytes.toBytes("value1"), scan2.getAttribute("attribute1")));
  Assert.assertTrue(Arrays.equals(Bytes.toBytes("value2"), scan2.getAttribute("attribute2")));
  Assert.assertTrue(Arrays.equals(Bytes.toBytes("value3"), scan2.getAttribute("attribute3")));
  Assert.assertEquals(3, scan2.getAttributesMap().size());
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:18,代码来源:TestScan.java

示例2: write

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
@Override
public void write(DataOutput out) throws IOException {
	super.write(out);
	
	Preconditions.checkNotNull(scans);
	WritableUtils.writeVInt(out, scans.size());
	for (Scan scan : scans) {
		ClientProtos.Scan protoScan = ProtobufUtil.toScan(scan);
		byte[] protoScanBytes = protoScan.toByteArray();
		WritableUtils.writeVInt(out, protoScanBytes.length);
		out.write(protoScanBytes);
	}
	
	WritableUtils.writeString(out, query);
	WritableUtils.writeVLong(out, regionSize);
}
 
开发者ID:mini666,项目名称:hive-phoenix-handler,代码行数:17,代码来源:PhoenixInputSplit.java

示例3: readFields

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
@Override
public void readFields(DataInput in) throws IOException {
	super.readFields(in);
	
	int count = WritableUtils.readVInt(in);
	scans = Lists.newArrayListWithExpectedSize(count);
	for (int i = 0; i < count; i++) {
		byte[] protoScanBytes = new byte[WritableUtils.readVInt(in)];
		in.readFully(protoScanBytes);
		ClientProtos.Scan protoScan = ClientProtos.Scan.parseFrom(protoScanBytes);
		Scan scan = ProtobufUtil.toScan(protoScan);
		scans.add(scan);
	}
	init();
	
	query = WritableUtils.readString(in);
	regionSize = WritableUtils.readVLong(in);
}
 
开发者ID:mini666,项目名称:hive-phoenix-handler,代码行数:19,代码来源:PhoenixInputSplit.java

示例4: convertStringToScan

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
/**
 * Converts the given Base64 string back into a Scan instance.
 *
 * @param base64  The scan details.
 * @return The newly created Scan instance.
 * @throws IOException When reading the scan instance fails.
 */
static Scan convertStringToScan(String base64) throws IOException {
  byte [] decoded = Base64.decode(base64);
  ClientProtos.Scan scan;
  try {
    scan = ClientProtos.Scan.parseFrom(decoded);
  } catch (InvalidProtocolBufferException ipbe) {
    throw new IOException(ipbe);
  }

  return ProtobufUtil.toScan(scan);
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:19,代码来源:TableMapReduceUtil.java

示例5: testScan

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
/**
 * Test basic Scan conversions.
 *
 * @throws IOException
 */
@Test
public void testScan() throws IOException {
  ClientProtos.Scan.Builder scanBuilder = ClientProtos.Scan.newBuilder();
  scanBuilder.setStartRow(ByteString.copyFromUtf8("row1"));
  scanBuilder.setStopRow(ByteString.copyFromUtf8("row2"));
  Column.Builder columnBuilder = Column.newBuilder();
  columnBuilder.setFamily(ByteString.copyFromUtf8("f1"));
  columnBuilder.addQualifier(ByteString.copyFromUtf8("c1"));
  columnBuilder.addQualifier(ByteString.copyFromUtf8("c2"));
  scanBuilder.addColumn(columnBuilder.build());

  columnBuilder.clear();
  columnBuilder.setFamily(ByteString.copyFromUtf8("f2"));
  scanBuilder.addColumn(columnBuilder.build());

  ClientProtos.Scan proto = scanBuilder.build();

  // Verify default values
  assertEquals(1, proto.getMaxVersions());
  assertEquals(true, proto.getCacheBlocks());

  // Verify fields survive ClientProtos.Scan -> Scan -> ClientProtos.Scan
  // conversion
  scanBuilder = ClientProtos.Scan.newBuilder(proto);
  scanBuilder.setMaxVersions(2);
  scanBuilder.setCacheBlocks(false);
  scanBuilder.setCaching(1024);
  ClientProtos.Scan expectedProto = scanBuilder.build();

  ClientProtos.Scan actualProto = ProtobufUtil.toScan(
      ProtobufUtil.toScan(expectedProto));
  assertEquals(expectedProto, actualProto);
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:39,代码来源:TestProtobufUtil.java

示例6: testScan

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
/**
 * Test basic Scan conversions.
 *
 * @throws IOException
 */
@Test
public void testScan() throws IOException {
  ClientProtos.Scan.Builder scanBuilder = ClientProtos.Scan.newBuilder();
  scanBuilder.setStartRow(ByteString.copyFromUtf8("row1"));
  scanBuilder.setStopRow(ByteString.copyFromUtf8("row2"));
  Column.Builder columnBuilder = Column.newBuilder();
  columnBuilder.setFamily(ByteString.copyFromUtf8("f1"));
  columnBuilder.addQualifier(ByteString.copyFromUtf8("c1"));
  columnBuilder.addQualifier(ByteString.copyFromUtf8("c2"));
  scanBuilder.addColumn(columnBuilder.build());

  columnBuilder.clear();
  columnBuilder.setFamily(ByteString.copyFromUtf8("f2"));
  scanBuilder.addColumn(columnBuilder.build());

  ClientProtos.Scan proto = scanBuilder.build();
  // default fields
  assertEquals(1, proto.getMaxVersions());
  assertEquals(true, proto.getCacheBlocks());

  scanBuilder = ClientProtos.Scan.newBuilder(proto);
  scanBuilder.setMaxVersions(1);
  scanBuilder.setCacheBlocks(true);

  Scan scan = ProtobufUtil.toScan(proto);
  assertEquals(scanBuilder.build(), ProtobufUtil.toScan(scan));
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:33,代码来源:TestProtobufUtil.java

示例7: convertScanToString

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
static String convertScanToString(Scan scan) throws IOException {
    ClientProtos.Scan proto = ProtobufUtil.toScan(scan);
    return Base64.encodeBytes(proto.toByteArray());
}
 
开发者ID:yjp123456,项目名称:SparkDemo,代码行数:5,代码来源:HBaseTest.java

示例8: testScan

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
@Test public void testScan() throws Exception {

    byte[] startRow = "startRow".getBytes();
    byte[] stopRow  = "stopRow".getBytes();
    byte[] fam = "fam".getBytes();
    byte[] qf1 = "qf1".getBytes();

    long ts = System.currentTimeMillis();
    int maxVersions = 2;

    Scan scan = new Scan(startRow, stopRow);
    scan.addColumn(fam, qf1);
    scan.setTimeRange(ts, ts+1);
    scan.setMaxVersions(maxVersions);

    ClientProtos.Scan scanProto = ProtobufUtil.toScan(scan);
    Scan desScan = ProtobufUtil.toScan(scanProto);

    assertTrue(Bytes.equals(scan.getStartRow(), desScan.getStartRow()));
    assertTrue(Bytes.equals(scan.getStopRow(), desScan.getStopRow()));
    assertEquals(scan.getCacheBlocks(), desScan.getCacheBlocks());
    Set<byte[]> set = null;
    Set<byte[]> desSet = null;

    for(Map.Entry<byte[], NavigableSet<byte[]>> entry :
        scan.getFamilyMap().entrySet()){
      assertTrue(desScan.getFamilyMap().containsKey(entry.getKey()));
      set = entry.getValue();
      desSet = desScan.getFamilyMap().get(entry.getKey());
      for(byte[] column : set){
        assertTrue(desSet.contains(column));
      }

      // Test filters are serialized properly.
      scan = new Scan(startRow);
      final String name = "testScan";
      byte [] prefix = Bytes.toBytes(name);
      scan.setFilter(new PrefixFilter(prefix));
      scanProto = ProtobufUtil.toScan(scan);
      desScan = ProtobufUtil.toScan(scanProto);
      Filter f = desScan.getFilter();
      assertTrue(f instanceof PrefixFilter);
    }

    assertEquals(scan.getMaxVersions(), desScan.getMaxVersions());
    TimeRange tr = scan.getTimeRange();
    TimeRange desTr = desScan.getTimeRange();
    assertEquals(tr.getMax(), desTr.getMax());
    assertEquals(tr.getMin(), desTr.getMin());
  }
 
开发者ID:grokcoder,项目名称:pbase,代码行数:51,代码来源:TestSerialization.java

示例9: toScan

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
/**
 * Convert a client Scan to a protocol buffer Scan
 *
 * @param scan the client Scan to convert
 * @return the converted protocol buffer Scan
 * @throws IOException
 */
public static ClientProtos.Scan toScan(
    final Scan scan) throws IOException {
  ClientProtos.Scan.Builder scanBuilder =
    ClientProtos.Scan.newBuilder();
  scanBuilder.setCacheBlocks(scan.getCacheBlocks());
  if (scan.getBatch() > 0) {
    scanBuilder.setBatchSize(scan.getBatch());
  }
  if (scan.getMaxResultSize() > 0) {
    scanBuilder.setMaxResultSize(scan.getMaxResultSize());
  }
  if (scan.isSmall()) {
    scanBuilder.setSmall(scan.isSmall());
  }
  Boolean loadColumnFamiliesOnDemand = scan.getLoadColumnFamiliesOnDemandValue();
  if (loadColumnFamiliesOnDemand != null) {
    scanBuilder.setLoadColumnFamiliesOnDemand(loadColumnFamiliesOnDemand.booleanValue());
  }
  scanBuilder.setMaxVersions(scan.getMaxVersions());
  TimeRange timeRange = scan.getTimeRange();
  if (!timeRange.isAllTime()) {
    HBaseProtos.TimeRange.Builder timeRangeBuilder =
      HBaseProtos.TimeRange.newBuilder();
    timeRangeBuilder.setFrom(timeRange.getMin());
    timeRangeBuilder.setTo(timeRange.getMax());
    scanBuilder.setTimeRange(timeRangeBuilder.build());
  }
  Map<String, byte[]> attributes = scan.getAttributesMap();
  if (!attributes.isEmpty()) {
    NameBytesPair.Builder attributeBuilder = NameBytesPair.newBuilder();
    for (Map.Entry<String, byte[]> attribute: attributes.entrySet()) {
      attributeBuilder.setName(attribute.getKey());
      attributeBuilder.setValue(HBaseZeroCopyByteString.wrap(attribute.getValue()));
      scanBuilder.addAttribute(attributeBuilder.build());
    }
  }
  byte[] startRow = scan.getStartRow();
  if (startRow != null && startRow.length > 0) {
    scanBuilder.setStartRow(HBaseZeroCopyByteString.wrap(startRow));
  }
  byte[] stopRow = scan.getStopRow();
  if (stopRow != null && stopRow.length > 0) {
    scanBuilder.setStopRow(HBaseZeroCopyByteString.wrap(stopRow));
  }
  if (scan.hasFilter()) {
    scanBuilder.setFilter(ProtobufUtil.toFilter(scan.getFilter()));
  }
  if (scan.hasFamilies()) {
    Column.Builder columnBuilder = Column.newBuilder();
    for (Map.Entry<byte[],NavigableSet<byte []>>
        family: scan.getFamilyMap().entrySet()) {
      columnBuilder.setFamily(HBaseZeroCopyByteString.wrap(family.getKey()));
      NavigableSet<byte []> qualifiers = family.getValue();
      columnBuilder.clearQualifier();
      if (qualifiers != null && qualifiers.size() > 0) {
        for (byte [] qualifier: qualifiers) {
          columnBuilder.addQualifier(HBaseZeroCopyByteString.wrap(qualifier));
        }
      }
      scanBuilder.addColumn(columnBuilder.build());
    }
  }
  if (scan.getMaxResultsPerColumnFamily() >= 0) {
    scanBuilder.setStoreLimit(scan.getMaxResultsPerColumnFamily());
  }
  if (scan.getRowOffsetPerColumnFamily() > 0) {
    scanBuilder.setStoreOffset(scan.getRowOffsetPerColumnFamily());
  }
  if (scan.isReversed()) {
    scanBuilder.setReversed(scan.isReversed());
  }
  return scanBuilder.build();
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:81,代码来源:ProtobufUtil.java

示例10: convertScanToString

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
/**
 * Writes the given scan into a Base64 encoded string.
 *
 * @param scan  The scan to write out.
 * @return The scan saved in a Base64 encoded string.
 * @throws IOException When writing the scan fails.
 */
static String convertScanToString(Scan scan) throws IOException {
  ClientProtos.Scan proto = ProtobufUtil.toScan(scan);
  return Base64.encodeBytes(proto.toByteArray());
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:12,代码来源:TableMapReduceUtil.java

示例11: convertScanToString

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
/**
 * Writes the given scan into a Base64 encoded string.
 *
 * @param scan  The scan to write out.
 * @return The scan saved in a Base64 encoded string.
 * @throws IOException When writing the scan fails.
 */
static String convertScanToString(Scan scan) throws IOException {
    ClientProtos.Scan proto = ProtobufUtil.toScan(scan);
    return Base64.encodeBytes(proto.toByteArray());
}
 
开发者ID:rayokota,项目名称:hgraphdb,代码行数:12,代码来源:IndexTool.java

示例12: convertScanToString

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
/**
 * COPIED from {@link TableMapReduceUtil} since it's not visible in that class.
 * Makes this class somewhat brittle, but if we call the static method directly we
 * risk overwriting the mapper class.
 * 
 * @param scan			the scan to convert
 * @return				string-representation of the scan
 * @throws IOException	if encoding to base64 bytes fails
 */
protected String convertScanToString(Scan scan) throws IOException {
	ClientProtos.Scan proto = ProtobufUtil.toScan(scan);
    return Base64.encodeBytes(proto.toByteArray());
}
 
开发者ID:conversant,项目名称:mara,代码行数:14,代码来源:TableInputAnnotationHandler.java

示例13: convertScanToString

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos; //导入方法依赖的package包/类
/**
 * Writes the given scan into a Base64 encoded string.
 *
 * @param scan The scan to write out.
 * @return The scan saved in a Base64 encoded string.
 * @throws IOException When writing the scan fails.
 */
private static String convertScanToString(Scan scan) throws IOException {
    ClientProtos.Scan proto = ProtobufUtil.toScan(scan);
    return Base64.encodeBytes(proto.toByteArray());
}
 
开发者ID:at15,项目名称:cs433,代码行数:12,代码来源:JobSubmitter.java


注:本文中的org.apache.hadoop.hbase.protobuf.generated.ClientProtos.Scan方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。