Is your feature request related to a problem or challenge? Please describe what you are trying to do.
A couple of developers might discover that it's not that easy to decide when to use ensureLoaded to load native data to JVM as well as ensureOffloaded. The existing of the methods were to implement lazy load/offload on data to reduce the overall JNI overhead running queires.
Describe the solution you'd like
Spark 3.3 made class ColumnarBatch inheritable. We can implement the class by (e.g.) GlutenLoadedColumnarBatch and GlutenOffloadedColumnarBatch, then we don't need developers to explicitly use ensureLoaded and ensureOffloaded.
This is a placeholder issue since we are now still on Spark 3.2 and ColumnarBatch is still not allowed to be extended.