Initially HiveDrillNativeParquetGroupScan was based mainly on HiveScan, the core difference between them was
that HiveDrillNativeParquetScanBatchCreator was creating ParquetRecordReader instead of HiveReader.
This allowed to read Hive parquet files using Drill native parquet reader but did not expose Hive data to Drill optimizations.
For example, filter push down, limit push down, count to direct scan optimizations.
Hive code had to be refactored to use the same interfaces as ParquestGroupScan in order to be exposed to such optimizations.