You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Li Li <fa...@gmail.com> on 2012/02/07 10:24:12 UTC

more sql-like commands for solr

hi all,
    we have used solr to provide searching service in many products. I
found for each product, we have to do some configurations and query
expressions.
    our users are not used to this. they are familiar with sql and they may
describe like this: I want a query that can search books whose title
contains java, and I will group these books by publishing year and order by
matching score and freshness, the weight of score is 2 and the weight of
freshness is 1.
    maybe they will be happy if they can use sql like statements to convey
their needs.
    select * from books where title contains java group by pub_year order
by score^2, freshness^1
    also they may like they can insert or delete documents by delete from
books where title contains java and pub_year between 2011 and 2012.
    we can define some language similar to sql and translate the to solr
query string such as .../select/?q=+title:java^2 +pub_year:2011....
    this may be equivalent to apache hive for hadoop.

Re: more sql-like commands for solr

Posted by Michael Wechner <mi...@wyona.com>.
Am 07.02.12 11:13, schrieb Li Li:
> is the jsr implemented yet?

AFAIK it's not complete, but since Jackrabbit is also using Lucene and 
considering posts like for example

http://jackrabbit.510166.n4.nabble.com/Need-a-complete-JCR-JQOM-example-query-td3944788.html

I would assume there is some active development.

HTH

Michael
> I think I could first define this language by bnf and then use javacc 
> or antlr to implement.
> I have recently written a query rewriter component for our products 
> which defines regular expression like language that can rewrite querys.
> . and also we can learn something from http://jsqlparser.sourceforge.net/
> I have experimented it to check sql injections.
>
> On Tue, Feb 7, 2012 at 5:54 PM, Michael Wechner 
> <michael.wechner@wyona.com <ma...@wyona.com>> wrote:
>
>     Am 07.02.12 10:43, schrieb Li Li:
>>     I just want solr providing this new feature  and also want to
>>     know whether any other users need this feature. if possible, I'd
>>     like to participate in it.
>
>     sounds good. I would also be interested in such a functionality. I
>     think the first step would be to define a mapping between sql and
>     lucene queries (without actually implementing it) and check
>     whether and how this is possible.
>
>     It might be interesting to have a look at how jackrabbit is doing
>     it with
>
>     http://www.day.com/specs/jcr/2.0/6_Query.html
>
>     HTH
>
>     Michael
>
>>
>>     On Tue, Feb 7, 2012 at 5:31 PM, Michael Wechner
>>     <michael.wechner@wyona.com <ma...@wyona.com>> wrote:
>>
>>         Am 07.02.12 10:24, schrieb Li Li:
>>
>>             hi all,
>>                we have used solr to provide searching service in many
>>             products. I found for each product, we have to do some
>>             configurations and query expressions.
>>                our users are not used to this. they are familiar with
>>             sql and they may describe like this: I want a query that
>>             can search books whose title contains java, and I will
>>             group these books by publishing year and order by
>>             matching score and freshness, the weight of score is 2
>>             and the weight of freshness is 1.
>>                maybe they will be happy if they can use sql like
>>             statements to convey their needs.
>>                select * from books where title contains java group by
>>             pub_year order by score^2, freshness^1
>>                also they may like they can insert or delete documents
>>             by delete from books where title contains java and
>>             pub_year between 2011 and 2012.
>>                we can define some language similar to sql and
>>             translate the to solr query string such as
>>             .../select/?q=+title:java^2 +pub_year:2011....
>>                this may be equivalent to apache hive for hadoop.
>>
>>
>>         It's not clear to me whether you are asking a question or
>>         making a comment. Can you rephrase?
>>
>>         Thanks
>>
>>         Michael
>>
>>
>>         ---------------------------------------------------------------------
>>         To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
>>         <ma...@lucene.apache.org>
>>         For additional commands, e-mail: dev-help@lucene.apache.org
>>         <ma...@lucene.apache.org>
>>
>>
>
>


Re: more sql-like commands for solr

Posted by Li Li <fa...@gmail.com>.
is the jsr implemented yet?
I think I could first define this language by bnf and then use javacc or
antlr to implement.
I have recently written a query rewriter component for our products which
defines regular expression like language that can rewrite querys.
. and also we can learn something from http://jsqlparser.sourceforge.net/
I have experimented it to check sql injections.

On Tue, Feb 7, 2012 at 5:54 PM, Michael Wechner
<mi...@wyona.com>wrote:

>  Am 07.02.12 10:43, schrieb Li Li:
>
> I just want solr providing this new feature  and also want to know whether
> any other users need this feature. if possible, I'd like to participate in
> it.
>
>
> sounds good. I would also be interested in such a functionality. I think
> the first step would be to define a mapping between sql and lucene queries
> (without actually implementing it) and check whether and how this is
> possible.
>
> It might be interesting to have a look at how jackrabbit is doing it with
>
> http://www.day.com/specs/jcr/2.0/6_Query.html
>
> HTH
>
> Michael
>
>
> On Tue, Feb 7, 2012 at 5:31 PM, Michael Wechner <michael.wechner@wyona.com
> > wrote:
>
>> Am 07.02.12 10:24, schrieb Li Li:
>>
>>  hi all,
>>>    we have used solr to provide searching service in many products. I
>>> found for each product, we have to do some configurations and query
>>> expressions.
>>>    our users are not used to this. they are familiar with sql and they
>>> may describe like this: I want a query that can search books whose title
>>> contains java, and I will group these books by publishing year and order by
>>> matching score and freshness, the weight of score is 2 and the weight of
>>> freshness is 1.
>>>    maybe they will be happy if they can use sql like statements to
>>> convey their needs.
>>>    select * from books where title contains java group by pub_year order
>>> by score^2, freshness^1
>>>    also they may like they can insert or delete documents by delete from
>>> books where title contains java and pub_year between 2011 and 2012.
>>>    we can define some language similar to sql and translate the to solr
>>> query string such as .../select/?q=+title:java^2 +pub_year:2011....
>>>    this may be equivalent to apache hive for hadoop.
>>>
>>
>>  It's not clear to me whether you are asking a question or making a
>> comment. Can you rephrase?
>>
>> Thanks
>>
>> Michael
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
>> For additional commands, e-mail: dev-help@lucene.apache.org
>>
>>
>
>

Re: more sql-like commands for solr

Posted by Michael Wechner <mi...@wyona.com>.
Am 07.02.12 10:43, schrieb Li Li:
> I just want solr providing this new feature  and also want to know 
> whether any other users need this feature. if possible, I'd like to 
> participate in it.

sounds good. I would also be interested in such a functionality. I think 
the first step would be to define a mapping between sql and lucene 
queries (without actually implementing it) and check whether and how 
this is possible.

It might be interesting to have a look at how jackrabbit is doing it with

http://www.day.com/specs/jcr/2.0/6_Query.html

HTH

Michael
>
> On Tue, Feb 7, 2012 at 5:31 PM, Michael Wechner 
> <michael.wechner@wyona.com <ma...@wyona.com>> wrote:
>
>     Am 07.02.12 10:24, schrieb Li Li:
>
>         hi all,
>            we have used solr to provide searching service in many
>         products. I found for each product, we have to do some
>         configurations and query expressions.
>            our users are not used to this. they are familiar with sql
>         and they may describe like this: I want a query that can
>         search books whose title contains java, and I will group these
>         books by publishing year and order by matching score and
>         freshness, the weight of score is 2 and the weight of
>         freshness is 1.
>            maybe they will be happy if they can use sql like
>         statements to convey their needs.
>            select * from books where title contains java group by
>         pub_year order by score^2, freshness^1
>            also they may like they can insert or delete documents by
>         delete from books where title contains java and pub_year
>         between 2011 and 2012.
>            we can define some language similar to sql and translate
>         the to solr query string such as .../select/?q=+title:java^2
>         +pub_year:2011....
>            this may be equivalent to apache hive for hadoop.
>
>
>     It's not clear to me whether you are asking a question or making a
>     comment. Can you rephrase?
>
>     Thanks
>
>     Michael
>
>
>     ---------------------------------------------------------------------
>     To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
>     <ma...@lucene.apache.org>
>     For additional commands, e-mail: dev-help@lucene.apache.org
>     <ma...@lucene.apache.org>
>
>


Re: more sql-like commands for solr

Posted by Li Li <fa...@gmail.com>.
I just want solr providing this new feature  and also want to know whether
any other users need this feature. if possible, I'd like to participate in
it.

On Tue, Feb 7, 2012 at 5:31 PM, Michael Wechner
<mi...@wyona.com>wrote:

> Am 07.02.12 10:24, schrieb Li Li:
>
>  hi all,
>>    we have used solr to provide searching service in many products. I
>> found for each product, we have to do some configurations and query
>> expressions.
>>    our users are not used to this. they are familiar with sql and they
>> may describe like this: I want a query that can search books whose title
>> contains java, and I will group these books by publishing year and order by
>> matching score and freshness, the weight of score is 2 and the weight of
>> freshness is 1.
>>    maybe they will be happy if they can use sql like statements to convey
>> their needs.
>>    select * from books where title contains java group by pub_year order
>> by score^2, freshness^1
>>    also they may like they can insert or delete documents by delete from
>> books where title contains java and pub_year between 2011 and 2012.
>>    we can define some language similar to sql and translate the to solr
>> query string such as .../select/?q=+title:java^2 +pub_year:2011....
>>    this may be equivalent to apache hive for hadoop.
>>
>
> It's not clear to me whether you are asking a question or making a
> comment. Can you rephrase?
>
> Thanks
>
> Michael
>
>
> ------------------------------**------------------------------**---------
> To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.**org<de...@lucene.apache.org>
> For additional commands, e-mail: dev-help@lucene.apache.org
>
>

Re: more sql-like commands for solr

Posted by Michael Wechner <mi...@wyona.com>.
Am 07.02.12 10:24, schrieb Li Li:
> hi all,
>     we have used solr to provide searching service in many products. I 
> found for each product, we have to do some configurations and query 
> expressions.
>     our users are not used to this. they are familiar with sql and 
> they may describe like this: I want a query that can search books 
> whose title contains java, and I will group these books by publishing 
> year and order by matching score and freshness, the weight of score is 
> 2 and the weight of freshness is 1.
>     maybe they will be happy if they can use sql like statements to 
> convey their needs.
>     select * from books where title contains java group by pub_year 
> order by score^2, freshness^1
>     also they may like they can insert or delete documents by delete 
> from books where title contains java and pub_year between 2011 and 2012.
>     we can define some language similar to sql and translate the to 
> solr query string such as .../select/?q=+title:java^2 +pub_year:2011....
>     this may be equivalent to apache hive for hadoop.

It's not clear to me whether you are asking a question or making a 
comment. Can you rephrase?

Thanks

Michael


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org