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

Ivan Bessonov resolved IGNITE-20769.
------------------------------------
    Resolution: Won't Fix

Issue has been created too early. Some of these optimizations are already 
implemented, others will be considered in a corresponding Epic.

> Optimize append to logit log storage
> ------------------------------------
>
>                 Key: IGNITE-20769
>                 URL: https://issues.apache.org/jira/browse/IGNITE-20769
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Ivan Bessonov
>            Priority: Major
>              Labels: ignite-3
>
> There are several obvious places where we copy data multiple times:
>  * {{LogEntryEncoder#encode}} always uses a new array, and it always copies 
> {{LogEntry#data}} into it, which is sort of pointless.
>  * {{SegmentFile#encodeData}} copies that data one more time.
> According to benchmarks ({{{}LogStorageBenchmark{}}}), if fsync is disabled, 
> then we only spend 30-40% (roughly) of time actually writing the data into 
> mmap buffer. The rest is all sorts of data manipulation.
> Optional:
>  * maybe we should get rid of mmap
>  * preparing some parts of data in offheap might be a good idea, if we get 
> rid of mmap (file channels must use direct buffers in their internals)



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

Reply via email to