Elasticsearch 学习(二):安装和使用
一、安装
安装 Elasticsearch 之前,需要先安装 Java,并配置好 Java 环境变量。
安装好 Java 环境后,进入 Elasticsearch 官网下载安装包。

解压安装包,进入解压目录下的 bin 目录,输入下面的命令(Windows),启动 Elasticsearch。
elasticsearch.bat
打开浏览器,在地址栏输入“http://localhost:9200/”,出现下面页面,则代表启动成功。

也可以使用 CURL(利用URL语法在命令行方式下工作的开源文件传输工具)命令进行查询。Windows 环境下需要安装 CURL。
打开另一个终端,输入下面的命令。
curl "http://localhost:9200/?pretty"
如果返回如下信息:
{
"name" : "OpBZ5jc",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "HN9bHTyMQOWMx8m8nn-ajw",
"version" : {
"number" : "5.6.3",
"build_hash" : "1a2f265",
"build_date" : "2017-10-06T20:33:39.012Z",
"build_snapshot" : false,
"lucene_version" : "6.6.1"
},
"tagline" : "You Know, for Search"
}
说明你的 Elasticsearch 集群已经启动成功并且能正常运行。
按下 CTRL + C,Elasticsearch 就会停止运行。
二、重要概念
在使用 Elasticsearch 之前,先来了解一些重要概念。
2.1 Cluster 和 Node
集群(Cluster)就是一组计算机,它们作为一个整体,向用户提供一组网络资源。这些单个的计算机系统,就是集群中的节点(Node)。
在 Elasticsearch 中,一个节点就是一个 Elasticsearch 实例,而一个集群由一个或多个节点组成,它们具有相同的 cluster.name。它们协同工作,分享数据和负载。当加入新的节点,或者删除一个节点时,集群就会感知到,并平衡数据。
2.2 Index
索引(Index)在 Elasticsearch 中有着不同的含义。
名词情况下,索引(Index)可以理解成关系型数据库中的数据库,它是相关文档存储的地方,Index 的复数是 Indices 或 Indexes。
动词情况下,索引一个文档表示把一个文档存储到索引(名词)里,以便它可以被检索或者查询。这很像 SQL 中的 INSERT 关键字,差别是,如果文档已经存在,新的文档将覆盖旧的文档。
2.3 Type
在 Elasticsearch 中,一个索引可以存储许多不同用途的对象。例如基于 Elasticsearch 的博客系统可以存储文章和评论。文档类型(Type)可以帮助我们很好的区分这些对象。可以将文档类型理解成传统关系型数据库中的 Table。
2.4 Document
文档(Document)是 Elasticsearch 中存储的主要实体,相当于传统关系型数据库中的一行数据。在 Elasticsearch 中,文档使用 JSON 格式表示,例如:
{
"name":"devywb",
"age":"23"
}
下面是 Elasticsearch 和关系型数据库对比图。

三、新建、查询、删除索引
3.1 新建索引
新建索引,可以使用 CRUL 工具发送 PUT 请求,下面的命令是新建一个名为 blog 的索引,索引名称只能使用小写字母。
curl -XPUT "http://localhost:9200/blog?pretty"
执行命令后,服务器返回一个 JSON 对象。
{
"acknowledged" : true,
"shards_acknowledged" : true,
"index" : "blog"
}
acknowledged 字段代表是否操作成功。
3.2 查询所有索引
查询所有索引,可以使用 CRUL 工具发送 GET 请求。
curl -XGET "http://localhost:9200/_cat/indices?v"
执行命令后,服务器返回下面的信息。
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open blog C5o41LfeSrSc5PzI3_hn9g 5 1 0 0 324b 324b
也可以指定返回哪些信息。
curl -XGET "http://localhost:9200/_cat/indices?h=health,status,index,uuid&v"
返回结果如下:
health status index uuid
yellow open blog C5o41LfeSrSc5PzI3_hn9g
3.3 删除索引
删除索引,可以使用 CRUL 工具发送 DELETE 请求。
curl -XDELETE "http://localhost:9200/blog?pretty"
返回结果如下:
{
"acknowledged" : true
}
acknowledged 字段代表是否删除成功。
四、参考链接
Elasticsearch 学习(二):安装和使用的更多相关文章
- Hbase深入学习(二) 安装hbase
Hbase深入学习(二) 安装hbase This guidedescribes setup of a standalone hbase instance that uses the local fi ...
- elasticsearch学习笔记——安装,初步使用
前言 久仰elasticsearch大名,近年来,fackbook,baidu等大型网站的搜索功能均开始采用elasticsearch,足见其在处理大数据和高并发搜索中的卓越性能.不少其他网站也开始将 ...
- ElasticSearch学习笔记--安装
1.安装ElasticSearch https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-index_.html 这 ...
- Elasticsearch学习笔记——安装、数据导入和查询
到elasticsearch网站下载最新版本的elasticsearch 6.2.1 ? 1 https://www.elastic.co/downloads/elasticsearch 中文文档请参 ...
- YII2.0学习二 安装adminlte 后台模板
控制台切换到安装目录wwwroot/shanghai/ 修改一下composer镜像地址:composer 使用中国镜像 运行 composer require dmstr/yii2-adminlte ...
- Elasticsearch 学习二(请求流程).
一.写入数据 1.ES 的任意节点都可以作为协调(Coordinating)节点接受请求(包括新建.索引或者删除请求),每个节点都知道集群中任一文档位置: 2.协调节点会通过 routing 字段计算 ...
- ElasticSearch学习笔记-01 简介、安装、配置与核心概念
一.简介 ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便.支持通过HTTP使用JSON进 ...
- elasticSearch学习安装
资料: 1.Elasticsearch学习,请先看这一篇! https://blog.csdn.net/laoyang360/article/details/52244917 2. linux下ela ...
- 批量搞机(二):分布式ELK平台、Elasticsearch介绍、Elasticsearch集群安装、ES 插件的安装与使用
一.分布式ELK平台 ELK的介绍: ELK 是什么? Sina.饿了么.携程.华为.美团.freewheel.畅捷通 .新浪微博.大讲台.魅族.IBM...... 这些公司都在使用 ELK!ELK! ...
- Hadoop学习------Hadoop安装方式之(二):伪分布部署
要想发挥Hadoop分布式.并行处理的优势,还须以分布式模式来部署运行Hadoop.单机模式是指Hadoop在单个节点上以单个进程的方式运行,伪分布模式是指在单个节点上运行NameNode.DataN ...
随机推荐
- 使用Java High Level REST Client操作elasticsearch
Java高级别REST客户端(The Java High Level REST Client)以后简称高级客户端,内部仍然是基于低级客户端.它提供了更多的API,接受请求对象作为参数并返回响应对象,由 ...
- Django admin 中抛出 'WSGIRequest' object has no attribute 'user'的错误
这是Django版本的问题,1.9之前,中间件的key为MIDDLEWARE_CLASSES, 1.9之后,为MIDDLEWARE.所以在开发环境和其他环境的版本不一致时,要特别小心,会有坑. 将se ...
- Django—中间件
中间件简介 什么是中间件 中间件是一个用来处理Django的请求和响应的框架级别的钩子.它是一个轻量.低级别的插件系统,用于在全局范围内改变Django的输入和输出.每个中间件组件都负责做一些特定的功 ...
- VS2013 堆栈溢出调查(0xC00000FD: Stack overflow)
在调试一个代码时,执行过程中会出现如下错误(0xC00000FD: Stack overflow). 很明显是堆栈溢出了. 网上很多方法,都是通过修改设置工程配置,把堆栈调大一些,如下图. 但是堆栈到 ...
- Java-Maven(八):IDEA使用本地maven,并配置远程中央仓库
声明:已经安装了maven,安装请参考:<Java-Maven(一):Maven的简介与安装> 1)一般我们从github.码云(https://gitee.com)上获取代码后,实际上我 ...
- [论文阅读]VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION(VGGNet)
VGGNet由牛津大学的视觉几何组(Visual Geometry Group)提出,是ILSVRC-2014中定位任务第一名和分类任务第二名.本文的主要贡献点就是使用小的卷积核(3x3)来增加网络的 ...
- 基于vue2.0的一个系统
前言 这是一个用vue做的单页面管理系统,这里只是介绍架子搭建思路 前端架构 沿用Vue全家桶系列开发,主要技术栈:vue2.x+vue-router+vuex+element-ui1.x+axios ...
- Java学习图形界面+网络编程案例---------网络简易通讯
主要思想: 主类继承JPanel,在构造方法中将JFrame设成空布局:在其中适当位置添加组件:实现事件监听处理 DATE:2015-10-31 服务器端代码: /** * @author Oyc * ...
- maven引入本地jar 打jar包
没搭建私服的情况下引入本地的jar,并把本地jar打包进项目的run jar 以打包引入hadoop-common-2.7.5.jar为例 引用 复制jar包所在的路径 打开cmd命令提示符 切换路径 ...
- [LeetCode] Max Stack 最大栈
Design a max stack that supports push, pop, top, peekMax and popMax. push(x) -- Push element x onto ...