Hi Laszlo,
I agree with both of your comments.
1. Duplicate data cache. Right now it is definitely possible.
2. Updates. Right now there is only a time based invalidation, but that will be changed.
We will add a feature to map between stored procedures and the tables they update, and
will invalidate relevant data.
Caching on the SQL level is hard (harder than Hibernate 2nd level cache for instance) but
that's what we have right now... (And I'm not sure that JPA/Hibernate will be
better).
----- Original Message -----
From: "Laszlo Hornyak" <lhornyak(a)redhat.com>
To: "Liran Zelkha" <lzelkha(a)redhat.com>
Cc: "engine-devel" <engine-devel(a)ovirt.org>
Sent: Monday, May 13, 2013 12:28:59 PM
Subject: Re: [Engine-devel] DB performance optimization
Hi Liran,
Thanks for this patch, I have been asking for caching for a long while and I hope to see
caching in the engine soon.
Beyond the comments I have made to your patch, I have some questions about the idea just
to start the discussion.
So your cache solution is caching data based on SQL statements?
What will the cache do if we query the same data with two different SQL statements? e.g.
you can query from views like vms and sometimes we only query the vm_static and we should
get the same vm_static.
Also, how will you deal with updates? e.g. when you update the vm_static record, that
vm_static record must be updated or invalidated but also the vm record from
Thx,
Laszlo
----- Original Message -----
From: "Liran Zelkha" <lzelkha(a)redhat.com>
To: "engine-devel" <engine-devel(a)ovirt.org>
Sent: Monday, May 13, 2013 10:40:31 AM
Subject: [Engine-devel] DB performance optimization
Hi all,
There is a WIP for caching and DB performance optimization. Please look at -
http://gerrit.ovirt.org/#/c/14188/4
To summarize, it includes automatic caching for some business entities
(*_static for instance), break up of VDS to VDS_static, VDS_dynamic and
VDS_statistics, and support for batch updates.
Please share if/where you think batch updates can be used (for a usage
scenario, please check
InterfaceDaoDbFacadeImpl.massUpdateStatisticsForVds()).
Future tasks will include update sensitivity, better Collection caching and
trying to minimize getConnection() calls.
Would love your comments and ideas.
Thanks.
_______________________________________________
Engine-devel mailing list
Engine-devel(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel