Package org.elasticsearch.script

Support for running user provided scripts (in the request, in cluster state, etc) in portions of various requests (FunctionScoreQueryAggregationUpdateAction, etc).
Interface Summary
Interface Description
ExecutableScript
An executable script, can't be used concurrently.
ExplainableSearchScript
To be implemented by SearchScript which can provided an Explanation of the score This is currently not used inside elasticsearch but it is used, see for example here: https://github.com/elastic/elasticsearch/issues/8561
LeafSearchScript
A per-segment SearchScript.
NativeScriptFactory Deprecated

Create a ScriptEngineService instead of using native scripts
ScriptContext
Context of an operation that uses scripts as part of its execution.
ScriptEngineService  
SearchScript
A search script.
Class Summary
Class Description
AbstractDoubleSearchScript
A simpler base class instead of AbstractSearchScript for computations that return a double number.
AbstractExecutableScript
AbstractLongSearchScript
A simpler base class instead of AbstractSearchScript for computations that return a long number.
AbstractSearchScript
A base class for any script type that is used during the search process (custom score, aggs, and so on).
ClassPermission
Checked by scripting engines to allow loading a java class.
CompiledScript
CompiledScript holds all the parameters necessary to execute a previously compiled script.
NativeScriptEngineService
A native script engine service.
ScoreAccessor
A float encapsulation that dynamically accesses the score of a document.
Script
Script represents used-defined input that can be used to compile and execute a script from the ScriptService based on the ScriptType.
ScriptContext.Plugin
Custom operation exposed via plugin, which makes use of scripts as part of its execution
ScriptContextRegistry
Registry for operations that use scripts as part of their execution.
ScriptEngineRegistry
ScriptMetaData
ScriptMetaData is used to store user-defined scripts as part of the ClusterState.
ScriptMetaData.Builder
A builder used to modify the currently stored scripts data held within the ClusterState.
ScriptMetrics
ScriptModes
Holds the boolean indicating the enabled mode for each of the different scripting languages available, each script source and each scripted operation.
ScriptModule
Manages building ScriptService and ScriptSettings from a list of plugins.
ScriptService
ScriptSettings
ScriptStats
StoredScriptSource
StoredScriptSource represents user-defined parameters for a script saved in the ClusterState.
Enum Summary
Enum Description
ScriptContext.Standard
Standard operations that make use of scripts as part of their execution.
ScriptType
ScriptType represents the way a script is stored and retrieved from the ScriptService.

            

ScriptEnginService compile?..... 不推荐。

XXXPlugin extends Plugin implements ScriptPlugin

  实现方法: List<NativeScriptFactory> getNativeScripts()

实现XXXScriptFactory implements NativeScriptFactory  

                NativeScriptFactory  创建ExcutableScript实例 ( ExecutableScript newScript() )

    主要实现ExecutableScript newScript()

实现 XXXScript extends AbstractDoubleSearchScript

            ExecutableScript( run())

    实现 runAsDouble()方法

ExecutableScript是接口。

AbsractSearchScritp 实现了ExecutableScript接口。

AbsractSearchScritp 有个lookup!

NativeScriptEngineService

  search()会调用 script.setLookup()

依赖

ScriptService 的search(SearchLookup lookup)

依赖

parseSource(DefaultSearchContext context

SearchScript searchScript = scriptService.search(context.lookup()

依赖 createAndPutContext

依赖executeDfsPhase

elasticSearch script api的更多相关文章

  1. ElasticSearch Document API

    删除索引库 可以看到id为1的索引库不见了 这里要修改下配置文件 slave1,slave2也做同样的操作,在这里就不多赘述了. 这个时候记得要重启elasticseach才能生效,怎么重启这里就不多 ...

  2. 第08章 ElasticSearch Java API

    本章内容 使用客户端对象(client object)连接到本地或远程ElasticSearch集群. 逐条或批量索引文档. 更新文档内容. 使用各种ElasticSearch支持的查询方式. 处理E ...

  3. Elasticsearch 常用API

    1.   Elasticsearch 常用API 1.1.数据输入与输出 1.1.1.Elasticsearch 文档   #在 Elasticsearch 中,术语 文档 有着特定的含义.它是指最顶 ...

  4. elasticsearch REST api

    elasticsearch REST api========================================命令模式:<REST Verb> /<Index>/ ...

  5. elasticsearch REST API方式批量插入数据

    elasticsearch REST API方式批量插入数据 1:ES的服务地址  http://127.0.0.1:9600/_bulk 2:请求的数据体,注意数据的最后一行记得加换行 { &quo ...

  6. [搜索]ElasticSearch Java Api(一) -添加数据创建索引

    转载:http://blog.csdn.net/napoay/article/details/51707023 ElasticSearch JAVA API官网文档:https://www.elast ...

  7. Elasticsearch java api 基本搜索部分详解

    文档是结合几个博客整理出来的,内容大部分为转载内容.在使用过程中,对一些疑问点进行了整理与解析. Elasticsearch java api 基本搜索部分详解 ElasticSearch 常用的查询 ...

  8. Elasticsearch java api 常用查询方法QueryBuilder构造举例

    转载:http://m.blog.csdn.net/u012546526/article/details/74184769 Elasticsearch java api 常用查询方法QueryBuil ...

  9. ElasticSearch的API介绍

    ElasticSearch的API介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.ES是基于Restful风格 1>ES是基于Restful风格 Elasticsea ...

随机推荐

  1. HDU 4569 Special equations(枚举+数论)(2013 ACM-ICPC长沙赛区全国邀请赛)

    Problem Description Let f(x) = anxn +...+ a1x +a0, in which ai (0 <= i <= n) are all known int ...

  2. DFS(4)——hdu1010Tempter of the Bone

    一.题目回顾 题目链接:Tempter of the Bone Problem Description The doggie found a bone in an ancient maze, whic ...

  3. 【转】V8 之旅: 垃圾回收器

    垃圾回收器是一把十足的双刃剑.其好处是可以大幅简化程序的内存管理代码,因为内存管理无需程序员来操作,由此也减少了(但没有根除)长时间运转的程序的内存泄漏.对于某些程序员来说,它甚至能够提升代码的性能. ...

  4. winform自动最大化(在不同分辨率情况下)

    load函数末尾加: System.Drawing.Rectangle rec = Screen.GetWorkingArea(this); int SH = rec.Height; int SW = ...

  5. 高效的序列化组件 Protobuf-net

    什么是ProtoBuf-net Protobuf是google开源的一个项目,用户数据序列化反序列化,google声称google的数据通信都是用该序列化方法.它比xml格式要少的多,甚至比二进制数据 ...

  6. Storm之tickTuple

    tickTuple是Storm中引入的一种定时机制,利用tickTuple能够实现间隔一段时间进行某种处理的逻辑. 在boltA中实现tickTuple注册的方法如下 @Override public ...

  7. spring中context:property-placeholder

    发现网上对于这个标签的解释过于复杂,这里从实用性角度简短的进行说明. 首先,它是spring3中提供的标签. 只需要在spring的配置文件里添加一句: <context:property-pl ...

  8. BZOJ4591 SHOI2015超能粒子炮·改(卢卡斯定理+数位dp)

    注意到模数很小,容易想到使用卢卡斯定理,即变成一个2333进制数各位组合数的乘积.对于k的限制容易想到数位dp.可以预处理一发2333以内的组合数及组合数前缀和,然后设f[i][0/1]为前i位是否卡 ...

  9. dp类模板

    1.n串最长公共子序列 #include<cstdio> #include<cstring> #include<algorithm> using namespace ...

  10. mii-tool与ethtool的用法详解

    mii-tool与ethtool的用法详解 1.mii-tool 配置网络设备协商方式的工具: 感谢原文作者!原文地址:http://blog.chinaunix.net/uid-20639775-i ...