120 likes | 263 Views
Implementation of a SQL Engine for LDAP. Shiv Shankar Ramakrishnan, Ranjeet Sonone, Shyam Gopale LDAP-RDBMS integration product group, PSPL. An example of where LDAP fits. Sample LDAP usage. White Pages "I want to look up so-and-so and get their email address and phone number..."
E N D
Implementation of a SQL Engine for LDAP Shiv Shankar Ramakrishnan, Ranjeet Sonone, Shyam Gopale LDAP-RDBMS integration product group, PSPL Persistent Systems Private Limited (http://www.pspl.co.in)
An example of where LDAP fits Persistent Systems Private Limited (http://www.pspl.co.in)
Sample LDAP usage • White Pages • "I want to look up so-and-so and get their email address and phone number..." • Yellow Pages • "List me all the printers.." • Attribute Mapping • "Give me the company ID number of the person whose login ID is..." • "Give me the email routing address of this person...” • Directory-enabled networking • “Give me the traffic policy for this department …” • “Give me the preferences last used by this client …” Persistent Systems Private Limited (http://www.pspl.co.in)
DN, RDN, hierarchy object class, attribute base, one level, subtree operations search, insert, update, delete, modrdn, moddn multi-valued attributes ou = people, o = pspl.co.in ou = groups ou = engineering cn = ShivR cn = Sat Lectures cn = RanjeetS cn = AdityaP cn = ShyamG cn = Fri Lectures About LDAP Persistent Systems Private Limited (http://www.pspl.co.in)
LDAP Application RDBMS Application SQL to LDAP (PS EnList) LDAP to SQL (?) LDAP Server RDBMS Server Synchronization (PS EnSure) Database/LDAP integration Persistent Systems Private Limited (http://www.pspl.co.in)
ou = people, o = pspl.co.in ou = groups ou = engineering cn = ShivR cn = Sat Lectures cn = RanjeetS cn = AdityaP cn = ShyamG cn = Fri Lectures Example of a table mapping Persistent Systems Private Limited (http://www.pspl.co.in)
PS EnList: relational view of LDAP data • The tree below an entry is viewed as a table, entries as records/tuples. • A table definition determines the entries returned and the attributes which are searched. • base DN, • object classes, • scope, • column-attribute mapping, • PK selection, • datatypes Persistent Systems Private Limited (http://www.pspl.co.in)
ODBC Interface SQL Engine Metadata Data LDAP client LDAP Server PS EnList SQL engine requirements • Standards-based interfaces • Multi-valued attributes • Exploit the server functionality • Almost as fast as LDAP • Product extensibility • data source consolidation • PERL operator Persistent Systems Private Limited (http://www.pspl.co.in)
ou = people, o = pspl.co.in ou = groups ou = engineering cn = ShivR cn = Sat Lectures cn = RanjeetS cn = AdityaP cn = ShyamG cn = Fri Lectures Consider a sample query • “Give unique, ordered telephone numbers for all groups with at least one ‘MTS’ from ‘Engineering’ as a member of the group. • Multivalued attributes, operators - filters, join, distinct Persistent Systems Private Limited (http://www.pspl.co.in)
SQL for the sample query • Select distinct Grp.Tel, Ppl.dn from Grp, G_members, Ppl where Ppl.title = ‘MTS’ and Ppl.dept = ‘engineering’ and G_member.dn = Grp.dn and G_member.member = Ppl.dn order by Ppl.dn Persistent Systems Private Limited (http://www.pspl.co.in)
Using the PERL operator for ‘parent of’ • “Find telephone numbers of departments with ‘Joshi’ in them.” • Select Dept.Tel, Dept.Name from Dept, Ppl where Ppl.surname = ‘Joshi’ and Dept.dn = STRIPRDN(Ppl.dn) Persistent Systems Private Limited (http://www.pspl.co.in)
LDAP related operators • LDAP scan • scan on the view table • Special LDAP related optimization • Filter and sort could be combined with ldap scan • ldap directory could be treated as index and could do index join Persistent Systems Private Limited (http://www.pspl.co.in)