Enhance it with the fact you can lazy load sqlite query using HTTP Range as demonstrated in: https://news.ycombinator.com/item?id=27016630
(My guess would be yes as I believe it breaks up the file for distribution, but have no idea if it’s exposed in the IPFS.js api)
EDIT:
After a quick scan of the docs, I think you can do this (but I certainly don't know enough). With at least the "The Mutable Files API" which "is a virtual file system on top of IPFS that exposes a Unix like API", you can provide an `offset` and `length` to `ipfs.files.read(path, [options])`. I don't know if that then translates to only downloading that part of the file from IPFS or not.
https://github.com/ipfs/js-ipfs/blob/master/docs/core-api/FI...
EDIT2:
In fact the `ipfs.cat` api that the OP is using takes `offset` and `length` parameters too.
https://github.com/ipfs/js-ipfs/blob/master/docs/core-api/FI...