Hello!

Can you please provide all rows&columns of "EXPLAIN SELECT ... WHERE A=?"
query?

Regards,
-- 
Ilya Kasnacheev


чт, 12 нояб. 2020 г. в 20:04, Lieuwe <lieuwe.elger...@novatiq.com>:

> I wonder if anyone can shed some light on the Apache Ignite performance I
> am
> seeing.
>
> I am running a single node & have a very simple CacheConfiguration
> consisting of 4 fields.
>
> The program is very much like the put-get-example code shipped with Ignite
> &
> I am doing a few tests to see how fast (how many transactions per second) I
> can read & write data to the cache.
>
> 1: Just incrementing the key and doing ignite::cache::Cache::Put(key,
> dataObject) I can push 100K entries in the cache at about 12K TPS
>
> 2: Doing the same for ignite::cache::Cache::Get(key) yields 150K TPS
>
> 3: I then use a ignite::cache::query::SqlFieldsQuery &
> ignite::cache::query::QueryFieldsCursor to do "SELECT A, B, C, D FROM
> MyCache WHERE _key = ?"
> Only doing cursor.isValid() && cursor.hasNext() yields 26K TPS
>
> 4: The last test I do is as above, but instead of the where clause being
> '_key = ?' .. I change this to 'A=?'. In other words I use one of the
> fields
> as a select criteria. I only get a shocking 20 TPS.
>
> Having an index on field A makes no difference. The size of the cache does
> -
> when I reduce that to a handful of entries that last rate will go up to
> about 2K TPS.
>
>
> My questions:
> - There seems to be a big difference between Put & Get .. is that normal?
> - There is also big difference between scenario 2 & 3 whilst they are
> essentially doing the same thing .. why is SQL having so much overhead? And
> example 3 doesn't even parse the columns out of the cursor whereas example
> 2
> gives me all 4 columns for the key.
> - And most importantly - why the shocking performance in scenario 4?
>
> Thanks
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>

Reply via email to