protected void updateEstimateConsumeScanQuota(ClientProtos.ScanRequest scanRequest,
    long maxScannerResultSize, long maxBlockBytesScanned, long prevBlockBytesScannedDifference) {
    if (useResultSizeBytes) {
      readConsumed = estimateConsume(OperationType.SCAN, 1, 1000);
    } else {
      long estimate = getScanReadConsumeEstimate(blockSizeBytes, scanRequest.getNextCallSeq(),
        maxScannerResultSize, maxBlockBytesScanned, prevBlockBytesScannedDifference);
      readConsumed = Math.min(maxScanEstimate, estimate);
    }

    readCapacityUnitConsumed = calculateReadCapacityUnit(readConsumed);
    handlerUsageTimeConsumed = estimatedHandlerUsagePerReq;
  }
Update estimate quota(read/write size/capacityUnits) which will be consumed
@param scanRequest                     the scan to be executed
@param maxScannerResultSize            the maximum bytes to be returned by the scanner
@param maxBlockBytesScanned            the maximum bytes scanned in a single RPC call by the
                                       scanner
@param prevBlockBytesScannedDifference the difference between BBS of the previous two next
                                       calls
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/DefaultOperationQuota.java