Re: Json Facet api on nested doc

2015-11-24 Thread xavi jmlucjav
Mikahil, Yonik

thanks for having a look. This was my bad all the time...I forgot I was on
5.2.1 instead of 5.3.1 on this setup!! It seems some things were not there
yet on 5.2.1, I just upgraded to 5.3.1 and my query works perfectly.

Although I do agree with Mikhail the docs on this feature are a bit light,
it is understandable though, as it is quite new.

thanks
xavi

On Mon, Nov 23, 2015 at 9:24 PM, Mikhail Khludnev <
mkhlud...@griddynamics.com> wrote:

> Indeed! Now it works for me too. JSON Facets seems powerful, but not
> friendly to me.
> Yonik, thanks for example!
>
> Xavi,
>
> I took  json docs from http://yonik.com/solr-nested-objects/ and just
> doubled book2_c3
>
> Here is what I have with json.facet={catz: {type:terms,field:cat_s,
> facet:{ starz:{type:terms, field:stars_i,
> domain:{blockChildren:'type_s:book'}} }}}
>
> {
>   "responseHeader": {
> "status": 0,
> "QTime": 2,
> "params": {
>   "q": "publisher_s:*",
>   "json.facet": "{catz: {type:terms,field:cat_s, facet:{ 
> starz:{type:terms, field:stars_i, domain:{blockChildren:'type_s:book'}} }}}",
>   "indent": "true",
>   "wt": "json",
>   "_": "1448309900982"
> }
>   },
>   "response": {
> "numFound": 2,
> "start": 0,
> "docs": [
>   {
> "id": "book1",
> "type_s": "book",
> "title_t": "The Way of Kings",
> "author_s": "Brandon Sanderson",
> "cat_s": "fantasy",
> "pubyear_i": 2010,
> "publisher_s": "Tor",
> "_version_": 1518570756086169600
>   },
>   {
> "id": "book2",
> "type_s": "book",
> "title_t": "Snow Crash",
> "author_s": "Neal Stephenson",
> "cat_s": "sci-fi",
> "pubyear_i": 1992,
> "publisher_s": "Bantam",
> "_version_": 1518570908026929200
>   }
> ]
>   },
>   "facets": {
> "count": 2,
> "catz": {
>   "buckets": [
> {
>   "val": "fantasy",
>   "count": 1,
>   "starz": {
> "buckets": [
>   {
> "val": 3,
> "count": 1
>   },
>   {
> "val": 5,
> "count": 1
>   }
> ]
>   }
> },
> {
>   "val": "sci-fi",
>   "count": 1,
>   "starz": {
> "buckets": [
>   {
> "val": 2,
> "count": 2
>   },
>   {
> "val": 4,
> "count": 1
>   },
>   {
> "val": 5,
> "count": 1
>   }
> ]
>   }
> }
>   ]
> }
>   }
> }
>
> It works well with *:* too.
>
>
> On Mon, Nov 23, 2015 at 12:56 AM, Yonik Seeley  wrote:
>
>> On Sun, Nov 22, 2015 at 3:10 PM, Mikhail Khludnev
>>  wrote:
>> > Hello,
>> >
>> > I also played with json.facet, but couldn't achieve the desired result
>> too.
>> >
>> > Yonik, Alessandro,
>> > Do you think it's a new feature or it can be achieved with the current
>> > implementation?
>>
>> Not sure if I'm misunderstanding the example, but it looks
>> straight-forward.
>>
>> terms facet on parent documents, with sub-facet on child documents.
>> I just committed a test for this, and it worked fine.  See
>> TestJsonFacets.testBlockJoin()
>>
>> Can we see an example of a parent document being indexed (i.e. along
>> with it's child documents)?
>>
>> -Yonik
>>
>
>
>
> --
> Sincerely yours
> Mikhail Khludnev
> Principal Engineer,
> Grid Dynamics
>
> 
> 
>


Re: Json Facet api on nested doc

2015-11-23 Thread Mikhail Khludnev
Indeed! Now it works for me too. JSON Facets seems powerful, but not
friendly to me.
Yonik, thanks for example!

Xavi,

I took  json docs from http://yonik.com/solr-nested-objects/ and just
doubled book2_c3

Here is what I have with json.facet={catz: {type:terms,field:cat_s, facet:{
starz:{type:terms, field:stars_i, domain:{blockChildren:'type_s:book'}} }}}

{
  "responseHeader": {
"status": 0,
"QTime": 2,
"params": {
  "q": "publisher_s:*",
  "json.facet": "{catz: {type:terms,field:cat_s, facet:{
starz:{type:terms, field:stars_i,
domain:{blockChildren:'type_s:book'}} }}}",
  "indent": "true",
  "wt": "json",
  "_": "1448309900982"
}
  },
  "response": {
"numFound": 2,
"start": 0,
"docs": [
  {
"id": "book1",
"type_s": "book",
"title_t": "The Way of Kings",
"author_s": "Brandon Sanderson",
"cat_s": "fantasy",
"pubyear_i": 2010,
"publisher_s": "Tor",
"_version_": 1518570756086169600
  },
  {
"id": "book2",
"type_s": "book",
"title_t": "Snow Crash",
"author_s": "Neal Stephenson",
"cat_s": "sci-fi",
"pubyear_i": 1992,
"publisher_s": "Bantam",
"_version_": 1518570908026929200
  }
]
  },
  "facets": {
"count": 2,
"catz": {
  "buckets": [
{
  "val": "fantasy",
  "count": 1,
  "starz": {
"buckets": [
  {
"val": 3,
"count": 1
  },
  {
"val": 5,
"count": 1
  }
]
  }
},
{
  "val": "sci-fi",
  "count": 1,
  "starz": {
"buckets": [
  {
"val": 2,
"count": 2
  },
  {
"val": 4,
"count": 1
  },
  {
"val": 5,
"count": 1
  }
]
  }
}
  ]
}
  }
}

It works well with *:* too.

On Mon, Nov 23, 2015 at 12:56 AM, Yonik Seeley  wrote:

> On Sun, Nov 22, 2015 at 3:10 PM, Mikhail Khludnev
>  wrote:
> > Hello,
> >
> > I also played with json.facet, but couldn't achieve the desired result
> too.
> >
> > Yonik, Alessandro,
> > Do you think it's a new feature or it can be achieved with the current
> > implementation?
>
> Not sure if I'm misunderstanding the example, but it looks
> straight-forward.
>
> terms facet on parent documents, with sub-facet on child documents.
> I just committed a test for this, and it worked fine.  See
> TestJsonFacets.testBlockJoin()
>
> Can we see an example of a parent document being indexed (i.e. along
> with it's child documents)?
>
> -Yonik
>



-- 
Sincerely yours
Mikhail Khludnev
Principal Engineer,
Grid Dynamics





Re: Json Facet api on nested doc

2015-11-22 Thread Mikhail Khludnev
Hello,

I also played with json.facet, but couldn't achieve the desired result too.

Yonik, Alessandro,
Do you think it's a new feature or it can be achieved with the current
implementation?

On Thu, Nov 19, 2015 at 2:50 PM, xavi jmlucjav <jmluc...@gmail.com> wrote:

> Hi,
>
> I am trying to get some faceting with the json facet api on nested doc, but
> I am having issues. Solr 5.3.1.
>
> This query gest the buckets numbers ok:
>
> curl http://shost:8983/solr/collection1/query -d 'q=*:*=0&
>  json.facet={
>yearly-salaries : {
> type: terms,
> field: salary,
> domain: { blockChildren : "parent:true" }
>   }
>  }
> '
> Salary is a field in child docs only. But if I add another facet outside
> it, the inner one returns no data:
>
> curl http://shost:8983/solr/collection1/query -d 'q=*:*=0&
>  json.facet={
> department:{
>type: terms,
>field: department,
>facet:{
>yearly-salaries : {
> type: terms,
> field: salary,
> domain: { blockChildren : "parent:true" }
>   }
>   }
>   }
>  }
> '
> Results in:
>
> "facets":{
>
>  "count":3144071,
>
> "department":{
>
> "buckets":[{
>
> "val":"Development",
>
> "count":85707,
>
> "yearly-salaries":{
>
> "buckets":[]}},
>
>
> department is field only in parent docs. Am I doing something wrong that I
> am missing?
> thanks
> xavi
>



-- 
Sincerely yours
Mikhail Khludnev
Principal Engineer,
Grid Dynamics

<http://www.griddynamics.com>
<mkhlud...@griddynamics.com>


Re: Json Facet api on nested doc

2015-11-22 Thread Yonik Seeley
On Sun, Nov 22, 2015 at 3:10 PM, Mikhail Khludnev
 wrote:
> Hello,
>
> I also played with json.facet, but couldn't achieve the desired result too.
>
> Yonik, Alessandro,
> Do you think it's a new feature or it can be achieved with the current
> implementation?

Not sure if I'm misunderstanding the example, but it looks straight-forward.

terms facet on parent documents, with sub-facet on child documents.
I just committed a test for this, and it worked fine.  See
TestJsonFacets.testBlockJoin()

Can we see an example of a parent document being indexed (i.e. along
with it's child documents)?

-Yonik


Json Facet api on nested doc

2015-11-19 Thread xavi jmlucjav
Hi,

I am trying to get some faceting with the json facet api on nested doc, but
I am having issues. Solr 5.3.1.

This query gest the buckets numbers ok:

curl http://shost:8983/solr/collection1/query -d 'q=*:*=0&
 json.facet={
   yearly-salaries : {
type: terms,
field: salary,
domain: { blockChildren : "parent:true" }
  }
 }
'
Salary is a field in child docs only. But if I add another facet outside
it, the inner one returns no data:

curl http://shost:8983/solr/collection1/query -d 'q=*:*=0&
 json.facet={
department:{
   type: terms,
   field: department,
   facet:{
   yearly-salaries : {
type: terms,
field: salary,
domain: { blockChildren : "parent:true" }
  }
  }
  }
 }
'
Results in:

"facets":{

 "count":3144071,

"department":{

"buckets":[{

"val":"Development",

"count":85707,

"yearly-salaries":{

"buckets":[]}},


department is field only in parent docs. Am I doing something wrong that I
am missing?
thanks
xavi