zoukankan      html  css  js  c++  java
  • 关于docker安装使用的ES

    安装

    使用docker最好,简单方便,使用接口的方式使用。
    1、分布式的实时文件存储,每个字段都被索引并可被搜索
    2、分布式的实时分析搜索引擎
    3、可以扩展到成百上千台服务器,处理PB级结构化或非结构化数据。
    elasticsearch:全文检索工具,使用方式是在linux安装,需要java环境,中文分词需要ik分词器扩展插件,然后通过接口的方式,存入数据,读取数据,查询数据
    注意数据库数据的同步更新,以及es防止挂掉的脚本定时任务,
    安装PHP扩展,实例化es之后,将文档加入索引,在添加的时候就创建了索引,索引就是表,文档就是行记录,然后通过
    $params = [ 'index' => 'articles_index', 'type' => 'articles_type', 'id' => 'articles_1'];
    //index相当于数据库名字 type相当于表名 。。
    $res = $client->get($params);
    获取数据。 或者delete或者indices()-》delete()删除索引

    网页案例

    php+es实现全文检索demo

    使用场景

    企业里对数据的查询一般可以分为三种:列表查询、详情查询和统计查询。列表一般就是列表页对应的查询,详情查询一般就是具体id对应的详情查询,而统计查询一般都是在看一些数值之类的报表,也就是一堆count值
    可以使用sql转换ES查询语句的方式,提供统一的查询api,例如,框架中ORM方式先得出sql语句,之后使用扩展工具类将sql转换为ES查询语句,再使用ESapi进行查询。

    基本知识

    查询方式可以使用composer的插件将sql语句转变为ES查询语句的json,比如query"{"match":"zhongguo"}"ES查询有各种样式的语句可以使用
    eg:match系列
    1、match:返回所有匹配的分词。
    2、match_all:查询全部。
    3、match_phrase:短语查询,在match的基础上进一步查询词组,可以指定slop分词间隔。
    4、match_phrase_prefix:前缀查询,根据短语中最后一个词组做前缀匹配,可以应用于搜索提示,但注意和max_expanions搭配。其实默认是50.......
    5、multi_match:多字段查询,使用相当的灵活,可以完成match_phrase和match_phrase_prefix的工作
    还有排序查询(sort);分页(from,size);bool查询(must,should);查询结果过滤(_source);高亮显示(highlight);精确查询与模糊查询(terms);聚合查询(avg、max、min、sum);分组查询(aggs,range分组,field为字段,from,to范围);
    ES基本语句使用

    安装logstash

    需要使用docker 安装Logstash,来收集文件/var/log/messages
    pull与es对应版本的logstash, 然后 run 等待30秒 查看日志,docker logs -f logstash
    将拷贝数据 授予权限
    docker cp logstash:/usr/share/logstash /data/elk7/
    mkdir /data/elk7/logstash/config/conf.d
    chmod 777 -R /data/elk7/logstash
    vi修改 logstash配置文件
    vi /data/elk7/logstash/config/logstash.yml : 指定名称,host,es的地址hosts
    新建文件syslog.conf,用来收集/var/log/messages
    vi /data/elk7/logstash/config/conf.d/syslog.conf
    权限 chmod 644 /var/log/messages
    重新启动logstash
    docker安装logstash

    安装kibana

    kibana是ES的可视化工具 使用docker安装,需要pull 与es对应版本的kibana,然后写入配置文件 指定名称,host,es的地址hosts,启动的时候开启默认的5601端口,并 将配置文件映射到容器中的config.yml位置,之后等待30秒或者docker logs -f kibana日志发现搭建成功,可以访问5601端口。
    kibana的安装

    高山仰止,景行行止,虽不能至,心向往之。
  • 相关阅读:
    H5性能优化
    【JavaScript 】for 循环进化史
    (四十四)通过系统Gallery获取图片
    (四十三)获取图片exif信息
    (四十二)、加载大分辨率图片到内存
    (九)JAVA设计模式之单例模式
    (四十一)Activity切换动画
    (四十)android在代码中,如何设置自定义对话框在屏幕中的位置和大小
    (三十九)android动画 Animation四大属性 详解(转载:http://www.android100.org/html/201304/25/2295.html)
    (三十八)android:windowSoftInputMode属性详解
  • 原文地址:https://www.cnblogs.com/yudubujue/p/15787088.html
Copyright © 2011-2022 走看看