Alex Hudson
2008-08-01 15:52:19 UTC
Hey everyone,
So, a status update on where we are with the Store.
A while ago I was talking about having a specified Query Language within
the store to replace the de-facto use of CLucene queries, since CLucene
may (probably will) go away at some point and we don't want to have to
parse their stuff because it's hard and not terribly well suited to use.
The code I wrote for the parser has been committed into SVN, and I've
documented the new query language somewhat here:
http://www.bongo-project.org/Documentation/Bongo_Query_Language
It could use some more examples, which I'll try to fill out in the
future, but the meat and bones of it is there - it's very simple. This
query language is what I want to use to drive SQLite behind the scenes a
lot of the time, because it has one really nice property: we can set
queries within Bongo, accept queries from clients, and then join them at
the hip by doing "& <bongoquery> <clientquery>".
The framework to convert this into SQL isn't really complete, but it's
beginning to hit SVN, and I blogged about it here:
http://www.alexhudson.com/blog/2008/08/01/#new-query-builder
This creates SQL along the lines of my discussion with Terry on the list
months ago: it's taken me ages to figure out the "right" way of doing
this, but I'm pretty pleased which how it's coming along at the moment.
I haven't wired this into the store yet - that's the next job - and I
also want to setup a testing data set to run some store commands against
to verify that the results are correct.
I'm hoping to get a good chunk of this done this weekend, by which point
I can test it a bit harder and then think about merging it onto trunk.
Cheers,
Alex.
So, a status update on where we are with the Store.
A while ago I was talking about having a specified Query Language within
the store to replace the de-facto use of CLucene queries, since CLucene
may (probably will) go away at some point and we don't want to have to
parse their stuff because it's hard and not terribly well suited to use.
The code I wrote for the parser has been committed into SVN, and I've
documented the new query language somewhat here:
http://www.bongo-project.org/Documentation/Bongo_Query_Language
It could use some more examples, which I'll try to fill out in the
future, but the meat and bones of it is there - it's very simple. This
query language is what I want to use to drive SQLite behind the scenes a
lot of the time, because it has one really nice property: we can set
queries within Bongo, accept queries from clients, and then join them at
the hip by doing "& <bongoquery> <clientquery>".
The framework to convert this into SQL isn't really complete, but it's
beginning to hit SVN, and I blogged about it here:
http://www.alexhudson.com/blog/2008/08/01/#new-query-builder
This creates SQL along the lines of my discussion with Terry on the list
months ago: it's taken me ages to figure out the "right" way of doing
this, but I'm pretty pleased which how it's coming along at the moment.
I haven't wired this into the store yet - that's the next job - and I
also want to setup a testing data set to run some store commands against
to verify that the results are correct.
I'm hoping to get a good chunk of this done this weekend, by which point
I can test it a bit harder and then think about merging it onto trunk.
Cheers,
Alex.