• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java MutationProto类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



MutationProto类属于org.apache.hadoop.hbase.protobuf.generated.ClientProtos包,在下文中一共展示了MutationProto类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: buildMutateRequest

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Create a protocol buffer MutateRequest for a conditioned delete
 *
 * @param regionName
 * @param row
 * @param family
 * @param qualifier
 * @param comparator
 * @param compareType
 * @param delete
 * @return a mutate request
 * @throws IOException
 */
public static MutateRequest buildMutateRequest(
    final byte[] regionName, final byte[] row, final byte[] family,
    final byte [] qualifier, final ByteArrayComparable comparator,
    final CompareType compareType, final Delete delete) throws IOException {
  MutateRequest.Builder builder = MutateRequest.newBuilder();
  RegionSpecifier region = buildRegionSpecifier(
    RegionSpecifierType.REGION_NAME, regionName);
  builder.setRegion(region);
  Condition condition = buildCondition(
    row, family, qualifier, comparator, compareType);
  builder.setMutation(ProtobufUtil.toMutation(MutationType.DELETE, delete,
    MutationProto.newBuilder()));
  builder.setCondition(condition);
  return builder.build();
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:29,代码来源:RequestConverter.java


示例2: startNonceOperation

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Starts the nonce operation for a mutation, if needed.
 * @param mutation Mutation.
 * @param nonceGroup Nonce group from the request.
 * @returns Nonce used (can be NO_NONCE).
 */
private long startNonceOperation(final MutationProto mutation, long nonceGroup)
    throws IOException, OperationConflictException {
  if (regionServer.nonceManager == null || !mutation.hasNonce()) return HConstants.NO_NONCE;
  boolean canProceed = false;
  try {
    canProceed = regionServer.nonceManager.startOperation(
      nonceGroup, mutation.getNonce(), regionServer);
  } catch (InterruptedException ex) {
    throw new InterruptedIOException("Nonce start operation interrupted");
  }
  if (!canProceed) {
    // TODO: instead, we could convert append/increment to get w/mvcc
    String message = "The operation with nonce {" + nonceGroup + ", " + mutation.getNonce()
      + "} on row [" + Bytes.toString(mutation.getRow().toByteArray())
      + "] may have already completed";
    throw new OperationConflictException(message);
  }
  return mutation.getNonce();
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:26,代码来源:RSRpcServices.java


示例3: skipCellsForMutation

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
private void skipCellsForMutation(Action action, CellScanner cellScanner) {
  try {
    if (action.hasMutation()) {
      MutationProto m = action.getMutation();
      if (m.hasAssociatedCellCount()) {
        for (int i = 0; i < m.getAssociatedCellCount(); i++) {
          cellScanner.advance();
        }
      }
    }
  } catch (IOException e) {
    // No need to handle these Individual Muatation level issue. Any way this entire RegionAction
    // marked as failed as we could not see the Region here. At client side the top level
    // RegionAction exception will be considered first.
    LOG.error("Error while skipping Cells in CellScanner for invalid Region Mutations", e);
  }
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:18,代码来源:RSRpcServices.java


示例4: buildRegionAction

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Create a protocol buffer MultiRequest for row mutations.
 * Does not propagate Action absolute position.  Does not set atomic action on the created
 * RegionAtomic.  Caller should do that if wanted.
 * @param regionName
 * @param rowMutations
 * @return a data-laden RegionMutation.Builder
 * @throws IOException
 */
public static RegionAction.Builder buildRegionAction(final byte [] regionName,
    final RowMutations rowMutations)
throws IOException {
  RegionAction.Builder builder =
    getRegionActionBuilderWithRegion(RegionAction.newBuilder(), regionName);
  ClientProtos.Action.Builder actionBuilder = ClientProtos.Action.newBuilder();
  MutationProto.Builder mutationBuilder = MutationProto.newBuilder();
  for (Mutation mutation: rowMutations.getMutations()) {
    MutationType mutateType = null;
    if (mutation instanceof Put) {
      mutateType = MutationType.PUT;
    } else if (mutation instanceof Delete) {
      mutateType = MutationType.DELETE;
    } else {
      throw new DoNotRetryIOException("RowMutations supports only put and delete, not " +
        mutation.getClass().getName());
    }
    mutationBuilder.clear();
    MutationProto mp = ProtobufUtil.toMutation(mutateType, mutation, mutationBuilder);
    actionBuilder.clear();
    actionBuilder.setMutation(mp);
    builder.addAction(actionBuilder.build());
  }
  return builder;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:35,代码来源:RequestConverter.java


示例5: buildNoDataRegionAction

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Create a protocol buffer MultiRequest for row mutations that does not hold data.  Data/Cells
 * are carried outside of protobuf.  Return references to the Cells in <code>cells</code> param.
  * Does not propagate Action absolute position.  Does not set atomic action on the created
 * RegionAtomic.  Caller should do that if wanted.
 * @param regionName
 * @param rowMutations
 * @param cells Return in here a list of Cells as CellIterable.
 * @return a region mutation minus data
 * @throws IOException
 */
public static RegionAction.Builder buildNoDataRegionAction(final byte[] regionName,
    final RowMutations rowMutations, final List<CellScannable> cells,
    final RegionAction.Builder regionActionBuilder,
    final ClientProtos.Action.Builder actionBuilder,
    final MutationProto.Builder mutationBuilder)
throws IOException {
  for (Mutation mutation: rowMutations.getMutations()) {
    MutationType type = null;
    if (mutation instanceof Put) {
      type = MutationType.PUT;
    } else if (mutation instanceof Delete) {
      type = MutationType.DELETE;
    } else {
      throw new DoNotRetryIOException("RowMutations supports only put and delete, not " +
        mutation.getClass().getName());
    }
    mutationBuilder.clear();
    MutationProto mp = ProtobufUtil.toMutationNoData(type, mutation, mutationBuilder);
    cells.add(mutation);
    actionBuilder.clear();
    regionActionBuilder.addAction(actionBuilder.setMutation(mp).build());
  }
  return regionActionBuilder;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:36,代码来源:RequestConverter.java


示例6: toDurability

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Convert a protobuf Durability into a client Durability
 */
public static Durability toDurability(
    final ClientProtos.MutationProto.Durability proto) {
  switch(proto) {
  case USE_DEFAULT:
    return Durability.USE_DEFAULT;
  case SKIP_WAL:
    return Durability.SKIP_WAL;
  case ASYNC_WAL:
    return Durability.ASYNC_WAL;
  case SYNC_WAL:
    return Durability.SYNC_WAL;
  case FSYNC_WAL:
    return Durability.FSYNC_WAL;
  default:
    return Durability.USE_DEFAULT;
  }
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:21,代码来源:ProtobufUtil.java


示例7: getMutationBuilderAndSetCommonFields

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Code shared by {@link #toMutation(MutationType, Mutation)} and
 * {@link #toMutationNoData(MutationType, Mutation)}
 * @param type
 * @param mutation
 * @return A partly-filled out protobuf'd Mutation.
 */
private static MutationProto.Builder getMutationBuilderAndSetCommonFields(final MutationType type,
    final Mutation mutation, MutationProto.Builder builder) {
  builder.setRow(ByteStringer.wrap(mutation.getRow()));
  builder.setMutateType(type);
  builder.setDurability(toDurability(mutation.getDurability()));
  builder.setTimestamp(mutation.getTimeStamp());
  Map<String, byte[]> attributes = mutation.getAttributesMap();
  if (!attributes.isEmpty()) {
    NameBytesPair.Builder attributeBuilder = NameBytesPair.newBuilder();
    for (Map.Entry<String, byte[]> attribute: attributes.entrySet()) {
      attributeBuilder.setName(attribute.getKey());
      attributeBuilder.setValue(ByteStringer.wrap(attribute.getValue()));
      builder.addAttribute(attributeBuilder.build());
    }
  }
  return builder;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:25,代码来源:ProtobufUtil.java


示例8: startNonceOperation

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Starts the nonce operation for a mutation, if needed.
 *
 * @param mutation   Mutation.
 * @param nonceGroup Nonce group from the request.
 * @returns Nonce used (can be NO_NONCE).
 */
private long startNonceOperation(final MutationProto mutation, long nonceGroup)
        throws IOException, OperationConflictException {
    if (regionServer.nonceManager == null || !mutation.hasNonce()) return HConstants.NO_NONCE;
    boolean canProceed = false;
    try {
        canProceed = regionServer.nonceManager.startOperation(
                nonceGroup, mutation.getNonce(), regionServer);
    } catch (InterruptedException ex) {
        throw new InterruptedIOException("Nonce start operation interrupted");
    }
    if (!canProceed) {
        // TODO: instead, we could convert append/increment to get w/mvcc
        String message = "The operation with nonce {" + nonceGroup + ", " + mutation.getNonce()
                + "} on row [" + Bytes.toString(mutation.getRow().toByteArray())
                + "] may have already completed";
        throw new OperationConflictException(message);
    }
    return mutation.getNonce();
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:27,代码来源:RSRpcServices.java


示例9: startNonceOperation

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Starts the nonce operation for a mutation, if needed.
 * @param mutation Mutation.
 * @param nonceGroup Nonce group from the request.
 * @returns Nonce used (can be NO_NONCE).
 */
private long startNonceOperation(final MutationProto mutation, long nonceGroup)
    throws IOException, OperationConflictException {
  if (nonceManager == null || !mutation.hasNonce()) return HConstants.NO_NONCE;
  boolean canProceed = false;
  try {
    canProceed = nonceManager.startOperation(nonceGroup, mutation.getNonce(), this);
  } catch (InterruptedException ex) {
    throw new InterruptedIOException("Nonce start operation interrupted");
  }
  if (!canProceed) {
    // TODO: instead, we could convert append/increment to get w/mvcc
    String message = "The operation with nonce {" + nonceGroup + ", " + mutation.getNonce()
        + "} on row [" + Bytes.toString(mutation.getRow().toByteArray())
        + "] may have already completed";
    throw new OperationConflictException(message);
  }
  return mutation.getNonce();
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:25,代码来源:HRegionServer.java


示例10: getMutationBuilderAndSetCommonFields

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Code shared by {@link #toMutation(MutationType, Mutation)} and
 * {@link #toMutationNoData(MutationType, Mutation)}
 * @param type
 * @param mutation
 * @return A partly-filled out protobuf'd Mutation.
 */
private static MutationProto.Builder getMutationBuilderAndSetCommonFields(final MutationType type,
    final Mutation mutation, MutationProto.Builder builder) {
  builder.setRow(HBaseZeroCopyByteString.wrap(mutation.getRow()));
  builder.setMutateType(type);
  builder.setDurability(toDurability(mutation.getDurability()));
  builder.setTimestamp(mutation.getTimeStamp());
  Map<String, byte[]> attributes = mutation.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()));
      builder.addAttribute(attributeBuilder.build());
    }
  }
  return builder;
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:25,代码来源:ProtobufUtil.java


示例11: buildMutateRequest

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Create a protocol buffer MutateRequest for a client increment
 *
 * @param regionName
 * @param row
 * @param family
 * @param qualifier
 * @param amount
 * @param durability
 * @return a mutate request
 */
public static MutateRequest buildMutateRequest(
    final byte[] regionName, final byte[] row, final byte[] family,
    final byte [] qualifier, final long amount, final Durability durability) {
  MutateRequest.Builder builder = MutateRequest.newBuilder();
  RegionSpecifier region = buildRegionSpecifier(
    RegionSpecifierType.REGION_NAME, regionName);
  builder.setRegion(region);

  MutationProto.Builder mutateBuilder = MutationProto.newBuilder();
  mutateBuilder.setRow(ZeroCopyLiteralByteString.wrap(row));
  mutateBuilder.setMutateType(MutationType.INCREMENT);
  mutateBuilder.setDurability(ProtobufUtil.toDurability(durability));
  ColumnValue.Builder columnBuilder = ColumnValue.newBuilder();
  columnBuilder.setFamily(ZeroCopyLiteralByteString.wrap(family));
  QualifierValue.Builder valueBuilder = QualifierValue.newBuilder();
  valueBuilder.setValue(ZeroCopyLiteralByteString.wrap(Bytes.toBytes(amount)));
  valueBuilder.setQualifier(ZeroCopyLiteralByteString.wrap(qualifier));
  columnBuilder.addQualifierValue(valueBuilder.build());
  mutateBuilder.addColumnValue(columnBuilder.build());
  builder.setMutation(mutateBuilder.build());
  return builder.build();
}
 
开发者ID:cloud-software-foundation,项目名称:c5,代码行数:34,代码来源:RequestConverter.java


示例12: toMutation

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
public static MutationProto toMutation(final MutationType type, final Mutation mutation,
    MutationProto.Builder builder)
throws IOException {
  builder = getMutationBuilderAndSetCommonFields(type, mutation, builder);
  ColumnValue.Builder columnBuilder = ColumnValue.newBuilder();
  QualifierValue.Builder valueBuilder = QualifierValue.newBuilder();
  for (Map.Entry<byte[],List<Cell>> family: mutation.getFamilyCellMap().entrySet()) {
    columnBuilder.clear();
    columnBuilder.setFamily(ZeroCopyLiteralByteString.wrap(family.getKey()));
    for (Cell cell: family.getValue()) {
      KeyValue kv = KeyValueUtil.ensureKeyValue(cell);
      valueBuilder.setQualifier(ZeroCopyLiteralByteString.wrap(
          kv.getQualifierArray(), kv.getQualifierOffset(), kv.getQualifierLength()));
      valueBuilder.setValue(ZeroCopyLiteralByteString.wrap(
          kv.getValueArray(), kv.getValueOffset(), kv.getValueLength()));
      valueBuilder.setTimestamp(kv.getTimestamp());
      if (type == MutationType.DELETE) {
        KeyValue.Type keyValueType = KeyValue.Type.codeToType(kv.getType());
        valueBuilder.setDeleteType(toDeleteType(keyValueType));
      }
      columnBuilder.addQualifierValue(valueBuilder.build());
    }
    builder.addColumnValue(columnBuilder.build());
  }
  return builder.build();
}
 
开发者ID:cloud-software-foundation,项目名称:c5,代码行数:27,代码来源:ProtobufUtil.java


示例13: getMutationBuilderAndSetCommonFields

import org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto; //导入依赖的package包/类
/**
 * Code shared by {@link #toMutation(MutationType, Mutation)} and
 * {@link #toMutationNoData(MutationType, Mutation)}
 * @param type
 * @param mutation
 * @return A partly-filled out protobuf'd Mutation.
 */
private static MutationProto.Builder getMutationBuilderAndSetCommonFields(final MutationType type,
    final Mutation mutation, MutationProto.Builder builder) {
  builder.setRow(ZeroCopyLiteralByteString.wrap(mutation.getRow()));
  builder.setMutateType(type);
  builder.setDurability(toDurability(mutation.getDurability()));
  builder.setTimestamp(mutation.getTimeStamp());
  Map<String, byte[]> attributes = mutation.getAttributesMap();
  if (!attributes.isEmpty()) {
    NameBytesPair.Builder attributeBuilder = NameBytesPair.newBuilder();
    for (Map.Entry<String, byte[]> attribute: attributes.entrySet()) {
      attributeBuilder.setName(attribute.getKey());
      attributeBuilder.setValue(ZeroCopyLiteralByteString.wrap(attribute.getValue()));
      builder.addAttribute(attributeBuilder.build());
    }
  }
  return builder;
}
 
开发者ID:cloud-software-foundation,项目名称:c5,代码行数:25,代码来源:ProtobufUtil.java



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java ClusterBlockLevel类代码示例发布时间:2022-05-23
下一篇:
Java Callback类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap