Hi, I'm using JADE (Java Agent DEvelopment Framework) and need to set up a database back end. Does anyone have any recommendations for which database system would work well with the framework?
I think you're free to choose any database that works well with Java. Jade doesn't have a preference in that respect.
We use MySQL in our Jade application. The database access is handled by Hibernate.
As Strawberry says, Jade doesn't put any restrictions on your database use, so long as you can get at it from Java. However, you might have some Agent-based requirements - are you using the database to share information between different Agents? In different containers? On different platforms?
If you're just using the database to store data for individual Agents, then something simple like HSQL should do the trick (I've only really got experience with SQLite: see here for some examples of how to talk to it from Java).
However, if you want to have, say, one Agent stash something in the database for another Agent on another platform to read, then you'll probably need something more heavyweight. I've used MySQL in the past, but not in anger. I've also used Firebird, which doesn't suffer from any annoying commercial/free forking like MySQL does. But, again, this comes down to "which database should I use with Java", rather than being Jade-specific. For example, here's a question about sharing one MySQL back-end between two Java servers.