[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
RE: Proxycache Documentation - again , . . . .
An important design consideration was to reduce the cost of query
containment. Proxy cache is designed to improve performance for a subset of
queries which belong to specified templates. Thus containment is checked
between queries of the same template. Apart from reducing the number of
filter and attribute set comparisons, it greatly simplifies filter
containment (at least for conjunctive queries). This does result in
slightly reduced cache answerability.
Regards,
Apurva
-----------
Apurva Kumar,
Research Staff Member,
IBM India Research Lab
Phone: +91-11-26861100
Fax: +91-11-26861555
"Voglmaier, Reinhard
Erich" To: "'Howard Chu'" <hyc@highlandsun.com>
<rv33100@gsk.com> cc: openldap-devel@OpenLDAP.org
Sent by: Subject: RE: Proxycache Documentation - again , . . . .
owner-openldap-devel@O
penLDAP.org
04/03/04 03:01 PM
Since things are clear now, one change to make at the administration
handbook:
In this documentation I wrote:
An example slapd.conf(5) database section
database ldap
suffix "dc=example,dc=com"
rootdn "dc=example,dc=com"
uri ldap://ldap.example.com/dc=example%2cdc=com
overlay proxycache
proxycache bdb 100000 1 1000 100
proxyAttrset 0 mail postaladdress telephonenumber
proxyTemplate (sn=) 0 3600
proxyTemplate (&(sn=)(givenName=)) 0 3600
proxyTemplate (&(departmentNumber=)(secretary=*)) 0 3600
cachesize 20
directory ./testrun/db.2.a
index objectClass eq
index cn,sn,uid,mail pres,eq,sub
Etc, etc, . . . . . .
Filter: (&(sn=Richard*)(givenName=jack))
Attrs: mail telephoneNumber
is cacheable, because it matches the template (&(sn=)(givenName=)) and its
attributes are contained in proxyAttrset 0.
This should be: IS NOT CACHEABLE, because mail,telephoneNumber is not
defined as an attribute set of its own.
Filter: (&(sn=Richard*)(givenName=jack))
Attrs: mail postaladdress telephonenumber
however is cacheable.
However let me make an observation:
In this case the cache contains even more information the user needs, it
contains for every record
mail postaladdress telephonenumber
Why not give him "mail and telephonenumber" just available in the cache ?
What if the administrator of the cache whishes to store 20 attributes and
allow any combination of them to be served from the cache ?
-----Original Message-----
From: Howard Chu [mailto:hyc@highlandsun.com]
Sent: giovedì 1 aprile 2004 13.02
To: Voglmaier, Reinhard Erich
Cc: openldap-devel@openldap.org
Subject: RE: Proxycache Documentation
> -----Original Message-----
> From: Voglmaier, Reinhard Erich [mailto:rv33100@gsk.com]
> I've read carefully the post of Kumar. I have also defined the
> attribute set.
Not carefully enough. You should break your example down step by step, then
the answer is quite obvious.
> proxyAttrset 0 mail sn givenName telephoneNumber proxyTemplate (sn=) 0
> 3600
>
> Therefore the search (sn=Voglma*) mail sn givenName telephoneNumber
>
> Results: cacheable.
>
> The search (sn=Voglm*) mail therefore should be answerable from the
> cache. Is this correct or do I misunderstand the documentation ?
Quoting Kumar's post:
>>A query Q, with requested attribute set S and filter F is answered by
>>a cached query Q' with attribute set S' and filter F' if:
>>(i) "proxyAttrset S" appears in the proxy overlay definition.
>>(ii) S is either same or a subset of S'.
The situation is this:
You have a cached query Q': (sn=Voglma*)
with the attrset S': mail sn givenName telephoneNumber
And then you follow with a query Q: (sn=Voglma*)
with attrs S: mail
By rule (i) above, 'mail' must be defined in a proxyAttrset directive of
its
own. If it is not defined, then the query will not be matched in the cache.
> -----Original Message-----
> From: Howard Chu [mailto:hyc@highlandsun.com]
> Sent: venerdì 26 marzo 2004 12.05
> To: Voglmaier, Reinhard Erich
> Cc: openldap-devel@OpenLDAP.org
> Subject: RE: Proxycache Documentation
>
>
> No, upon further investigation I concluded that the code is working as
> designed. Please re-read Apurva Kumar's post. You must have the
> attribute sets explicitly defined.
> http://www.openldap.org/lists/openldap-devel/200403/msg00083.html
>
> -- Howard Chu
> Chief Architect, Symas Corp. Director, Highland Sun
> http://www.symas.com http://highlandsun.com/hyc
> Symas: Premier OpenSource Development and Support
>
> > -----Original Message-----
> > From: owner-openldap-devel@OpenLDAP.org
> > [mailto:owner-openldap-devel@OpenLDAP.org]On Behalf Of Voglmaier,
> > Reinhard Erich
> > Sent: Friday, March 26, 2004 2:18 AM
> > To: 'Howard Chu'; ando@sys-net.it
> > Cc: openldap-devel@OpenLDAP.org
> > Subject: RE: Proxycache Documentation
> >
> >
> > Howard,
> >
> > Should it be fixed just in the release 2.2.7 ?
> > I ask coz I have the same problem with the new release.
> Should I make
> > a bug report ?
> >
> > Cheers
> > Reinhard
> >
> >
> > -----Original Message-----
> > From: Howard Chu [mailto:hyc@highlandsun.com]
> > Sent: venerdì 19 marzo 2004 9.35
> > To: Voglmaier, Reinhard Erich; ando@sys-net.it
> > Cc: openldap-devel@OpenLDAP.org
> > Subject: RE: Proxycache Documentation
> >
> >
> > > -----Original Message-----
> > > From: Voglmaier, Reinhard Erich [mailto:rv33100@gsk.com]
> >
> > > I'm not quite sure what I should do, kinda it's a bug or
> a feature ?
> > >
> > > For example, the doc does not speak about query containment. (
> > > actually the paper the docs points to does, however the
> syntax it's
> > > using is different from the actual used one )
> > >
> > > If I cash a query that has brings back "sn, cn,
> > telephoneNumber, mail"
> > > and make a new query asking only for "sn, cn" ( other stuff
> > > remains the
> > > same, obviously )
> > > Should this be answered from the cache or not ?
> > > Query containment should mean it comes from the cache,
> > actually it's
> > > not answerable ( info from the log file ).
> > > Is this a bug, or is this ok ?
-- Howard Chu
Chief Architect, Symas Corp. Director, Highland Sun
http://www.symas.com http://highlandsun.com/hyc
Symas: Premier OpenSource Development and Support