[
https://issues.apache.org/jira/browse/PHOENIX-7064?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17810664#comment-17810664
]
ASF GitHub Bot commented on PHOENIX-7064:
-----------------------------------------
fan1emon opened a new pull request, #1805:
URL: https://github.com/apache/phoenix/pull/1805
This commit try to improve the performance of prepare local index.
The prepare logic is similar to global index and may be combined with global
index.
IT needs to be added
> Prepare of local index mutations is extremely slow
> --------------------------------------------------
>
> Key: PHOENIX-7064
> URL: https://issues.apache.org/jira/browse/PHOENIX-7064
> Project: Phoenix
> Issue Type: Improvement
> Affects Versions: 5.1.3
> Reporter: fanartoria
> Priority: Major
> Fix For: 5.2.0, 5.1.4
>
> Attachments: ddl-global.sql, ddl-local.sql, gen-data.sh,
> image-2023-10-09-17-29-47-856.png, image-2023-10-09-17-41-29-679.png,
> test-patch-using-global-index-logic.patch
>
>
> When the data table has more than one index, the prepare time of local index
> will be much slower than global index.
> The write performance should be better on local indexes.
> Here is the stack trace which the most time is spent in.
> !image-2023-10-09-17-29-47-856.png!
> Seems a LocalTableState object will be create when prepare index mutation for
> each row.
> Compared with other ValueGetter, LazyValueGetter may be has bad performance.
> Why not use IndexMaintainer#createGetterFromKeyValues?
> Or combine the logic with global index prepare?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)