You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Kirill Gusakov (Jira)" <ji...@apache.org> on 2022/07/21 14:35:00 UTC

[jira] [Created] (IGNITE-17403) SQL "select by key" performance 50-60 times slower than key-value get

Kirill Gusakov created IGNITE-17403:
---------------------------------------

             Summary: SQL "select by key" performance 50-60 times slower than key-value get
                 Key: IGNITE-17403
                 URL: https://issues.apache.org/jira/browse/IGNITE-17403
             Project: Ignite
          Issue Type: Task
            Reporter: Kirill Gusakov


During the https://issues.apache.org/jira/browse/IGNITE-17220 benchmarks runs we found out, that YCSB benchmarks show very slow performance.

1. After some investigations under https://issues.apache.org/jira/browse/IGNITE-17379 we found out, that SQL select by key performance significantly slower, than the same key-value get: 1-2ms vs 40-50ms.

Step to reproduce:
 * clone branch [https://github.com/gridgain/apache-ignite-3/tree/ignite-17379]
 * run test ItBenchmarkTest#testYCSBLikeKV

2. Also, at the same time it looks like performance degradation depends on the size of table data

Step to reproduce:
 * run the test ItBenchmarkTest#testReadDegradationSqlApi

 

According to these points, it seems that the cause of these issues: "rocksdb full scan and post-filtering" pattern, which we are using in SQL API (fix me, if I'm wrong). You can check async-profile cpu flamegraph from the benchmarks run on my machine (RocksIterator#seek0 column, I guess)

 



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