title: Cloud Bigtable multi-prefix scan in dataflow
body: <p>UPDATE: it seems that the recently released <code>org.apache.beam.sdk.io.hbase-2.6.0</code> includes the <code>HBaseIO.readAll()</code> api. I tested in google dataflow, and it seems to be working. Will there be any issue or pitfall of using <code>HBaseIO</code> directly in Google Cloud Dataflow setting?</p>
  
  <p>The <a href="https://beam.apache.org/documentation/sdks/javadoc/2.4.0/org/apache/beam/sdk/io/gcp/bigtable/BigtableIO.Read.html" rel="nofollow noreferrer"><code>BigtableIO.read</code></a> takes <code>PBegin</code> as an input, I am wondering if there is anything like <code>SpannerIO</code>'s <code>readAll</code> API, where the <code>BigtableIO</code>'s read API input could be a <code>PCollection</code> of <code>ReadOperations</code> (e.g, Scan), and produce a <code>PCollection&lt;Result&gt;</code> from those <code>ReadOperation</code>s.</p>
  
  <p>I have a use case where I need to have multiple prefix scans, each with different prefix, and the number of rows with the same prefix can be small (a few hundred) or big (a few hundreds of thousands). If nothing like <code>ReadAll</code> is already available. I am thinking about having a <code>DoFn</code> to have a 'limit' scan, and if the limit scan doesn't reach the end of the key range, I will split it into smaller chunks. In my case, the key space is uniformly distributed, so the number of remaining rows can be well estimated by the last scanned row (assuming all keys smaller than the last scanned key is returned from the scan).</p>
  
  <p>Apology if similar questions have been asked before.</p>