2016-07-01 4 views
0

Возможно ли использовать дополнительные поля метаданных при использовании фасок Solr? Я хотел бы объединить один атрибут, посчитав их и проигнорировав связанную группу в качестве дополнительного поля метаданных.Solr-фасет с дополнительными метаданными

http://localhost:8983/solr/gitIndex/select?indent=on&q=*:*&rows=0&wt=json& 
     json.facet={ 
      Repository_s: { 
       type: terms, 
       field: Repository_s, 
       limit: 10, 
       facet: { 
        x:"count()" 
       } 
      } 
     } 

Результат должен выглядеть следующим образом:

... 
     "facets":{ 
     "count":1354013, 
     "<name of attribute>":{ 
      "buckets":[{ 
       "val":"<value of attribute>", 
       "count":173997, 
       "<metadata_field>":<value of metadata_field>}, 
... 
+0

Является ли значение metadata_field одинаковым по всем документам в фасетке? Или вы ищете шарнирную грань? – MatsLindh

+0

Да, metadata_field идентично всем документам. Позвольте мне привести один пример. Я хотел бы знать население в Лондоне и связанной с ним стране. Город разделен на районы, и я бы их обобщил. Кроме того, название страны используется как поле метаданных. Результатом будет: {«город»: «Лондон», «население»: 8000000, «страна»: «Англия»} – Oliver

+1

Думаю, вам нужно будет использовать фасетную ось для этого - вы получите результат, и суб-фасет с Англией как ключ и тот же счет. Для JSON API это делается, добавив еще одну грань: запись под существующим аспектом] (http://yonik.com/solr-subfacets/). – MatsLindh

ответ

0

Решение состоит в том, чтобы использовать facet pivots - он будет получать вам какое-либо значение в средней области под каждую грань, и если значение является уникальным для набор документов, это будет всего лишь одно значение.

reference guide has the syntax for non-json facets.

Смежные вопросы