先挖坑,后填。

0.我用elasticsearch做了哪些事

数据来源:通过logstash实时导入elasticsearch,一类 mysql 中项目信息;一类日志信息

常用查询写法

1.做某些字段的筛选的查询、统计等

  • 某个项目访问量
  • 某个渠道来的访问量
  • 聚合搜索热门词汇
  • 统计某篇帖子访问量

2.从mysql来的数据

  • 猜你喜欢,根据用户捐赠过的项目名字,查询在项目名称和描述字段中,与之较接近的前多少项目。

一会儿贴查询sql

 

写个博客,我太难了,公司条件不允许,只能拍照。

1.懒人用法,包装Restapi。考虑到java 的api 不太熟悉,反而在RESTful下调用SQL比较得心应手的情况下,封装了rest请求

 图三,将es 地址写入配置文件,通过ClasspathResource拿到配置文件,再文件中读取es地址路径,ESutil类封装了es rest请求,postEs方法有两个参数url和body,url用来放请求的索引地址,body放ES的请求sql,方法里面封装http请求,并将返回结果解析为json对象。这样每次使用只需要调这个方法,传两个参数即可。

图1,是处理返回结果的解析封装,这块没处理好,不够通用,对于单个搜索和聚合的处理是不同的。

图2,是实际的请求sql.

 

 

 

3.看了一篇帖子的醒悟,一直错用了Elasticsearch:https://zhuanlan.zhihu.com/p/60458049

之前公司使用场景:将全量ngiNx采集的h5和app等访问日志通过logstash写入elasticsearch,在此基础上做,查询统计、猜你喜欢、热门搜索、热门帖子,帖子点击率等操作,这样其实很多日志数据并不关心,还占用了大量cache资源,尤其是在做猜你喜欢时,将mysql 实时增量数据导入el,字段多大20多,实则没太大意义,看过后只保存了重要的字段信息,日后引入hbase存储不太经常访问的字段试下。

更多相关:https://www.iteblog.com/archives/tag/elasticsearch/

4.最近在深举办的开源社区的meetup活动小结

posted on 2019-09-11 17:32  Scarlett meng  阅读(241)  评论(0编辑  收藏  举报