文档章节

es学习1-安装试用

Small-Liu
 Small-Liu
发布于 2017/02/17 09:19
字数 736
阅读 46
收藏 2

概念

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,因为在同一台集群上做副本备份是没有必要的,所以单机版集群健康会一直表黄色(黄色表示不是所有副本都可用)。

 

© 著作权归作者所有

共有 人打赏支持
Small-Liu
粉丝 16
博文 56
码字总数 49976
作品 0
南京
程序员
使用开源软件快速搭建数据分析平台

原文出处:taogang 最近,国内涌现出了不少数据分析平台产品。这些产品的目标应该都是self service的BI,利用可视化提供数据探索的功能,并且加入机器学习和预测的功能。它们对标的产品应该是...

taogang
2016/06/14
0
0
react-router入门

如果您已经入门reactjs,请绕道~ 这篇博客只适合初学者,初学reactjs的时候,如果你不会webpack,相信很多人都会被官方的例子绕的晕头转向。 ES6的例子也会搞死一批入门者。之前一直用的gulp,...

馒头
2016/03/08
153
0
gulp-babel 自动编译es5-es6(可无脑按步骤操作)

现在es6比较火,很多同学都想实战一下,但是发现网上的要不就是webpack配合、vue、react使用es6,要不就是教程安装不够详细。webstorm可以直接使用es6,但是没有编译后的es5文件,不适合很多...

再这么说就哭了呦!
2017/11/01
0
0
elasticsearch安装与使用(1)-- centos7 elasticsearch的两种简单安装方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34173549/article/details/81607961 前言 elasticsearch(下面称为ES)是一个基于Lucene的搜索服务器(By ...

追风筝的猪
08/12
0
0
Elasticsearch技术分享(一)

场景 与同事分享一下最近学习es的心得 大纲 1)es使用场景 2)搭建环境与集群基本运维命令介绍 3)基础分布式架构初探与核心概念解读 4)实战 分析 一、es使用场景 1) 什么是 es A) 故事引入...

PENGYUCHENG32109
2017/03/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

《netty入门与实战》笔记-05:netty内置的channelHandler

Netty 内置了很多开箱即用的 ChannelHandler。下面,我们通过学习 Netty 内置的 ChannelHandler 来逐步构建我们的 pipeline。 ChannelInboundHandlerAdapter 与 ChannelOutboundHandlerAdap...

Funcy1122
24分钟前
3
0
帧动画(wifi信号动态动画)

准备六张wifi不同信号强度的素材图片,复制到drawable目录中 在drawable目录中新建frame文件,并编写代码 <animation-list xmlns:android="http://schemas.android.com/apk/res/android"> ...

lanyu96
45分钟前
3
0
快速get到学习Linux操作系统的点

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能够运行主要的UNIX工具软件、网络协议和应用程序。它支持32位...

问题终结者
53分钟前
1
0
Django2 model操作数据库

1.将应用(如learn)添加到安装应用配置中 将我们新建的应用(learn)添加到 settings.py 中的 INSTALLED_APPS中,告诉Django有这么一个应用。 INSTALLED_APPS = [ 'django.contrib.ad...

MichaelShu
56分钟前
2
0
SpringBoot基础篇Bean之条件注入之注解使用

更多Spring文章,欢迎点击 一灰灰Blog-Spring专题 bean的条件注入,除了前面一篇博文中介绍的通过@Conditional注解配合Condition接口的实现之外,还提供了更多简化的注解使用方式,省略了自己...

小灰灰Blog
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部