Elasticsearch-SQL

Elasticsearch-SQL

Elasticsearch-SQLfork fromhttps://github.com/NLPchina/elasticsearch-sql

visitinteractive webto feel.

features

All features following require ES with groovy script enabled.

  • Distinct precision_threshold depends on ES or you can specify by second parameters.When you have lot of shards, 40000  consume too much memory. 
  • select,groupBy now support functions and field alias 
  • nested function is also available,eg.  split(substring('newtype',0,3),'c')[0]
  • Binary operation support now, eg.  floor(substring(newtype,0,14)/100)/5)*5

functions support

  • floor
  • split
  • trim
  • log
  • log10
  • substring
  • round
  • sqrt
  • concat_ws
  • +
  • -
  • /
  • %

Example

check Example file:

org.nlpcn.es4sql.Test

SQLs:

SELECT newtype as nt  from  twitter2 

SELECT sum(num) as num2,newtype as nt
from  twitter2
group by nt  order by num2 

SELECT sum(num_d) as num2,split(newtype,',') as nt
from  twitter2
group by nt
order by num2

SELECT sum(num_d) as num2,floor(num) as nt
from  twitter2
group by floor(num),newtype
order by num2

SELECT split('newtype','b')[1] as nt,sum(num_d) as num2
from  twitter2
group by nt

SELECT split(substring('newtype',0,3),'c')[0] as nt,num_d
from  twitter2
group by nt

SELECT trim(newtype) as nt
from  twitter2

SELECT floor(floor(substring(time,0,14)/100)/5)*5 as nt,
count(distinct(mid)) as cvalue
FROM twitter2
where ty='buffer' and day='20160815' and domain='baidu.com'
group by nt
order by cvalue
时间: 2024-12-03 06:12:49

Elasticsearch-SQL的相关文章

一次mapping field的修改过程

Elasticsearch 的坑爹事 本文记录一次Elasticsearch mapping field修改过程 团队使用Elasticsearch做日志的分类检索分析服务,使用了类似如下的_mapping { "settings" : { "number_of_shards" : 20 }, "mappings" : { "client" : { "properties" : { "ip&quo

js 兼容性-有个js代码,火狐浏览器可以实现,谷歌不行,求解决

问题描述 有个js代码,火狐浏览器可以实现,谷歌不行,求解决 用js写了一个切换样式的(用下拉框选择样式切换).但是在火狐浏览器可以实现切换,在谷歌和360浏览器就没有反应.求教大神指导.下面是有关代码,有些没有关系的我就删了. //皮肤样式切换 function switchStylestyle(styleName){ aa=document.styleSheets; for(i=0;i<aa.length;i++){ aa[i].disabled=true; if(aa[i].title==

elasticsearch sql-elasticsearch java类似与sql 列=列 怎么写

问题描述 elasticsearch java类似与sql 列=列 怎么写 FilterBuilder filter = FilterBuilders.scriptFilter(doc.get('ubtx').value == doc.get('ubty').value""); builder.setPostFilter(filter); SearchResponse response = builder.execute().actionGet(); 这种写法不行 求大婶指点 拜谢

Fog Creek Software如何使用Elasticsearch使Kiln的搜索速度提升

作为一名开发者,我最有成就感的一项工作就是优化:使我的产品Kiln中的某些部分运行得更快.因为即便你的产品有着最好的特性,或者最吸引人的界面,如果它的速度慢到令人无法忍受,那它依然是毫无价值的.去年,我的团队得到一个机会,去优化Kiln中运行最慢的一部分,并且最终提高了它的速度,远比之前快得多. 本文描述的就是一个名为Elasticsearch的优秀工具如何帮助我们将Kiln的速度提高1000倍的过程. Kiln是一个源代码管理工具,它提供Mercurial及Git存储库的寄宿服务,并且包括代码

Elasticsearch中使用reiver-jdbc导入数据

  Elastisearch中提供了river模块来从其他数据源中获取数据,该项功能以插件的形式存在,目前已有的river插件包括: river pluginsedit 1. Supported by Elasticsearch CouchDB River Plugin RabbitMQ River Plugin Twitter River Plugin Wikipedia River Plugin 2. Supported by the community ActiveMQ River Plu

TableStore和ElasticSearch

TableStore TableStore(表格存储),是阿里云2013年推出的一款分布式数据库,具体可以看看官网的介绍: 表格存储(Table Store)是构建在阿里云飞天分布式系统之上的NoSQL数据存储服务,提供海量结构化数据的存储和实时访问.表格存储以实例和表的形式组织数据,通过数据分片和负载均衡技术,实现规模上的无缝扩展.应用通过调用表格存储 API / SDK 或者操作管理控制台来使用表格存储服务. 从上面可以看到有下面这些特点: 是NoSQL数据库,通过API或SDK访问,不支持

使用Elasticsearch,Kafka和Cassandra构建流式数据中心

在过去的一年里,我遇到了一些软件公司讨论如何处理应用程序的数据(通常以日志和metrics的形式).在这些讨论中,我经常会听到挫折感,他们不得不用一组零碎的工具,随着时间的推移将这些数据汇总起来.这些工具,如: - 运维人员使用的,用于监控和告警的工具 - 开发人员用于跟踪性能和定位问题的工具 - 一个完整独立的系统,商业智能(BI)和业务依赖其分析用户行为 虽然这些工具使用不同的视角,适用不同的场景,但是他们同样都是关注数据来源和类型.因此,许多软件团队说,"如果时间充裕,我们可以建立一个更好

ElasticSearch的基本用法与集群搭建

一.简介 ElasticSearch和Solr都是基于Lucene的搜索引擎,不过ElasticSearch天生支持分布式,而Solr是4.0版本后的SolrCloud才是分布式版本,Solr的分布式支持需要ZooKeeper的支持. 这里有一个详细的ElasticSearch和Solr的对比:http://solr-vs-elasticsearch.com/ 二.基本用法 Elasticsearch集群可以包含多个索引(indices),每一个索引可以包含多个类型(types),每一个类型包含

《读书报告 -- Elasticsearch入门 》--简单使用(2)

<读书报告 – Elasticsearch入门 > ' 第四章 分布式文件存储 这章的主要内容是理解数据如何在分布式系统中存储. 4.1 路由文档到分片 创建一个新文档时,它是如何确定应该存储在分片1还是分片2上的呢? 这个过程不是随机的,因为将来要检索文档.事实上,它根据一个简单的算法决定: shard = hash(routing) % number_of_primary_shards routing值是一个任意字符串,它默认是_id但也可以自定义.这个routing字符串通过哈希函数生成

ElasticSearch大数据分布式弹性搜索引擎使用—从0到1

  阅读目录: 背景 安装 查找.下载rpm包 .执行rpm包安装 配置elasticsearch专属账户和组 设置elasticsearch文件所有者 切换到elasticsearch专属账户测试能否成功启动 安装自启动elasticsearch servicewrapper包 下载elasticsearch servicewrapper 包 elasticsearch servicewrapper开源包的配置小bug servicewrapper安装 chkconfig -add 加入lin