[glue-wg] On BDII performance was Re: When is data stale?
Paul Millar
paul.millar at desy.de
Thu May 7 12:27:47 EDT 2015
Hi Florido,
Sorry for the delay in replying.
On 22/04/15 11:45, Florido Paganelli wrote:
[..]
> As you can see above, you just bechmarked the top of the iceberg.
Agreed; although it's nice to see that many site-level BDIIs are very
fast, while a very small fraction are (perhaps disproportionally) slow.
This could be influencing the latency, as the top-level BDII waits for
all site-level BDIIs to complete sending before generating the LDIF and
updating the slapd.
[...]
> Over the years Laurence managed to shorten down this update time with
> several smart ideas, that include also enterprise-level techniques like
> replication, and probably partial LDIF documents where applicable. I
> think in this way he avoided having two LDAP servers.
That is my understanding too: Laurence has improved the situation
greatly over the years.
> You have to understand that the LDAP technology is intended for data
> that changes rarely, and we're using it for an almost real-time system.
> One more hint of the fact that is a bad monitoring tool...
>
> Trust me, 30 mins is a great achievement for a technology that never was
> meant to do what we use it for. I might have several arguments against
> BDII code but not about its performance.
I think we have to agree to differ slightly on this point.
I certainly agree with you that OpenLDAP software is designed for read
performance rather than update (or write) performance, with the
consequence that it doesn't work so well for all the use-cases we might
want.
I haven't benchmarked the complete BDII update life-cycle, especially
not for lcg-bdii.cern.ch: the top-level BDII that I often use as a
reference point. I don't know how much time is spent preparing the
LDIF, compared to the time OpenLDAP takes to process the changes. If
generating the LDIF takes the majority of the time then perhaps this
could be improved: currently this is done with perl and python, perhaps
alternative technologies would be faster?
However, I still feel that there's nothing intrinsic in what was want to
achieve that prevents us using LDAP the network protocol (i.e., not
necessarily OpenLDAP) to achieving much reduced latencies.
> The problems we're facing with ARC while trying to move to other
> technologies is that query times for LDAP are faster than other
> investigated technologies (e.g. REST web services)
> Update times are horrible, but for people is more important to have the
> queries fast than the information fresh it seems...
> And I can say this because in ARC we put also jobs in the LDAP database,
> which is EXTREME for today's numbers (i.e. O(10000) jobs).
> It's nice(?) that these numbers match those that Stephen mentioned.
Yes, I guess so. It's living on the "bleeding edge" that triggers
innovation, right?
Cheers,
Paul.
More information about the glue-wg
mailing list