public CompletableFuture<DataBlock> getBlock(GetOptions options, ObjectReader objectReader,
        DataBlockIndex dataBlockIndex) {
        Cache cache = cache(dataBlockIndex.streamId());
        return cache.getBlock(options, objectReader, dataBlockIndex);
    }
Get the data block from cache.
<p>
Note: the data block should invoke the {@link DataBlock#release()} after using.

@param options        the get options
@param objectReader   the object reader could be used read the data block when cache misses
@param dataBlockIndex the required data block's index
@return the future of {@link DataBlock}, the future will be completed in the same stream's eventLoop.
s3stream/src/main/java/com/automq/stream/s3/cache/blockcache/DataBlockCache.java