ElasticHDElasticSearch的可視化應(yīng)用
ElasticHD 是一款 ElasticSearch的可視化應(yīng)用。不依賴ES的插件安裝,更便捷;導(dǎo)航欄直接填寫對(duì)應(yīng)的ES IP和端口就可以操作Es了。目前支持如下功能:
ES Real time data search
ES Dashboard data visualization
ES Index Template (在線修改、查看、上傳)
ES Indices Index deletion and search
SQL Converts to Elasticsearch DSL
ES 基本查詢文檔
Installation
Precompiled binaries for supported operating systems are available.
Basic Usage
-
linux and MacOs use ElasticHD
下載對(duì)應(yīng)的elasticHD版本,unzip xxx_elasticHd_xxx.zip 修改權(quán)限 chmod 0777 ElasticHD 可指定ip端口運(yùn)行elastichd ./ElasticHD -p 127.0.0.1:9800 默認(rèn) ip和端口也是這個(gè)
-
windows
直接下載對(duì)應(yīng)windows版本,解壓,雙擊運(yùn)行。當(dāng)然想指定端口的話同linux
Es version support
測(cè)試過elasticsearch 1.5版本到5.2.1的版本都能正常使用。 關(guān)于 sql 轉(zhuǎn)化成 dsl 馬上會(huì)出elasticHD 1.1版本修復(fù)一些兼容性錯(cuò)誤。
Contributing
Contributions are welcome! Open a pull request to fix a bug, or open an issue to discuss a new feature or change.
ElasticHD SQL Converts to ElasticSearch DSL Usage
SQL Features Support:
[x] SQL Select
[x] SQL Where
[x] SQL Order BySQL
[x] SQL Group By
[x] SQL AND & OR
[x] SQL Like & NOT Like
[x] SQL COUNT distinct
[x] SQL In & Not In
[x] SQL Between
[x] SQL avg()、count(*), count(field), min(field), max(field)
Beyond SQL Features Support:
[x] ES TopHits
[x] ES date_histogram
[x] ES STATS
[x] ES RANGE
[x] ES DATE_RANGE
Improvement : now the query DSL is much more flat
SQL Usage
Query
select * from test where a=1 and b="c" and create_time between '2015-01-01T00:00:00+0800' and '2016-01-01T00:00:00+0800' and process_id > 1 order by id desc limit 100,10
Aggregation
select avg(age),min(age),max(age),count(student),count(distinct student) from test group by grade,class limit 10
Beyond SQL
-
range age group 20-25,25-30,30-35,35-40
SELECT COUNT(age) FROM bank GROUP BY range(age, 20,25,30,35,40)
-
range date group by your config
SELECT online FROM online GROUP BY date_range(field="insert_time",format="yyyy-MM-dd" ,"2014-08-18","2014-08-17","now-8d","now-7d","now-6d","now")
-
range date group by day
select * from test group by date_histogram(field="changeTime",interval="1h",format="yyyy-MM-dd HH????ss")
-
stats
SELECT online FROM online group by stats(field="grade")
-
topHits
select top_hits(field="class", hitssort="age:desc", taglimit = "10", hitslimit = "1", _source="name,age,class,gender") from school
源碼編譯
# 需要go環(huán)境 git Clone https://github.com/farmerx/ElasticHD # 進(jìn)入到應(yīng)用目錄下 cd ElasticHD npm install # build vue 源碼 npm run build # 進(jìn)入到服務(wù)端程序目錄 cd ./main # 使用statik 壓縮編譯好的程序(github上的一款go應(yīng)用) statik -src=../dist # go build GO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o elasticHD.exe github.com/elasticHD/main
ElasticHD應(yīng)用頁面
