You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Stanilovsky Evgeny (Jira)" <ji...@apache.org> on 2020/10/16 12:08:00 UTC
[jira] [Updated] (IGNITE-13030) Calcite integration. Push
projections to scans and avoid reading full row when possible
[ https://issues.apache.org/jira/browse/IGNITE-13030?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stanilovsky Evgeny updated IGNITE-13030:
----------------------------------------
Description:
We can establish index-only scans in some cases. For example, if the column {{depId}} is indexed (and totally inlined), we can to execute a query like:
{code:java}
SELECT depId FROM emp
{code}
and collects resultset without pagememory lookups.
was:
Currently {{IngiteTableScan}} supports only embedded filters. If it supports also embedded projections (see {{ProjectableFilterableTable}} in Calcite), it will be able to push these projections down to page memory scans in order to avoid full row reading.
For example for the query
{code:java}
SELECT _val FROM tbl
{code}
we can read only values.
Moreover, we can establish index-only scans in some cases. For example, if the column {{depId}} is indexed, we can the execute query
{code:java}
SELECT depId FROM emp
{code}
using only index tree, without reading rows at all.
> Calcite integration. Push projections to scans and avoid reading full row when possible
> ---------------------------------------------------------------------------------------
>
> Key: IGNITE-13030
> URL: https://issues.apache.org/jira/browse/IGNITE-13030
> Project: Ignite
> Issue Type: Improvement
> Components: sql
> Reporter: Roman Kondakov
> Priority: Minor
>
> We can establish index-only scans in some cases. For example, if the column {{depId}} is indexed (and totally inlined), we can to execute a query like:
> {code:java}
> SELECT depId FROM emp
> {code}
> and collects resultset without pagememory lookups.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)