org.apache.hadoop.hbase.Cell.getTimestamp()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(12.3k)|赞(0)|评价(0)|浏览(253)

本文整理了Java中org.apache.hadoop.hbase.Cell.getTimestamp()方法的一些代码示例,展示了Cell.getTimestamp()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Cell.getTimestamp()方法的具体详情如下:
包路径:org.apache.hadoop.hbase.Cell
类名称:Cell
方法名:getTimestamp

Cell.getTimestamp介绍

暂无

代码示例

代码示例来源:origin: apache/hbase

private void writeKeyExcludingCommon(Cell cell, int commonPrefix, DataOutputStream out)
  throws IOException {
 short rLen = cell.getRowLength();
 if (commonPrefix < rLen + KeyValue.ROW_LENGTH_SIZE) {
  PrivateCellUtil.writeFamily(out, cell, fLen);
  PrivateCellUtil.writeQualifier(out, cell, cell.getQualifierLength());
  out.writeLong(cell.getTimestamp());
  out.writeByte(cell.getTypeByte());
 } else {
   int commonTimestampPrefix = Math.min(commonPrefix, KeyValue.TIMESTAMP_SIZE);
   if (commonTimestampPrefix < KeyValue.TIMESTAMP_SIZE) {
    byte[] curTsBuf = Bytes.toBytes(cell.getTimestamp());
    out.write(curTsBuf, commonTimestampPrefix, KeyValue.TIMESTAMP_SIZE
      - commonTimestampPrefix);
   out.writeLong(cell.getTimestamp());
   out.writeByte(cell.getTypeByte());

代码示例来源:origin: apache/hbase

public void hashResult(Result result) {
 if (!batchStarted) {
  throw new RuntimeException("Cannot add to batch that has not been started.");
 }
 for (Cell cell : result.rawCells()) {
  int rowLength = cell.getRowLength();
  int familyLength = cell.getFamilyLength();
  int qualifierLength = cell.getQualifierLength();
  int valueLength = cell.getValueLength();
  digest.update(cell.getRowArray(), cell.getRowOffset(), rowLength);
  digest.update(cell.getFamilyArray(), cell.getFamilyOffset(), familyLength);
  digest.update(cell.getQualifierArray(), cell.getQualifierOffset(), qualifierLength);
  long ts = cell.getTimestamp();
  for (int i = 8; i > 0; i--) {
   digest.update((byte) ts);
   ts >>>= 8;
  }
  digest.update(cell.getValueArray(), cell.getValueOffset(), valueLength);
  batchSize += rowLength + familyLength + qualifierLength + 8 + valueLength;
 }
}

代码示例来源:origin: apache/hbase

private static Map<String, Object> toStringMap(Cell cell) {
 Map<String, Object> stringMap = new HashMap<>();
 stringMap.put("row",
   Bytes.toStringBinary(cell.getRowArray(), cell.getRowOffset(), cell.getRowLength()));
 stringMap.put("family", Bytes.toStringBinary(cell.getFamilyArray(), cell.getFamilyOffset(),
       cell.getFamilyLength()));
 stringMap.put("qualifier",
   Bytes.toStringBinary(cell.getQualifierArray(), cell.getQualifierOffset(),
     cell.getQualifierLength()));
 stringMap.put("timestamp", cell.getTimestamp());
 stringMap.put("vlen", cell.getValueLength());
 if (cell.getTagsLength() > 0) {
  List<String> tagsString = new ArrayList<>();
  Iterator<Tag> tagsIterator = PrivateCellUtil.tagsIterator(cell);
  while (tagsIterator.hasNext()) {
   Tag tag = tagsIterator.next();
   tagsString
     .add((tag.getType()) + ":" + Bytes.toStringBinary(Tag.cloneValue(tag)));
  }
  stringMap.put("tag", tagsString);
 }
 return stringMap;
}

代码示例来源:origin: apache/hbase

/**
 * @param cell
 * @return The Key portion of the passed <code>cell</code> as a String.
 */
public static String getCellKeyAsString(Cell cell) {
 StringBuilder sb = new StringBuilder(Bytes.toStringBinary(
  cell.getRowArray(), cell.getRowOffset(), cell.getRowLength()));
 sb.append('/');
 sb.append(cell.getFamilyLength() == 0? "":
  Bytes.toStringBinary(cell.getFamilyArray(), cell.getFamilyOffset(), cell.getFamilyLength()));
 // KeyValue only added ':' if family is non-null.  Do same.
 if (cell.getFamilyLength() > 0) sb.append(':');
 sb.append(cell.getQualifierLength() == 0? "":
  Bytes.toStringBinary(cell.getQualifierArray(), cell.getQualifierOffset(),
   cell.getQualifierLength()));
 sb.append('/');
 sb.append(KeyValue.humanReadableTimestamp(cell.getTimestamp()));
 sb.append('/');
 sb.append(Type.codeToType(cell.getTypeByte()));
 if (!(cell instanceof KeyValue.KeyOnlyKeyValue)) {
  sb.append("/vlen=");
  sb.append(cell.getValueLength());
 }
 sb.append("/seqid=");
 sb.append(cell.getSequenceId());
 return sb.toString();
}

代码示例来源:origin: apache/hbase

short rowLen = cell.getRowLength();
byte fLen = cell.getFamilyLength();
int qLen = cell.getQualifierLength();
 out.write(cell.getQualifierArray(), cell.getQualifierOffset(), qLen);
out.writeLong(cell.getTimestamp());
out.writeByte(cell.getTypeByte());

代码示例来源:origin: apache/hbase

public static int appendKeyTo(final Cell cell, final byte[] output,
  final int offset) {
 int nextOffset = offset;
 nextOffset = Bytes.putShort(output, nextOffset, cell.getRowLength());
 nextOffset = CellUtil.copyRowTo(cell, output, nextOffset);
 nextOffset = Bytes.putByte(output, nextOffset, cell.getFamilyLength());
 nextOffset = CellUtil.copyFamilyTo(cell, output, nextOffset);
 nextOffset = CellUtil.copyQualifierTo(cell, output, nextOffset);
 nextOffset = Bytes.putLong(output, nextOffset, cell.getTimestamp());
 nextOffset = Bytes.putByte(output, nextOffset, cell.getTypeByte());
 return nextOffset;
}

代码示例来源:origin: apache/hbase

public static int appendKeyTo(Cell cell, ByteBuffer buf, int offset) {
 offset = ByteBufferUtils.putShort(buf, offset, cell.getRowLength());// RK length
 offset = CellUtil.copyRowTo(cell, buf, offset);// Row bytes
 offset = ByteBufferUtils.putByte(buf, offset, cell.getFamilyLength());// CF length
 offset = CellUtil.copyFamilyTo(cell, buf, offset);// CF bytes
 offset = CellUtil.copyQualifierTo(cell, buf, offset);// Qualifier bytes
 offset = ByteBufferUtils.putLong(buf, offset, cell.getTimestamp());// TS
 offset = ByteBufferUtils.putByte(buf, offset, cell.getTypeByte());// Type
 return offset;
}

代码示例来源:origin: apache/hbase

@Override
public void write(Cell cell) throws IOException {
 checkFlushed();
 // Row
 write(cell.getRowArray(), cell.getRowOffset(), cell.getRowLength());
 // Column family
 write(cell.getFamilyArray(), cell.getFamilyOffset(), cell.getFamilyLength());
 // Qualifier
 write(cell.getQualifierArray(), cell.getQualifierOffset(), cell.getQualifierLength());
 // Version
 this.out.write(Bytes.toBytes(cell.getTimestamp()));
 // Type
 this.out.write(cell.getTypeByte());
 // Value
 write(cell.getValueArray(), cell.getValueOffset(), cell.getValueLength());
 // MvccVersion
 this.out.write(Bytes.toBytes(cell.getSequenceId()));
}

代码示例来源:origin: apache/hbase

return ((ExtendedCell)cell).write(out, withTags);
} else {
 short rlen = cell.getRowLength();
 byte flen = cell.getFamilyLength();
 int qlen = cell.getQualifierLength();
 StreamUtils.writeLong(out, cell.getTimestamp());

代码示例来源:origin: apache/hbase

@Override
public void write(Cell cell) throws IOException {
 checkFlushed();
 // Row
 write(cell.getRowArray(), cell.getRowOffset(), cell.getRowLength());
 // Column family
 write(cell.getFamilyArray(), cell.getFamilyOffset(), cell.getFamilyLength());
 // Qualifier
 write(cell.getQualifierArray(), cell.getQualifierOffset(), cell.getQualifierLength());
 // Version
 this.out.write(Bytes.toBytes(cell.getTimestamp()));
 // Type
 this.out.write(cell.getTypeByte());
 // Value
 write(cell.getValueArray(), cell.getValueOffset(), cell.getValueLength());
 // Tags
 write(cell.getTagsArray(), cell.getTagsOffset(), cell.getTagsLength());
 // MvccVersion
 this.out.write(Bytes.toBytes(cell.getSequenceId()));
}

代码示例来源:origin: apache/hbase

public static int writeFlatKey(Cell cell, OutputStream out) throws IOException {
 short rowLen = cell.getRowLength();
 byte fLen = cell.getFamilyLength();
 int qLen = cell.getQualifierLength();
 // Using just one if/else loop instead of every time checking before writing every
 // component of cell
 if (cell instanceof ByteBufferExtendedCell) {
  StreamUtils.writeShort(out, rowLen);
  ByteBufferUtils.copyBufferToStream(out, ((ByteBufferExtendedCell) cell).getRowByteBuffer(),
   ((ByteBufferExtendedCell) cell).getRowPosition(), rowLen);
  out.write(fLen);
  ByteBufferUtils.copyBufferToStream(out, ((ByteBufferExtendedCell) cell).getFamilyByteBuffer(),
   ((ByteBufferExtendedCell) cell).getFamilyPosition(), fLen);
  ByteBufferUtils
   .copyBufferToStream(out, ((ByteBufferExtendedCell) cell).getQualifierByteBuffer(),
    ((ByteBufferExtendedCell) cell).getQualifierPosition(), qLen);
 } else {
  StreamUtils.writeShort(out, rowLen);
  out.write(cell.getRowArray(), cell.getRowOffset(), rowLen);
  out.write(fLen);
  out.write(cell.getFamilyArray(), cell.getFamilyOffset(), fLen);
  out.write(cell.getQualifierArray(), cell.getQualifierOffset(), qLen);
 }
 StreamUtils.writeLong(out, cell.getTimestamp());
 out.write(cell.getTypeByte());
 return Bytes.SIZEOF_SHORT + rowLen + Bytes.SIZEOF_BYTE + fLen + qLen + Bytes.SIZEOF_LONG
  + Bytes.SIZEOF_BYTE;
}

代码示例来源:origin: apache/hbase

private static Cell convertKv(Cell kv, Map<byte[], byte[]> cfRenameMap) {
 if(cfRenameMap != null) {
  // If there's a rename mapping for this CF, create a new KeyValue
  byte[] newCfName = cfRenameMap.get(CellUtil.cloneFamily(kv));
  if (newCfName != null) {
   kv = new KeyValue(kv.getRowArray(), // row buffer
     kv.getRowOffset(),              // row offset
     kv.getRowLength(),              // row length
     newCfName,                      // CF buffer
     0,                              // CF offset
     newCfName.length,               // CF length
     kv.getQualifierArray(),         // qualifier buffer
     kv.getQualifierOffset(),        // qualifier offset
     kv.getQualifierLength(),        // qualifier length
     kv.getTimestamp(),              // timestamp
     KeyValue.Type.codeToType(kv.getTypeByte()), // KV Type
     kv.getValueArray(),             // value buffer
     kv.getValueOffset(),            // value offset
     kv.getValueLength());           // value length
  }
 }
 return kv;
}

代码示例来源:origin: apache/hbase

private int calculateHashForKey(Cell cell) {
 // pre-calculate the 3 hashes made of byte ranges
 int rowHash = Bytes.hashCode(cell.getRowArray(), cell.getRowOffset(), cell.getRowLength());
 int familyHash = Bytes.hashCode(cell.getFamilyArray(), cell.getFamilyOffset(),
   cell.getFamilyLength());
 int qualifierHash = Bytes.hashCode(cell.getQualifierArray(), cell.getQualifierOffset(),
   cell.getQualifierLength());
 // combine the 6 sub-hashes
 int hash = 31 * rowHash + familyHash;
 hash = 31 * hash + qualifierHash;
 hash = 31 * hash + (int) cell.getTimestamp();
 hash = 31 * hash + cell.getTypeByte();
 return hash;
}

代码示例来源:origin: apache/hbase

byte[] curTsBuf = Bytes.toBytes(cell.getTimestamp());
int commonTimestampPrefix = findCommonTimestampPrefix(curTsBuf,
  Bytes.toBytes(prevCell.getTimestamp()));
short rLen = cell.getRowLength();
if (commonPrefix < rLen + KeyValue.ROW_LENGTH_SIZE) {

代码示例来源:origin: apache/hbase

public KeyValue(Cell c) {
 this(c.getRowArray(), c.getRowOffset(), c.getRowLength(),
   c.getFamilyArray(), c.getFamilyOffset(), c.getFamilyLength(),
   c.getQualifierArray(), c.getQualifierOffset(), c.getQualifierLength(),
   c.getTimestamp(), Type.codeToType(c.getTypeByte()), c.getValueArray(), c.getValueOffset(),
   c.getValueLength(), c.getTagsArray(), c.getTagsOffset(), c.getTagsLength());
 this.seqId = c.getSequenceId();
}

代码示例来源:origin: apache/hbase

+ "qualifier,timestamp,type and tags but with an empty value to return.");
result = ExtendedCellBuilderFactory.create(CellBuilderType.DEEP_COPY)
    .setRow(reference.getRowArray(), reference.getRowOffset(), reference.getRowLength())
    .setFamily(reference.getFamilyArray(), reference.getFamilyOffset(),
     reference.getFamilyLength())
    .setQualifier(reference.getQualifierArray(),
     reference.getQualifierOffset(), reference.getQualifierLength())
    .setTimestamp(reference.getTimestamp())
    .setType(reference.getTypeByte())
    .setValue(HConstants.EMPTY_BYTE_ARRAY)

代码示例来源:origin: apache/hbase

short rowLength = cell.getRowLength();
StreamUtils.writeRawVInt32(bos, rowLength);
PrivateCellUtil.writeRow(bos, cell, rowLength);
PrivateCellUtil.writeQualifier(bos, cell, qualifierLength);
StreamUtils.writeLong(bos, cell.getTimestamp());
bos.write(cell.getTypeByte());
PrivateCellUtil.writeValue(bos, cell, cell.getValueLength());

代码示例来源:origin: apache/hbase

cell.getRowLength(), cell.getFamilyArray(), cell.getFamilyOffset(),
  cell.getFamilyLength(), cell.getQualifierArray(), cell.getQualifierOffset(),
  cell.getQualifierLength(), cell.getTimestamp(), Type.codeToType(cell.getTypeByte()),
  cell.getValueArray(), cell.getValueOffset(), cell.getValueLength(), tags);
updatedCells.add(updatedCell);

代码示例来源:origin: apache/hbase

kv.getRowLength());
long seekTimestamp = kv.getTimestamp();
if (seekTimestamp > maxTimestampInFile) {

代码示例来源:origin: apache/hbase

cellScanner.advance();
Cell current = cellScanner.current();
assertTrue(Bytes.equals(current.getRowArray(), current.getRowOffset(), current.getRowLength(),
 row1, 0, row1.length));
assertEquals(127L, current.getTimestamp());
cellScanner.advance();
current = cellScanner.current();
assertTrue(Bytes.equals(current.getRowArray(), current.getRowOffset(), current.getRowLength(),
 row1, 0, row1.length));
assertEquals(126L, current.getTimestamp());
cellScanner.advance();
current = cellScanner.current();
assertTrue(Bytes.equals(current.getRowArray(), current.getRowOffset(), current.getRowLength(),
 row1, 0, row1.length));
assertEquals(125L, current.getTimestamp());
cellScanner.advance();
current = cellScanner.current();
assertTrue(Bytes.equals(current.getRowArray(), current.getRowOffset(), current.getRowLength(),
 row1, 0, row1.length));
assertEquals(124L, current.getTimestamp());
cellScanner.advance();
current = cellScanner.current();
assertTrue(Bytes.equals(current.getRowArray(), current.getRowOffset(), current.getRowLength(),
 row1, 0, row1.length));
assertEquals(123L, current.getTimestamp());
cellScanner = next[1].cellScanner();
cellScanner.advance();

相关文章