Agrégations pour la recherche à facettes
Utilisez les agrégations Elasticsearch pour créer des facettes, des histogrammes et des indicateurs récapitulatifs parallèlement aux résultats de recherche.
Agrégations pour la recherche à facettes est une leçon Elasticsearch & Full Text Search Systems gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Elasticsearch & Full Text Search Systems, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Elasticsearch & Full Text Search Systems comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
Beyond Matching
Search finds documents; aggregations summarize them. They power faceted navigation, dashboards, and analytics, all in the same request as the search.
Two Families
Aggregations come in two main families:
- Bucket aggregations group documents (e.g. by category)
- Metric aggregations compute numbers (e.g. average price)
A Terms Facet
The terms aggregation produces a bucket per distinct value with counts, the classic facet.
GET /products/_search
{ "size": 0, "aggs": {
"by_category": { "terms": { "field": "category" } }
}}size 0 Trick
Setting size: 0 returns no document hits, only the aggregation results, which is efficient when you only want the facets.
Aggregate on keyword
Aggregations run on non-analyzed fields. Use the keyword field, not the analyzed text field, or you will bucket on individual tokens.
{ "terms": { "field": "brand.keyword" } }Metric Aggregations
Metrics like avg, min, max, and sum compute a single value over matching documents.
"aggs": { "avg_price": { "avg": { "field": "price" } } }Histograms
A histogram buckets numeric values into fixed intervals, great for price ranges.
"aggs": { "price_ranges": {
"histogram": { "field": "price", "interval": 100 }
}}Date Histograms
A date_histogram groups by calendar intervals like day or month, ideal for time-series charts.
"aggs": { "per_day": { "date_histogram": {
"field": "created", "calendar_interval": "day"
}}}Nesting Aggregations
You can nest a metric inside a bucket: average price within each category. Nesting is how rich facets are built.
"aggs": { "by_cat": {
"terms": { "field": "category" },
"aggs": { "avg_price": { "avg": { "field": "price" } } }
}}Facets Respect the Query
Aggregations are computed over the documents that match the query and filters, so facet counts naturally reflect the current search context.
Cardinality for Distinct Counts
The cardinality metric gives an approximate distinct-value count, far cheaper than exact counting on large data.
"aggs": { "unique_brands": {
"cardinality": { "field": "brand.keyword" } } }Quick Check
Why aggregate on a keyword field instead of a text field?
Recap
You learned aggregations for faceted search: bucket aggregations like terms and histograms, metric aggregations like avg and cardinality, nesting metrics inside buckets, the size: 0 trick, and why facets use keyword fields.
Questions Fréquemment Posées
La leçon « Agrégations pour la recherche à facettes » est-elle gratuite ?
Oui — le texte complet de « Agrégations pour la recherche à facettes » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Elasticsearch & Full Text Search Systems, passe à CoddyKit PRO. Le cours Elasticsearch & Full Text Search Systems comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Agrégations pour la recherche à facettes » ?
Utilisez les agrégations Elasticsearch pour créer des facettes, des histogrammes et des indicateurs récapitulatifs parallèlement aux résultats de recherche. Tu pratiques Elasticsearch & Full Text Search Systems avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Elasticsearch & Full Text Search Systems ?
Aucune expérience préalable n'est requise. Elasticsearch & Full Text Search Systems sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Agrégations pour la recherche à facettes » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Elasticsearch & Full Text Search Systems ?
Oui. Chaque leçon Elasticsearch & Full Text Search Systems inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Recherches par expression et proximité
- Requêtes approximatives et avec caractères génériques
- Mise en évidence des résultats de recherche
- Agrégations pour la recherche à facettes