本文整理汇总了Java中org.elasticsearch.search.aggregations.bucket.range.RangeBuilder类的典型用法代码示例。如果您正苦于以下问题:Java RangeBuilder类的具体用法?Java RangeBuilder怎么用?Java RangeBuilder使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
RangeBuilder类属于org.elasticsearch.search.aggregations.bucket.range包,在下文中一共展示了RangeBuilder类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: aggRanges
import org.elasticsearch.search.aggregations.bucket.range.RangeBuilder; //导入依赖的package包/类
public SimpleAggregationBuilder<SimpleSearchQueryBuilder> aggRanges(String name, String field, List<RangeQueryer> ranges) {
RangeBuilder rangeBuilder = AggregationBuilders.range(name);
ranges.stream().forEach(r->{
if(!r.isValid()){
return ;
}
if(r.getFrom()==null){
rangeBuilder.addUnboundedTo(r.getKey(), r.getTo());
}else if(r.getTo()==null){
rangeBuilder.addUnboundedFrom(r.getKey(), r.getFrom());
}else{
rangeBuilder.addRange(r.getKey(), r.getFrom(), r.getTo());
}
});
return agg(rangeBuilder).field(field);
}
开发者ID:wayshall,项目名称:onetwo,代码行数:17,代码来源:SimpleSearchQueryBuilder.java
示例2: buildFacets
import org.elasticsearch.search.aggregations.bucket.range.RangeBuilder; //导入依赖的package包/类
@Override
public List<AggregationBuilder> buildFacets() {
RangeBuilder rangeFacetBuilder = AggregationBuilders.range(getEsFieldName()).field(getEsFieldName()).addUnboundedFrom(this.ranges[0]);
int i = 1;
for (; i < this.ranges.length - 2; i += 2) {
rangeFacetBuilder.addRange(this.ranges[i], this.ranges[i + 1]);
}
rangeFacetBuilder.addUnboundedTo(this.ranges[i]);
return Collections.singletonList(rangeFacetBuilder);
}
开发者ID:alien4cloud,项目名称:elasticsearch-mapping-parent,代码行数:11,代码来源:RangeAggregationBuilderHelper.java
示例3: range
import org.elasticsearch.search.aggregations.bucket.range.RangeBuilder; //导入依赖的package包/类
/**
* Create a new {@link Range} aggregation with the given name.
*/
public static RangeBuilder range(String name) {
return new RangeBuilder(name);
}
开发者ID:baidu,项目名称:Elasticsearch,代码行数:7,代码来源:AggregationBuilders.java
示例4: rangeBuilder
import org.elasticsearch.search.aggregations.bucket.range.RangeBuilder; //导入依赖的package包/类
/**
* 构建范围查询
*
* @param field
* @return
*/
private RangeBuilder rangeBuilder(MethodField field) {
LinkedList<KVValue> params = new LinkedList<>(field.getParams());
String fieldName = params.poll().toString();
double[] ds = Util.KV2DoubleArr(params);
RangeBuilder range = AggregationBuilders.range(field.getAlias()).field(fieldName);
for (int i = 1; i < ds.length; i++) {
range.addRange(ds[i - 1], ds[i]);
}
return range;
}
开发者ID:lane-cn,项目名称:elasticsql,代码行数:23,代码来源:AggMaker.java
示例5: assertMultipleMetricAggregationWithParentRangeAggregation
import org.elasticsearch.search.aggregations.bucket.range.RangeBuilder; //导入依赖的package包/类
@Test
public void assertMultipleMetricAggregationWithParentRangeAggregation() {
String indexName = "test1";
int size = 1;
Map<String, Integer> termsFactor = new HashMap<String, Integer>();
termsFactor.put("foo", 1);
termsFactor.put("bar", 1);
buildTestDataset(1, indexName, "type1", size, termsFactor);
RangeBuilder rangeBuilder = new RangeBuilder("ranges")
.addRange(0, 100).addRange(100, 200).addRange(200, 300).addRange(300, 400).addRange(400, 500)
.field("value2")
.subAggregation(new MultipleMetricBuilder("metrics")
.script(new ScriptBuilder("ratio").script(new Script("value1 / value1c")))
.field(new SumBuilder("value1")
.field("value1")
)
.field(new CountBuilder("value1c")
.field("value1")
)
);
DateHistogramBuilder dateHistogramBuilder = new DateHistogramBuilder("dates")
.interval(DateHistogramInterval.DAY)
.field("date")
.subAggregation(rangeBuilder);
SearchResponse searchResponse = client().prepareSearch(indexName)
.setQuery(matchAllQuery()) //termQuery("field0", "foo")
.addAggregation(dateHistogramBuilder)
.execute().actionGet();
Histogram dates = searchResponse.getAggregations().get("dates");
for (Histogram.Bucket date: dates.getBuckets() ) {
Range buckets = date.getAggregations().get("ranges");
for (Range.Bucket bucket : buckets.getBuckets()) {
MultipleMetric metrics = bucket.getAggregations().get("metrics");
if (bucket.getFromAsString().equals("0.0") && bucket.getToAsString().equals("100.0")) {
assertEquals(90.0, metrics.getValue("value1"), 0.0);
assertEquals(20.0, metrics.getValue("value1c"), 0.0);
} else {
assertEquals(0.0, metrics.getValue("value1"), 0.0);
assertEquals(0.0, metrics.getValue("value1c"), 0.0);
}
}
}
}
开发者ID:eliep,项目名称:elasticsearch-multiple-metric-aggregation,代码行数:53,代码来源:MultipleMetricAggregatorTest.java
注:本文中的org.elasticsearch.search.aggregations.bucket.range.RangeBuilder类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论