2013-03-17 5 views
1

J'ai un petit problème avec les facettes dans elasticsearch. J'ai une table de vidéos, un canal de table, 1 canal a beaucoup de vidéos. Je veux juste montrer un donut avec% de views_count par chaîne sur les X dernières vidéos.Statistiques/Facettes sur elasticsearch

Dans SQL:

SELECT SUM(views_count) FROM videos WHERE videos.channel_id = X ORDER BY published_at DESC LIMIT Y 

Je peux le faire sur toutes les vidéos, mais je n'arrive pas à le faire avec la limite. Une idée?? Merci

+0

Republiée de https : //groups.google.com/forum/? fromgroups = #! topic/elasticsearch/-lQsU4k0sNU – karmi

Répondre

1

Si je vous comprends bien, vous souhaitez limiter votre facette aux 100 dernières vidéos?

Je ne pense pas cela est possible, la limitation devrait être fait à la requête (ou facet_filter), régler une plage pour les données à prendre en compte:

{ 
    "facets": { 
     "views_count": { 
      "terms": { 
       "field": "videos.channel_id" 
      } 
     } 
    }, 
    "from": 0, 
    "query": { 
     "range" : { 
      "published_at" : { 
       "from" : <some_start_date> 
      } 
     } 
    } 
}