You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Roman Puchkovskiy (Jira)" <ji...@apache.org> on 2023/05/22 08:43:00 UTC

[jira] [Assigned] (IGNITE-19530) Reduce size of configuration keys

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

Roman Puchkovskiy reassigned IGNITE-19530:
------------------------------------------

    Assignee: Roman Puchkovskiy

> Reduce size of configuration keys
> ---------------------------------
>
>                 Key: IGNITE-19530
>                 URL: https://issues.apache.org/jira/browse/IGNITE-19530
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Denis Chudov
>            Assignee: Roman Puchkovskiy
>            Priority: Major
>              Labels: ignite-3
>
> *Motivation*
> The distributed configuration keys are byte arrays formed from strings that contain some constant prefixes, postfixes, delimiters and identificators, mostly UUIDs. Example of the configuration key for default value provider type of table column:
> {{dst-cfg.table.tables.d7b99c6a-de10-454d-9370-38d18b65e9c0.columns.d8482dae-cfb8-42b8-a759-9727dd3763a6.defaultValueProvider.type}}
> It contains 2 UUIDs in string representation. Unfortunately, there are several configuration entries for each table column (having similar keys) and besides that about a dozen of keys for table itself.
> As a result, configuration keys take 68% of a meta storage message related to table creation (for one node cluster, for a table of 2 columns and 25 partitions) which creates excessive load on meta storage raft group in case of mass table creation (see IGNITE-19275 )
> *Definition of done*
> We should get rid of string representation of UUIDs in configuration keys, UUIDs should be written as 16 bytes each into byte array directly. Also, string constants should be reduced (or even replaced to constants consisting of few bytes) because there is no need to keep them human readable.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)