[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Is anyone interested in SQL/ODBC backend? I have one...



Dmitry Kovalev wrote:

> Hi.
>
> The situation is as follows. As possible part of a bigger project, I
> have developed a read-only backend for Umich slapd 3.3 that is
intended
> primarily to _present_ information stored in an RDBMS as a set (tree)
of
> LDAP objects.
> Suppose we have some centralized information system(s), based on RDBMS

> (maybe on different RDBMSes), which stores and manages things like
> persons info, publications, organization structure, or any other set
of
> information resources. By adding several tables with metainformation
> about mapping LDAP queries to RDBMS queries on each host, this backend

> allows to join these non-interoperable systems into single distributed

> system-independent LDAP tree.
> Or it could simply help one to publish data in his RDBMS to LDAP
without
> having to maintain two copies of the same data in different places :)
> It has nothing to do with _putting_ information into RDBMS through
LDAP
> -- I don't think it is a good idea, anyway -- the purposes and ways of

> LDAP and RDBMS are too different...
>
> It uses iODBC, and has been tested under RHLinux/MySQL, now I'm trying

> to make it work on SunOS 5.6/Oracle7 (the only problem is ODBC driver
-
> I did not manage to compile it yet :).
> Another potential problem is that I have just learned of OpenLDAP
> project recently, so the work is done based on pure Umich LDAP 3.3, no

> autoconf and things... Does it really make a problem?
>

Not if your willing to put some effort into porting to OpenLDAP :-)
(Should not be too difficult, the backend interface has changed but not
very much)

>
> In fact, I don't even know if somebody had already done similar work,
> and what problems are currently in fashion here :)

I've been working on an SQL backend a few months ago, but unfortunately
that project has been delayed in favor of another project. I hope to
continue it in about two month though. The project uses an (Oracle)
database to store arbitrary attributes.
Simply put, a single big table contains rows with DN, attribute name and

attribute value. A prototype has been built that uses a generic CORBA
backend interface (implemented with OmniORB2) that delegates requests to
a
Java server. This Java server translates the LDAP calls to SQL queries,
which it dispatches to Oracle through JDBC. So far only the search call
has
been implemented, but it includes a full translation from search filter
to
SQL queries (optionally using joins or UNION/INTERSECTs).
The CORBA backend is available at
ftp://ftp.openldap.org/incoming/bb-back-corba.19990610.tgz . It's a
loadable module, so it will not work with OpenLDAP 1.2 or older. The
CORBA
IDL interface is documented at:
http://home.lifeline.nl/bastiaan/openldap/corba/idldoc/index.html
The Java backend server has not been released yet, but I'm willing to
see
if I can do an alpha release there's interest.


>
> If there is some coordinator on this matter, please mail me in any
case,
> telling about current situation about LDAP and RDBMS :)
> If anyone is interested, mail me too - I'll then have whole Umich
build

Well, I'm definitely interested in your work, even though at the moment
I
won't have much time to play with it.

>
> tree with sql-backend arranged and published on FTP. Or maybe I should

> better learn CVS and rearrange sources?

Learning CVS is a good idea anyway :-)

>
> I also could post some information concerning architecture and usage
of
> the backend.
>

Please do.

Regards,

Bastiaan