es学习1-安装试用
es学习1-安装试用
Small-Liu 发表于8个月前
es学习1-安装试用
  • 发表于 8个月前
  • 阅读 34
  • 收藏 2
  • 点赞 0
  • 评论 0

腾讯云实验室 1小时搭建人工智能应用,让技术更容易入门 免费体验 >>>   

概念

Elasticsearch是一款高度可伸缩的开源全文搜索分析引擎,是一种能够近实时检索、分析大量数据的一直解决方案,它通常作为一种搜索引擎的底层技术解决方案,来支撑复杂业务搜索需求。

看几个概念,这里没有直接把官网翻译过来,用最简短的词描述:

Node:节点,就是一个服务器,存放数据,提供搜索功能
Cluster:集群,多个节点组成提供稳定可扩展的搜索服务
Shards & Replicas:分片和复制,集群中会把数据切分成多份放到不同节点就是分片,并且每个分片会有备份
Index: 索引,一种类型的数据集合
Type: 类型,索引中的一个分类,可以看成是数据库的表
Document:文档,一条数据,相当于关系型数据库的row

安装

这边在Windows下安装的,下载zip包解压,然后执行elasticsearch.bat,这样单机的启动就完成了。

浏览器输入 http://127.0.0.1:9200/ 看到以下信息就是启动成功了

操作

es提供了一系列rest的api,可以通过这些api操作集群、索引等,集群信息后续可以装可视化插件,api主要对索引进行操作。

创建索引

PUT   http://127.0.0.1:9200/index1
请求体(分片、备份):{"settings":{"index":{"number_of_shards":"3","number_of_replicas":"2"}}}

分片一开始就确定,复制数量后续可以修改:/index/_settings   {"number_of_replicas":"2"}

删除索引:DELETE http://127.0.0.1:9200/index1,

如果请求url后面加个?pretty参数,则结果json会美观的展示,

插入数据

PUT http://127.0.0.1:9200/index1/type1/1?pretty
{{"name":"zhangsan","age":32}}

如果插入相同的id会替换掉之前的, 并且插入、修改、删除数据要在一秒之后在结果中才会有体现,这也是跟其他像sql事务提交后立马能查到的不同点。
如果不指定id, 用POST提交会随机产生id

修改数据: POST  /index/type/id/_update
删除数据: DELETE /index/type/id
检索数据:

GET http://127.0.0.1:9200/index1/_search?q=*&sort=age:asc&pretty

暂时没有高级查询部分。。。

可视化插件

Head插件安装参考:http://mobz.github.io/elasticsearch-head/

这里直接单机安装:下载解压后把根目录的index.html拖到浏览器中,然后会默认连接http://localhost:9200/,如果连接的时候报跨域异常就在配置文件config/elasticsearch.yml中配置如下:

http.cors.enabled: true
http.cors.allow-origin: "*"

该配置的原理是es服务端返回头中会加上 Access-Control-Allow-Origin: *。

http相关的更多配置参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-http.html。

单机版副本没有分配,所以节点名称显示Unassigned,因为在同一台集群上做副本备份是没有必要的,所以单机版集群健康会一直表黄色(黄色表示不是所有副本都可用)。

 

标签: ElasticSearch es
共有 人打赏支持
粉丝 12
博文 56
码字总数 49976
×
Small-Liu
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: