心丨悦 2020-02-22
ES和Solr是2个比较常见的搜索引擎,但是Solr有控制台页面,ES就没有自带的,下面就推荐2个毕竟使用的工具。
ElasticHD 支持 ES监控、实时搜索、Index template快捷替换修改、索引列表信息查看, SQL converts to DSL工具等。是一款非常伴的 Dashboard。
docker run -p 9200:9200 -d --name elasticsearch elasticsearch docker run -p 9800:9800 -d --link elasticsearch:demo containerize/elastichd

添加测试的索引和数据
[ ~]# curl -XPUT ‘localhost:9200/test‘
{"acknowledged":true,"shards_acknowledged":true,"index":"test"}[ ~]#
[ ~]#
[ ~]# curl -XPUT -H "Content-Type: application/json" ‘localhost:9200/test/article/2?pretty‘ -d ‘
> {
> "title": "test",
> "content":"testsfsdfdsfdsf",
> "PV":10
> }‘
{
"_index" : "test",
"_type" : "article",
"_id" : "2",
"_version" : 1,
"result" : "created",
"_shards" : {
"total" : 2,
"successful" : 1,
"failed" : 0
},
"created" : true
}
Dejavu 也是一个 Elasticsearch的 Web UI 工具,其 UI界面更符合当下主流的前端页面风格,因此使用起来很方便。
项目地址:https://github.com/appbaseio/dejavu/
Docker 安装:
[ ~]# docker run --name elasticsearch -p 9200:9200 -d elasticsearch -E http.port=9200 -E http.cors.allow-origin="http://localhost:1358" -E http.cors.enabled=true -E http.cors.allow-headers=X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization -E http.cors.allow-credentials=true
56cf057cc654646f985a522357310101db1875780941196246e27759d19f0513
[ ~]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
56cf057cc654 elasticsearch "/docker-entrypoin..." 4 seconds ago Up 3 seconds 0.0.0.0:9200->9200/tcp, 9300/tcp elasticsearch
注:我的es是5版本的,涉及到跨域的问题,要按照上面的方式启动ES.
[ ~]# docker run -p 1358:1358 -d docker.io/appbaseio/dejavu:3.4.2 58a345b44834e552aac591ad549e81728e76c69103b36c413ff98d04f5f61374 [root@hadoop002 ~]# docker ps -l CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 58a345b44834 docker.io/appbaseio/dejavu:3.4.2 "/bin/sh -c ‘node ..." 2 minutes ago Up 36 seconds 0.0.0.0:1358->1358/tcp serene_wozniak

另外一部分,则需要先做聚类、分类处理,将聚合出的分类结果存入ES集群的聚类索引中。数据处理层的聚合结果存入ES中的指定索引,同时将每个聚合主题相关的数据存入每个document下面的某个field下。