code: public List<HBeanRow> scan(byte[] sid, MultiKeyValueComparisonFilter filter, String firstResult) {
          Scan scan = new Scan();
          HBeanRow.setColumnFilter(scan);
          scan.setFilter(filter);
          final byte[] firstRowKey;
          if (!Strings.isNullOrEmpty(firstResult)) {
              byte[] uid = uids.getUiid().getId(firstResult);
              firstRowKey = getRowKey(sid, uid);
          } else {
              byte[] uid = uids.getUiid().getMinWidth();
              firstRowKey = getRowKey(sid, uid);
          }
          scan.setStartRow(firstRowKey);
  
          byte[] uid = uids.getUiid().getMaxWidth();
          byte[] stopRowKey = getRowKey(sid, uid);
          scan.setStopRow(stopRowKey);
          ArrayList<HBeanRow> rows = new ArrayList<>();
          try {
              ResultScanner scanner = table.getScanner(scan);
              for (Result r : scanner) {
                  HBeanRow row = new HBeanRow(r.raw(), uids);
                  rows.add(row);
              }
          } catch (IOException e) {
              throw new RuntimeException(e);
          }
          return rows;
      }
docs: Only scan instances of a specific schemaName (sid) by setting
  start and stop row accordingly on the filter.