[Kroupware] OpenGroupware.org formed through SKYRiX open sourcing its Groupware server

Andrew Kohlsmith akohlsmith-kolab at benshaw.com
Thu Jul 10 12:03:57 CEST 2003


> While this is a repackage of an older project, I have yet to see it work.
> There is a ton of hype behind it but IMHO they have a few disadvantages.
> The big one being the huge database backend.  By using IMAP to store
> information and LDAP to store the config and accounts I think kolab has
> more flexability.   Now advantages we can catch up with quickly.  The
> webdav support is pretty easy with a nano (i think this is the webdav
> python server) and they pyimap code.  Someone with time and energy could
> duplicate this quickly.   Im not sold on the webdav part though over a
> native MAPI transport and datastore like im doing.  The only real
> advantage for the Gnomes is evolution can use it out fo the box.

I am currently evaluating Exchange4Linux (exchange4linux.org) -- It uses one 
big badass database for everything as well.  I've been dumping tons of data 
into it to try and test it in terms of speed and compatibility with 
Outlook.

I hate to say it, but that really is my #1 priority at this time: Outlook 
compliance.  Until I can get a decent cross-platform groupware client, my 
office is stuck with it.  Exchange4Linux has one very big advantage that no 
other project to date has achieved: 100% Outlook functionality.  

E4L stores _everything_ in a postgres database, including email.  Any 
attachments are stored as large objects.  The server software is all Python 
and communicates with the proprietary Outlook connector via CORBA.  (i.e. 
the Outlook connector is a MAPI <--> CORBA gateway.)  

Speed so far has been crappy, but I am working on tuning pgsql for better 
speed, which I think is a large part of the problem, although moving the db 
to a fast SCSI storage system and throwing a ton of processor (P4/2.2G) at 
it has causes the new bottleneck to appear to be the Python server itself.

The _really_nice_thing_ about E4L is that all my outlook data is in 
English...  the basic concept is objects and properties.  There are two 
basic tables for each user: an object and property table, and then a pair 
of tables for public objects and properties.  Each contact, email, calendar 
entry, journal entry, etc. has one object entry in the appropriate object 
table (user or public), and then all properties for that object appear in 
the relevant properties table.  On average, each contact has about one 
hundred properties associated with it.  Each property has a 
human-understandable name and the data is also easy to understand for the 
most part.  There are some "gobbledegook" properties that I assume are 
Outlook-internal.

In order to present data to non-outlook clients, more software needs to be 
written for E4L.  There is a (rudimentary) IMAP4 server, but an LDAP and 
ICAL/MCAL server will be necessary.

I realize this is offtopic, but after looking at the way that E4L handles 
this data, I am starting to believe that the ideal way to handle the vast 
majority of the data is in a database, perhaps with various front-ends 
(IMAP4, LDAP, ISchedule)...  I was a believer in the "IMAP server, LDAP 
server, etc. with some DB to tie it together" until I started playing with 
E4L...  now I'm not so sure.  They're two different ways of doing it, but I 
think that both methods have _significant_ merit.  I suppose it comes down 
to how badly email performance is impacted.

Regards,
Andrew


More information about the Kroupware mailing list