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


Java ScanInfo类代码示例

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


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

示例1: StoreScanner

import org.apache.hadoop.hbase.regionserver.Store.ScanInfo; //导入依赖的package包/类
/**
 * Used for major compactions.
 * <p>
 * Opens a scanner across specified StoreFiles.
 * @param store who we scan
 * @param scan the spec
 * @param scanners ancillary scanners
 * @param smallestReadPoint the readPoint that we should use for tracking versions
 */
public StoreScanner(Store store, ScanInfo scanInfo, Scan scan,
    List<? extends KeyValueScanner> scanners, ScanType scanType, long smallestReadPoint,
    long earliestPutTs) throws IOException {
  this(store, false, scan, null, scanInfo.getTtl(), scanInfo.getMinVersions());
  initializeMetricNames();
  matcher =
      new ScanQueryMatcher(scan, scanInfo, null, scanType, smallestReadPoint, earliestPutTs,
          oldestUnexpiredTS);

  // Filter the list of scanners using Bloom filters, time range, TTL, etc.
  scanners = selectScannersFrom(scanners);

  // Seek all scanners to the initial key
  for (KeyValueScanner scanner : scanners) {
    scanner.seek(matcher.getStartKey());
  }

  // Combine all seeked scanners with a heap
  heap = new KeyValueHeap(scanners, store.comparator);
}
 
开发者ID:fengchen8086,项目名称:LCIndex-HBase-0.94.16,代码行数:30,代码来源:StoreScanner.java

示例2: StoreScanner

import org.apache.hadoop.hbase.regionserver.Store.ScanInfo; //导入依赖的package包/类
/**
 * Used for major compactions.<p>
 *
 * Opens a scanner across specified StoreFiles.
 * @param store who we scan
 * @param scan the spec
 * @param scanners ancillary scanners
 * @param smallestReadPoint the readPoint that we should use for tracking
 *          versions
 */
public StoreScanner(Store store, ScanInfo scanInfo, Scan scan,
    List<? extends KeyValueScanner> scanners, ScanType scanType,
    long smallestReadPoint, long earliestPutTs) throws IOException {
  this(store, false, scan, null, scanInfo.getTtl(),
      scanInfo.getMinVersions());
  initializeMetricNames();
  matcher = new ScanQueryMatcher(scan, scanInfo, null, scanType,
      smallestReadPoint, earliestPutTs, oldestUnexpiredTS);

  // Filter the list of scanners using Bloom filters, time range, TTL, etc.
  scanners = selectScannersFrom(scanners);

  // Seek all scanners to the initial key
  for(KeyValueScanner scanner : scanners) {
    scanner.seek(matcher.getStartKey());
  }

  // Combine all seeked scanners with a heap
  heap = new KeyValueHeap(scanners, store.comparator);
}
 
开发者ID:wanhao,项目名称:IRIndex,代码行数:31,代码来源:StoreScanner.java

示例3: getScanInfo

import org.apache.hadoop.hbase.regionserver.Store.ScanInfo; //导入依赖的package包/类
protected ScanInfo getScanInfo(Store store, RegionCoprocessorEnvironment e) {
  byte[] data = ((ZKWatcher)e.getSharedData().get(zkkey)).getData();
  if (data == null) {
    return null;
  }
  ScanInfo oldSI = store.getScanInfo();
  if (oldSI.getTtl() == Long.MAX_VALUE) {
    return null;
  }
  long ttl =  Math.max(EnvironmentEdgeManager.currentTimeMillis() - Bytes.toLong(data), oldSI.getTtl());    
  return new ScanInfo(store.getFamily(), ttl,
      oldSI.getTimeToPurgeDeletes(), oldSI.getComparator());
}
 
开发者ID:fengchen8086,项目名称:LCIndex-HBase-0.94.16,代码行数:14,代码来源:ZooKeeperScanPolicyObserver.java

示例4: preFlushScannerOpen

import org.apache.hadoop.hbase.regionserver.Store.ScanInfo; //导入依赖的package包/类
@Override
public InternalScanner preFlushScannerOpen(final ObserverContext<RegionCoprocessorEnvironment> c,
    Store store, KeyValueScanner memstoreScanner, InternalScanner s) throws IOException {
  Store.ScanInfo scanInfo = getScanInfo(store, c.getEnvironment());
  if (scanInfo == null) {
    // take default action
    return null;
  }
  Scan scan = new Scan();
  scan.setMaxVersions(scanInfo.getMaxVersions());
  return new StoreScanner(store, scanInfo, scan, Collections.singletonList(memstoreScanner),
      ScanType.MINOR_COMPACT, store.getHRegion().getSmallestReadPoint(),
      HConstants.OLDEST_TIMESTAMP);
}
 
开发者ID:fengchen8086,项目名称:LCIndex-HBase-0.94.16,代码行数:15,代码来源:ZooKeeperScanPolicyObserver.java

示例5: preCompactScannerOpen

import org.apache.hadoop.hbase.regionserver.Store.ScanInfo; //导入依赖的package包/类
@Override
public InternalScanner preCompactScannerOpen(final ObserverContext<RegionCoprocessorEnvironment> c,
    Store store, List<? extends KeyValueScanner> scanners, ScanType scanType, long earliestPutTs,
    InternalScanner s) throws IOException {
  Store.ScanInfo scanInfo = getScanInfo(store, c.getEnvironment());
  if (scanInfo == null) {
    // take default action
    return null;
  }
  Scan scan = new Scan();
  scan.setMaxVersions(scanInfo.getMaxVersions());
  return new StoreScanner(store, scanInfo, scan, scanners, scanType, store.getHRegion()
      .getSmallestReadPoint(), earliestPutTs);
}
 
开发者ID:fengchen8086,项目名称:LCIndex-HBase-0.94.16,代码行数:15,代码来源:ZooKeeperScanPolicyObserver.java

示例6: preStoreScannerOpen

import org.apache.hadoop.hbase.regionserver.Store.ScanInfo; //导入依赖的package包/类
@Override
public KeyValueScanner preStoreScannerOpen(final ObserverContext<RegionCoprocessorEnvironment> c,
    final Store store, final Scan scan, final NavigableSet<byte[]> targetCols,
    final KeyValueScanner s) throws IOException {
  Store.ScanInfo scanInfo = getScanInfo(store, c.getEnvironment());
  if (scanInfo == null) {
    // take default action
    return null;
  }
  return new StoreScanner(store, scanInfo, scan, targetCols);
}
 
开发者ID:fengchen8086,项目名称:LCIndex-HBase-0.94.16,代码行数:12,代码来源:ZooKeeperScanPolicyObserver.java

示例7: testWildCardTtlScan

import org.apache.hadoop.hbase.regionserver.Store.ScanInfo; //导入依赖的package包/类
public void testWildCardTtlScan() throws IOException {
  long now = System.currentTimeMillis();
  KeyValue [] kvs = new KeyValue[] {
      KeyValueTestUtil.create("R1", "cf", "a", now-1000, KeyValue.Type.Put, "dont-care"),
      KeyValueTestUtil.create("R1", "cf", "b", now-10, KeyValue.Type.Put, "dont-care"),
      KeyValueTestUtil.create("R1", "cf", "c", now-200, KeyValue.Type.Put, "dont-care"),
      KeyValueTestUtil.create("R1", "cf", "d", now-10000, KeyValue.Type.Put, "dont-care"),
      KeyValueTestUtil.create("R2", "cf", "a", now, KeyValue.Type.Put, "dont-care"),
      KeyValueTestUtil.create("R2", "cf", "b", now-10, KeyValue.Type.Put, "dont-care"),
      KeyValueTestUtil.create("R2", "cf", "c", now-200, KeyValue.Type.Put, "dont-care"),
      KeyValueTestUtil.create("R2", "cf", "c", now-1000, KeyValue.Type.Put, "dont-care")
  };
  List<KeyValueScanner> scanners = scanFixture(kvs);
  Scan scan = new Scan();
  scan.setMaxVersions(1);
  ScanInfo scanInfo = new ScanInfo(CF, 0, 1, 500, false, 0,
      KeyValue.COMPARATOR);
  ScanType scanType = ScanType.USER_SCAN;
  StoreScanner scanner =
    new StoreScanner(scan, scanInfo, scanType,
        null, scanners);

  List<KeyValue> results = new ArrayList<KeyValue>();
  assertEquals(true, scanner.next(results));
  assertEquals(2, results.size());
  assertEquals(kvs[1], results.get(0));
  assertEquals(kvs[2], results.get(1));
  results.clear();

  assertEquals(true, scanner.next(results));
  assertEquals(3, results.size());
  assertEquals(kvs[4], results.get(0));
  assertEquals(kvs[5], results.get(1));
  assertEquals(kvs[6], results.get(2));
  results.clear();

  assertEquals(false, scanner.next(results));
}
 
开发者ID:fengchen8086,项目名称:LCIndex-HBase-0.94.16,代码行数:39,代码来源:TestStoreScanner.java

示例8: testExpiredDeleteFamily

import org.apache.hadoop.hbase.regionserver.Store.ScanInfo; //导入依赖的package包/类
/**
 * Ensure that expired delete family markers don't override valid puts
 */
public void testExpiredDeleteFamily() throws Exception {
  long now = System.currentTimeMillis();
  KeyValue [] kvs = new KeyValue[] {
      new KeyValue(Bytes.toBytes("R1"), Bytes.toBytes("cf"), null, now-1000,
          KeyValue.Type.DeleteFamily),
      KeyValueTestUtil.create("R1", "cf", "a", now-10, KeyValue.Type.Put,
          "dont-care"),
  };
  List<KeyValueScanner> scanners = scanFixture(kvs);
  Scan scan = new Scan();
  scan.setMaxVersions(1);
  // scanner with ttl equal to 500
  ScanInfo scanInfo = new ScanInfo(CF, 0, 1, 500, false, 0,
      KeyValue.COMPARATOR);
  ScanType scanType = ScanType.USER_SCAN;
  StoreScanner scanner =
      new StoreScanner(scan, scanInfo, scanType, null, scanners);

  List<KeyValue> results = new ArrayList<KeyValue>();
  assertEquals(true, scanner.next(results));
  assertEquals(1, results.size());
  assertEquals(kvs[1], results.get(0));
  results.clear();

  assertEquals(false, scanner.next(results));
}
 
开发者ID:fengchen8086,项目名称:LCIndex-HBase-0.94.16,代码行数:30,代码来源:TestStoreScanner.java


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