[
https://issues.apache.org/jira/browse/IGNITE-22480?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vyacheslav Koptilin updated IGNITE-22480:
-----------------------------------------
Labels: ignite-3 (was: )
> Sql. Optimize performance of multistatement with simple inserts
> ---------------------------------------------------------------
>
> Key: IGNITE-22480
> URL: https://issues.apache.org/jira/browse/IGNITE-22480
> Project: Ignite
> Issue Type: Improvement
> Components: sql
> Reporter: Iurii Gerzhedovich
> Assignee: Pavel Pereslegin
> Priority: Major
> Labels: ignite-3
> Fix For: 3.0.0-beta2
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Execution multistatement contains a big amount of INSERT statements take to
> much time. For example, world.sql from AI2 contains about 5k insert
> statements that took more than 2 minutes on my local machine. However, if the
> multistatement rewrite to a few inserts contains multi values (e.g. insert
> into t(a,b) values(1,2) values (2,3) values.....) then it took just a few
> seconds.
> The fast check shows that most of the time consuptions by expression
> compilation.
> We have a few options for how it could be resolved:
> 1. Use expression interpretation for simple cases instead of compilation to
> java class.
> 2. Dynamically rewrite such inserts to prepared statements.
> 3. On AST level extract values (it will work just for literals) and create
> tuple for inserting by hands.
> Options ordered by the hardness of implementation. Let's start from 3rd, as
> the simplest to implement, and check how it will work.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)