powered by Jive Software

Database choice and impact

Just stumbled across openfire tonight while researching an internal IM solution for a client.

Is there any documentation or could someone provide some guidance as to the impact of database choice with Openfire when deciding between embedded or external database installation.

The Scenario I’m looking at installing on is Windows Server 2008, Has Sql Server 2008 R2 already. Maximum users would be 30.

I am wondering with this small user count what benefit if any would be gained from using an external SQL Database as opposed to the embedded database.

Embedded database is the simpliest solution, but not the most robust as it can sometimes corrupt and is not efficient when you start getting lots of users or data. It also consumes memory as the database is in-memory until flushed to disk. External databases will scale better and are less prone to failures.

For chat logging/archiving: Use an external DB or do housekeeping often.

The embedded DB is completely in-memory and very stable and easy to backup.

So, which one should he believe? I’m using embedded one for 10 years now (same database). It hasn’t yet got corrupted on me (knocks the wood) and it handles ~150 online users (i’m on linux though). Having said that, if i would had a spare external database laying around unused, i would use it probably. Though with the embedded database complete backup is so simple. Just copy the whole /openfire folder.

I think I’ll give the embedded a shot, as the use isn’t mission critical so I’m not concerned with archiving and such at this stage.

Memory shouldn’t be an issue as the server has 24 GB of ram and sits fairly idle most of the day when people are there.

Edit: Well when I actually went to install the installer mentioned “better performance” with external database so I just decided to use MSSql in the end after all.

Thanks for the help all