public void HeavySubAggregating()
        {
            var histogramAggregate    = new DateHistogramAggregate("@timestamp", "1d");
            var histogramSubAggregate = new SubAggregate(histogramAggregate);

            var totalSoldCarsAggregate = new ValueCountAggregate("TotalSoldCars");

            var countryTermsAggregate = new TermsAggregate("Country");
            var countrySubAggregate   = new SubAggregate(countryTermsAggregate);

            countrySubAggregate.Aggregates.Add("TotalSoldCars", totalSoldCarsAggregate);

            var carTypeTermsAggregate = new TermsAggregate("Type");
            var carTypeSubAggregate   = new SubAggregate(carTypeTermsAggregate);

            carTypeSubAggregate.Aggregates.Add("TotalSoldCarsOfType", totalSoldCarsAggregate);

            histogramSubAggregate.Aggregates.Add("CountrySubAggr", countrySubAggregate);

            countrySubAggregate.Aggregates.Add("CarTypeSubAggr", carTypeSubAggregate);


            QueryBuilder.Aggregates.Add("HistogramSubAggr", histogramSubAggregate);

            QueryBuilder.PrintQuery();

            AggregateResult result = Client.ExecuteAggregate(QueryBuilder);

            result.PrintResult();
        }
Exemplo n.º 2
0
        public void SimpleQuery()
        {
            QueryBuilder builder = new QueryBuilder();

            builder.Filtered.Filters.Add(FilterType.Must, new MovingTimeRange("@timestamp", 86400));
            DateHistogramAggregate aggregate = new DateHistogramAggregate("@timestamp", "6h");

            builder.Aggregates.Add("test", aggregate);


            builder.PrintQuery(Client.IndexDescriptors);

            AggregateResult result        = Client.ExecuteAggregate(builder);
            dynamic         resultDynamic = result;

            result.PrintResult();

            Assert.GreaterOrEqual(result.GetValues <object>("test.buckets").Length, 2);
            Assert.GreaterOrEqual(((JArray)resultDynamic.test.buckets).Count, 2);
        }