本文整理汇总了Java中org.elasticsearch.index.fielddata.ScriptDocValues类的典型用法代码示例。如果您正苦于以下问题:Java ScriptDocValues类的具体用法?Java ScriptDocValues怎么用?Java ScriptDocValues使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ScriptDocValues类属于org.elasticsearch.index.fielddata包,在下文中一共展示了ScriptDocValues类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: get
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
public ScriptDocValues<?> get(Object key) {
// assume its a string...
String fieldName = key.toString();
ScriptDocValues<?> scriptValues = localCacheFieldData.get(fieldName);
if (scriptValues == null) {
final MappedFieldType fieldType = mapperService.fullName(fieldName);
if (fieldType == null) {
throw new IllegalArgumentException("No field found for [" + fieldName + "] in mapping with types " + Arrays.toString(types) + "");
}
// load fielddata on behalf of the script: otherwise it would need additional permissions
// to deal with pagedbytes/ramusagestimator/etc
scriptValues = AccessController.doPrivileged(new PrivilegedAction<ScriptDocValues<?>>() {
@Override
public ScriptDocValues<?> run() {
return fieldDataService.getForField(fieldType).load(reader).getScriptValues();
}
});
localCacheFieldData.put(fieldName, scriptValues);
}
scriptValues.setNextDocId(docId);
return scriptValues;
}
示例2: get
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
public Object get(Object key) {
// assume its a string...
String fieldName = key.toString();
ScriptDocValues scriptValues = localCacheFieldData.get(fieldName);
if (scriptValues == null) {
final MappedFieldType fieldType = mapperService.smartNameFieldType(fieldName, types);
if (fieldType == null) {
throw new IllegalArgumentException("No field found for [" + fieldName + "] in mapping with types " + Arrays.toString(types) + "");
}
// load fielddata on behalf of the script: otherwise it would need additional permissions
// to deal with pagedbytes/ramusagestimator/etc
scriptValues = AccessController.doPrivileged(new PrivilegedAction<ScriptDocValues>() {
@Override
public ScriptDocValues run() {
return fieldDataService.getForField(fieldType).load(reader).getScriptValues();
}
});
localCacheFieldData.put(fieldName, scriptValues);
}
scriptValues.setNextDocId(docId);
return scriptValues;
}
示例3: runAsDouble
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override public double runAsDouble(){
try{
String current_value = ((ScriptDocValues.Strings)doc().get(comparison_field)).getValues().get(0);
String[] strQueryArray = new String[0];
strQueryArray = query.split(" ");
ArrayList intQueryArrayList = new ArrayList();
for(int i = 0; i < strQueryArray.length; i++) {
intQueryArrayList.add(Double.valueOf(strQueryArray[i]));
}
String[] strComparisonArray = new String[0];
strComparisonArray = current_value.split(" ");
ArrayList intComparisonArrayList = new ArrayList();
for(int i = 0; i < strComparisonArray.length; i++) {
intComparisonArrayList.add(Double.valueOf(strComparisonArray[i]));
}
return (double) euclidianDistance(scaleArrayList(intComparisonArrayList,scalepoints), scaleArrayList(intQueryArrayList,scalepoints));
}catch (NullPointerException e){
return 9999999;
}
}
示例4: run
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
@SuppressWarnings("unchecked")
public Object run() {
// First we get field using doc lookup
ScriptDocValues<Long> docValue = (ScriptDocValues<Long>) doc().get(fieldName);
// Check if field exists
if (docValue != null && !docValue.isEmpty()) {
try {
// Try to parse it as an integer
BigInteger bigInteger = BigInteger.valueOf(((Longs) docValue).getValue());
// Check if it's prime
return bigInteger.isProbablePrime(certainty);
} catch (NumberFormatException ex) {
return false;
}
}
return false;
}
示例5: containsKey
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
public boolean containsKey(Object key) {
// assume its a string...
String fieldName = key.toString();
ScriptDocValues<?> scriptValues = localCacheFieldData.get(fieldName);
if (scriptValues == null) {
MappedFieldType fieldType = mapperService.fullName(fieldName);
if (fieldType == null) {
return false;
}
}
return true;
}
示例6: InternalGlobalOrdinalsIndexFieldData
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
InternalGlobalOrdinalsIndexFieldData(IndexSettings indexSettings, String fieldName, AtomicOrdinalsFieldData[] segmentAfd,
OrdinalMap ordinalMap, long memorySizeInBytes, Function<RandomAccessOrds, ScriptDocValues<?>> scriptFunction) {
super(indexSettings, fieldName, memorySizeInBytes);
this.atomicReaders = new Atomic[segmentAfd.length];
for (int i = 0; i < segmentAfd.length; i++) {
atomicReaders[i] = new Atomic(segmentAfd[i], ordinalMap, i);
}
this.scriptFunction = scriptFunction;
}
示例7: getScriptValues
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
public final ScriptDocValues<?> getScriptValues() {
switch (numericType) {
case DATE:
return new ScriptDocValues.Dates(getLongValues());
case BOOLEAN:
return new ScriptDocValues.Booleans(getLongValues());
default:
return new ScriptDocValues.Longs(getLongValues());
}
}
示例8: SortedSetDVOrdinalsIndexFieldData
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
public SortedSetDVOrdinalsIndexFieldData(IndexSettings indexSettings, IndexFieldDataCache cache, String fieldName,
CircuitBreakerService breakerService, Function<RandomAccessOrds, ScriptDocValues<?>> scriptFunction) {
super(indexSettings.getIndex(), fieldName);
this.indexSettings = indexSettings;
this.cache = cache;
this.breakerService = breakerService;
this.scriptFunction = scriptFunction;
}
示例9: scoringScript
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@SuppressWarnings("unchecked")
static Double scoringScript(Map<String, Object> vars, Function<ScoreAccessor, Number> scoring) {
Map<?, ?> doc = (Map) vars.get("doc");
Double index = ((Number) ((ScriptDocValues<?>) doc.get("index")).getValues().get(0)).doubleValue();
Double score = scoring.apply((ScoreAccessor) vars.get("_score")).doubleValue();
Integer factor = (Integer) vars.get("factor");
return Math.log(index + (factor * score));
}
示例10: getMinValueScript
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
/**
* Return the minimal value from a set of values.
*/
@SuppressWarnings("unchecked")
static <T extends Comparable<T>> T getMinValueScript(Map<String, Object> vars, T initialValue, String fieldName,
Function<Object, T> converter) {
T retval = initialValue;
Map<?, ?> doc = (Map) vars.get("doc");
ScriptDocValues<?> values = (ScriptDocValues<?>) doc.get(fieldName);
for (Object v : values.getValues()) {
T value = converter.apply(v);
retval = (value.compareTo(retval) < 0) ? value : retval;
}
return retval;
}
示例11: run
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
public Object run() {
if (this.field == null || this.inputFeatureVector == null || this.inputFeatureVectorNorm == 0) {
return this.baseConstant;
}
if (!doc().containsKey(this.field) || doc().get(this.field) == null) {
return this.baseConstant;
}
String docFeatureVectorStr = ((ScriptDocValues.Strings) doc().get(this.field)).getValue();
return calculateScore(docFeatureVectorStr);
}
开发者ID:ginobefun,项目名称:elasticsearch-feature-vector-scoring,代码行数:14,代码来源:FeatureVectorScoringSearchScript.java
示例12: containsKey
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
public boolean containsKey(Object key) {
// assume its a string...
String fieldName = key.toString();
ScriptDocValues scriptValues = localCacheFieldData.get(fieldName);
if (scriptValues == null) {
MappedFieldType fieldType = mapperService.smartNameFieldType(fieldName, types);
if (fieldType == null) {
return false;
}
}
return true;
}
示例13: runAsFloat
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
public float runAsFloat() {
String fieldValue = ((ScriptDocValues.Strings) doc().get(field)).getValue();
//Serious arse covering:
if(hash == null || fieldValue == null || fieldValue.length() != hash.length()){
return 0.0f;
}
return hammingDistance(fieldValue, hash);
}
开发者ID:scirag,项目名称:elastic-search-hamming-distance-plugin,代码行数:11,代码来源:HammingDistanceScriptFactory.java
示例14: runAsFloat
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
public float runAsFloat() {
String fieldValue = ((ScriptDocValues.Strings) doc().get(field)).getValue();
if (hash == null || fieldValue == null || fieldValue.length() != hash.length()) {
return 0.0f;
}
return hammingDistance(fieldValue, hash);
}
示例15: runAsFloat
import org.elasticsearch.index.fielddata.ScriptDocValues; //导入依赖的package包/类
@Override
public float runAsFloat() {
if (queryCorrelogram == null) {
return Integer.MAX_VALUE;
}
float[][] correlogram = parseCorrelogram(((ScriptDocValues.Strings) doc().get("correlogram")).getValue());
if (correlogram == null) {
return Integer.MAX_VALUE;
}
return getDistance(correlogram, queryCorrelogram);
}
开发者ID:CameraForensics,项目名称:elasticsearch-plugins,代码行数:14,代码来源:AutoColourCorrelogramDistanceScript.java