GitHub user arina-ielchiieva opened a pull request:
https://github.com/apache/drill/pull/882
DRILL-4735: ConvertCountToDirectScan rule enhancements
1. ConvertCountToDirectScan rule will be applicable for 2 or more COUNT
aggregates.
To achieve this DynamicPojoRecordReader was added which accepts any number
of columns,
on the contrary with PojoRecordReader which depends on class fields.
AbstractPojoRecordReader class was added to factor out common logic for
these two readers.
2. ConvertCountToDirectScan will distinguish between missing, directory and
implicit columns.
For missing columns count will be set 0, for implicit to the total records
count
since implicit columns are based on files and there is no data without a
file.
If directory column will be encountered, rule won't be applied.
CountsCollector class was introduced to encapsulate counts collection logic.
3. MetadataDirectGroupScan class was introduced to indicate to the user
when metadata was used
during calculation and for which files it was applied.
Details in Jira
[DRILL-4735](https://issues.apache.org/jira/browse/DRILL-4735).
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/arina-ielchiieva/drill DRILL-4735
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/drill/pull/882.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #882
----
commit 7d75460132f41f2f075d9d279bf71e9e43b060b8
Author: Arina Ielchiieva <[email protected]>
Date: 2017-07-20T16:26:44Z
DRILL-4735: ConvertCountToDirectScan rule enhancements
1. ConvertCountToDirectScan rule will be applicable for 2 or more COUNT
aggregates.
To achieve this DynamicPojoRecordReader was added which accepts any number
of columns,
on the contrary with PojoRecordReader which depends on class fields.
AbstractPojoRecordReader class was added to factor out common logic for
these two readers.
2. ConvertCountToDirectScan will distinguish between missing, directory and
implicit columns.
For missing columns count will be set 0, for implicit to the total records
count
since implicit columns are based on files and there is no data without a
file.
If directory column will be encountered, rule won't be applied.
CountsCollector class was introduced to encapsulate counts collection logic.
3. MetadataDirectGroupScan class was introduced to indicate to the user
when metadata was used
during calculation and for which files it was applied.
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---