The evolution of file reading APIs has seen a transition from simple full table reads to more advanced record batch readers, enhancing power and flexibility through iterative processes. Lance further advances this by introducing a "stream of read tasks," which separates scheduling from decoding and allows for operator fusion, thereby enhancing performance. The article discusses the limitations of full table reads and batch reads, particularly their memory constraints and lack of decode-query fusion, while highlighting the advantages of the record batch reader API in terms of parallelism and memory efficiency. Lance's "read task reader" API improves on these by allowing fusion of decode and query operations, resulting in faster processing as demonstrated through tests with the Apache Datafusion query engine. This approach is shown to reduce memory bottlenecks by minimizing trips to main memory, illustrating the benefits of operator fusion. Although these innovations are currently specific to the Lance file format, the article suggests that similar methods could be applied to Parquet readers, despite challenges with block compression. The piece concludes by inviting readers to engage with LanceDB's ongoing efforts to innovate in data lake technology and file format optimization.