ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vladimir Ozerov (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (IGNITE-6409) SQL: bypass H2 during index update
Date Thu, 12 Oct 2017 07:51:00 GMT

     [ https://issues.apache.org/jira/browse/IGNITE-6409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Vladimir Ozerov updated IGNITE-6409:
------------------------------------
    Description: 
Currently the only way to update standard user index is through H2 infrastructure. See {{GridH2IndexBase#put}}
and it's usages. For every update we have to construct a kind of H2 row which will be passed
to index. This operation might require unnecessary memory copying and deserializations. We
should try to find a way to bypass H2 stuff altogether and add data to underlying {{BPlusTree}}
directly.

Here is how this could be achieved:
1) Actual tree is {{H2Tree}}. It is accompanied by several helper classes ({{InlineIndexHelper,
{{H2*IO}}). 


  was:
Currently the only way to update standard user index is through H2 infrastructure. See {{GridH2IndexBase#put}}
and it's usages. For every update we have to construct a kind of H2 row which will be passed
to index. This operation might require unnecessary memory copying and deserializations. We
should try to find a way to bypass H2 stuff altogether and add data to underlying {{BPlusTree}}
directly.

Here is how this could be achieved:




> SQL: bypass H2 during index update
> ----------------------------------
>
>                 Key: IGNITE-6409
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6409
>             Project: Ignite
>          Issue Type: Task
>          Components: persistence, sql
>    Affects Versions: 2.1
>            Reporter: Vladimir Ozerov
>              Labels: iep-1, performance
>             Fix For: 2.4
>
>
> Currently the only way to update standard user index is through H2 infrastructure. See
{{GridH2IndexBase#put}} and it's usages. For every update we have to construct a kind of H2
row which will be passed to index. This operation might require unnecessary memory copying
and deserializations. We should try to find a way to bypass H2 stuff altogether and add data
to underlying {{BPlusTree}} directly.
> Here is how this could be achieved:
> 1) Actual tree is {{H2Tree}}. It is accompanied by several helper classes ({{InlineIndexHelper,
{{H2*IO}}). 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message