大家好,我是JavaBoy_ahua,我又回来了,今天我给大家分享的是一个数据分析引擎,或者是说,搜索引擎elasticsearch,它能做什么呢,其实啊,就是对我们查询的性能有一个很大的提高,或者它也可以用一些分词的插件,举个例子:
大家在百度搜索Java,那关于Java的信息都尽收眼底了是吧,现在就有小伙伴说了,我不用elasticsearch也可以做呀,MySQL的模糊查询就可以做到,不就是 select * from tableName from where key like '%Java%'吗,确实这样想没点毛病,我也是这样想的,可是咱们设想一下,几十万条,几百万条甚至是几千万条关于Java的信息 咱们这是要查多久呀,为什么百度一下子全都查出来了呢。对吧啦,懂我意思吗,或者是说为什么有些信息就可以排在最上面呢,这就涉及到一个权重的问题啦,当然啦,我也今天刚接触,有些说的不对的地方也希望大家多多指出。
这张图片呢,是我在官网上截取下来的,想快点,就跟着我的脚步一起来吧。
elasticsearch呢是一个基于Lucence的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,它的请求呢也是一个restful风格的
举个查询的栗子:
#查看ahua索引list001类型的数据
GET ahua/list001/_search
{
}
大家是不是悟一点了呢,over,话不多说直接安装。
这是官网的下载地址:https://www.elastic.co/downloads/elasticsearch
然后呢我下载的是Windows版本的,下载之后就是一个压缩包
之后直接解压就好啦~
再打开bin目录文件夹运行elasticsearch.bat
这样就启动成功啦~
人家默认的端口应该是9200,我们直接访问:localhost:9200
这就是咱们的一个主页
后面咱们还需要使用elasticsearch head来连接它,人家的端口是9100所以就会有一个跨域问题:
解决方案:
进入elasticsearch/config/elasticsearch.yml添加两句代码就好啦
#支持跨域访问支持,默认为false
http.cors.enabled: true
#跨域访问允许的域名地址
http.cors.allow-origin: "*"
后面咱们还需要安装:elasticsearch-head-master
下载地址:https://github.com/mobz/elasticsearch-head
人家下载下来之后也是一个压缩包,直接解压就好了
解压进去大家可以看到package.json,所以人家是一个web工程,运行它之前需要咱们电脑上有node.js不然不能下载grunt。
node.js我这就不说啦,大家自己去研究啦。
over现在直接在cmd 里面找到这个目录,npm install,再npm run start
后来就是安装kibana啦,这没啥好讲的啦也就是下载,解压,进入bin目录启动。
下面是下载的地址:https://www.elastic.co/cn/downloads/past-releases/kibana-5-6-0
平时咱们的命令基本上都在kibana里面使用啦,elasticsearch-head-master里面也可以写,但是人家不会格式化咱们的命令,就不大友好,所以kibana yyds
看多贴心
基本命令使用:
#查看所有节点
GET _cat/nodes
#查看索引数据
GET ahua/_search
{
}
#查看ahua索引list001类型的数据
GET ahua/list001/_search
{
}
#添加一条数据
POST ahua/list001/3
{
"userName":"旺仔呀",
"sex":"男",
"age":"18"
}
#删除索引ahua类别为list001id为2的文档
DELETE ahua/list001/2
这次的博客有点粗糙,主要是还有好多事情还没有忙完,后面我会完善该博客,今天的博客就分享到这里啦~