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


Java CachingStrategyProto类代码示例

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


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

示例1: getCachingStrategy

import org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.CachingStrategyProto; //导入依赖的package包/类
static private CachingStrategyProto getCachingStrategy(CachingStrategy cachingStrategy) {
  CachingStrategyProto.Builder builder = CachingStrategyProto.newBuilder();
  if (cachingStrategy.getReadahead() != null) {
    builder.setReadahead(cachingStrategy.getReadahead().longValue());
  }
  if (cachingStrategy.getDropBehind() != null) {
    builder.setDropBehind(cachingStrategy.getDropBehind().booleanValue());
  }
  return builder.build();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:11,代码来源:Sender.java

示例2: getCachingStrategy

import org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.CachingStrategyProto; //导入依赖的package包/类
static private CachingStrategy getCachingStrategy(CachingStrategyProto strategy) {
  Boolean dropBehind = strategy.hasDropBehind() ?
      strategy.getDropBehind() : null;
  Long readahead = strategy.hasReadahead() ?
      strategy.getReadahead() : null;
  return new CachingStrategy(dropBehind, readahead);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:8,代码来源:Receiver.java

示例3: getCachingStrategy

import org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.CachingStrategyProto; //导入依赖的package包/类
static private CachingStrategyProto getCachingStrategy(
    CachingStrategy cachingStrategy) {
  CachingStrategyProto.Builder builder = CachingStrategyProto.newBuilder();
  if (cachingStrategy.getReadahead() != null) {
    builder.setReadahead(cachingStrategy.getReadahead());
  }
  if (cachingStrategy.getDropBehind() != null) {
    builder.setDropBehind(cachingStrategy.getDropBehind());
  }
  return builder.build();
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:12,代码来源:Sender.java

示例4: connectToDataNodes

import org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.CachingStrategyProto; //导入依赖的package包/类
private static List<Future<Channel>> connectToDataNodes(Configuration conf, DFSClient client,
    String clientName, LocatedBlock locatedBlock, long maxBytesRcvd, long latestGS,
    BlockConstructionStage stage, DataChecksum summer, EventLoopGroup eventLoopGroup,
    Class<? extends Channel> channelClass) {
  Enum<?>[] storageTypes = locatedBlock.getStorageTypes();
  DatanodeInfo[] datanodeInfos = locatedBlock.getLocations();
  boolean connectToDnViaHostname =
      conf.getBoolean(DFS_CLIENT_USE_DN_HOSTNAME, DFS_CLIENT_USE_DN_HOSTNAME_DEFAULT);
  int timeoutMs = conf.getInt(DFS_CLIENT_SOCKET_TIMEOUT_KEY, READ_TIMEOUT);
  ExtendedBlock blockCopy = new ExtendedBlock(locatedBlock.getBlock());
  blockCopy.setNumBytes(locatedBlock.getBlockSize());
  ClientOperationHeaderProto header = ClientOperationHeaderProto.newBuilder()
      .setBaseHeader(BaseHeaderProto.newBuilder().setBlock(PB_HELPER.convert(blockCopy))
          .setToken(PB_HELPER.convert(locatedBlock.getBlockToken())))
      .setClientName(clientName).build();
  ChecksumProto checksumProto = DataTransferProtoUtil.toProto(summer);
  OpWriteBlockProto.Builder writeBlockProtoBuilder = OpWriteBlockProto.newBuilder()
      .setHeader(header).setStage(OpWriteBlockProto.BlockConstructionStage.valueOf(stage.name()))
      .setPipelineSize(1).setMinBytesRcvd(locatedBlock.getBlock().getNumBytes())
      .setMaxBytesRcvd(maxBytesRcvd).setLatestGenerationStamp(latestGS)
      .setRequestedChecksum(checksumProto)
      .setCachingStrategy(CachingStrategyProto.newBuilder().setDropBehind(true).build());
  List<Future<Channel>> futureList = new ArrayList<>(datanodeInfos.length);
  for (int i = 0; i < datanodeInfos.length; i++) {
    DatanodeInfo dnInfo = datanodeInfos[i];
    Enum<?> storageType = storageTypes[i];
    Promise<Channel> promise = eventLoopGroup.next().newPromise();
    futureList.add(promise);
    String dnAddr = dnInfo.getXferAddr(connectToDnViaHostname);
    new Bootstrap().group(eventLoopGroup).channel(channelClass)
        .option(CONNECT_TIMEOUT_MILLIS, timeoutMs).handler(new ChannelInitializer<Channel>() {

          @Override
          protected void initChannel(Channel ch) throws Exception {
            // we need to get the remote address of the channel so we can only move on after
            // channel connected. Leave an empty implementation here because netty does not allow
            // a null handler.
          }
        }).connect(NetUtils.createSocketAddr(dnAddr)).addListener(new ChannelFutureListener() {

          @Override
          public void operationComplete(ChannelFuture future) throws Exception {
            if (future.isSuccess()) {
              initialize(conf, future.channel(), dnInfo, storageType, writeBlockProtoBuilder,
                timeoutMs, client, locatedBlock.getBlockToken(), promise);
            } else {
              promise.tryFailure(future.cause());
            }
          }
        });
  }
  return futureList;
}
 
开发者ID:apache,项目名称:hbase,代码行数:54,代码来源:FanOutOneBlockAsyncDFSOutputHelper.java


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