[Catalyst] KiokuDB, MongoDB and the NoSQL thing

Toby Corkindale toby.corkindale at strategicdata.com.au
Tue Mar 2 07:31:10 GMT 2010

On 02/03/10 17:07, S.A. Kiehn wrote:
> I have a couple of production Catalyst/DBIx::Class sites on Debian
> stable, and then on my personal hobby site I use local::lib to try out
> new things. Recently I split out my users for this site into a separate
> model and I thought it a good exercise to learn and use KiokuDB. It was
> just a couple of simple objects, users & roles, but I believe I have a
> better understanding of how a schema-less data model would work. All I
> do are lookups based on ID or indexed object values, but doing any type
> of ordering by dates or titles is a mystery. It seems that the
> Search::GIN is to provide this sort of functionality, but it is
> under-documented and has not had an update for awhile.
> I do not see many posts regarding uses of KiokuDB within Catalyst so I
> was curious about the opinion of the community in regards to its usage.
> Is it still to early within development?
> Also, I have been reading more about the increase in the NoSQL interest,
> with a particular interest in the MongoDB database (it seems to be
> similar in some respects to KiokuDB), but I do not find Perl people in
> the discussion as much as others (Ruby, PHP). Are there developers in
> the Catalyst community who lean toward NoSQL concepts over traditional
> RDMS's, or is best to view as a tool to use at times?
> How about MongoDB? Am I being suckered by another bandwagon?

Also Apache CouchDB.

I'm curious to know how these things work out for what I see as "real 
world" cases, where you do actually want to do searches on correlated data.

For instance, say you wanted to make a phpbb-style forum.
You have several forum areas, and within each there are many threads, 
each containing many posts.

Would every post in a thread be a new document, or would the entire 
thread be one big document? How would they be linked to the forums, by 
an ID in the document, or do we get into some kind of mega-document 
encapsulating everything on the board?

Say I wanted to do a search for all posts made by users named John in 
the forum called Linux, what would the syntax look like?


More information about the Catalyst mailing list