一、安装

安装 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: 权威指南

Elasticsearch 学习(二):安装和使用的更多相关文章

  1. Hbase深入学习(二) 安装hbase

    Hbase深入学习(二) 安装hbase This guidedescribes setup of a standalone hbase instance that uses the local fi ...

  2. elasticsearch学习笔记——安装,初步使用

    前言 久仰elasticsearch大名,近年来,fackbook,baidu等大型网站的搜索功能均开始采用elasticsearch,足见其在处理大数据和高并发搜索中的卓越性能.不少其他网站也开始将 ...

  3. ElasticSearch学习笔记--安装

    1.安装ElasticSearch https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-index_.html 这 ...

  4. Elasticsearch学习笔记——安装、数据导入和查询

    到elasticsearch网站下载最新版本的elasticsearch 6.2.1 ? 1 https://www.elastic.co/downloads/elasticsearch 中文文档请参 ...

  5. YII2.0学习二 安装adminlte 后台模板

    控制台切换到安装目录wwwroot/shanghai/ 修改一下composer镜像地址:composer 使用中国镜像 运行 composer require dmstr/yii2-adminlte ...

  6. Elasticsearch 学习二(请求流程).

    一.写入数据 1.ES 的任意节点都可以作为协调(Coordinating)节点接受请求(包括新建.索引或者删除请求),每个节点都知道集群中任一文档位置: 2.协调节点会通过 routing 字段计算 ...

  7. ElasticSearch学习笔记-01 简介、安装、配置与核心概念

    一.简介 ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便.支持通过HTTP使用JSON进 ...

  8. elasticSearch学习安装

    资料: 1.Elasticsearch学习,请先看这一篇! https://blog.csdn.net/laoyang360/article/details/52244917 2. linux下ela ...

  9. 批量搞机(二):分布式ELK平台、Elasticsearch介绍、Elasticsearch集群安装、ES 插件的安装与使用

    一.分布式ELK平台 ELK的介绍: ELK 是什么? Sina.饿了么.携程.华为.美团.freewheel.畅捷通 .新浪微博.大讲台.魅族.IBM...... 这些公司都在使用 ELK!ELK! ...

  10. Hadoop学习------Hadoop安装方式之(二):伪分布部署

    要想发挥Hadoop分布式.并行处理的优势,还须以分布式模式来部署运行Hadoop.单机模式是指Hadoop在单个节点上以单个进程的方式运行,伪分布模式是指在单个节点上运行NameNode.DataN ...

随机推荐

  1. python全栈开发-常用模块的一些应用

    一.random模块详解 1.概述 首先我们看到这个单词是随机的意思,他在python中的主要用于一些随机数,或者需要写一些随机数的代码,下面我们就来整理他的一些用法 2.常用方法 1. random ...

  2. redis命令详解

      redis中添加key value元素:set key value;       获取元素:get key ;   redis中添加集合:lpush key value1 value2 value ...

  3. 原生Ajax用法——一个简单的实例

    Ajax全名(Asynchronous(异步) JavaScript and XML )是可以实现局部刷新的 在讲AJax之前我们先用简单的实例说一下同步和异步这个概念 /*异步的概念(就是当领导有一 ...

  4. 新概念英语(1-69)The car race

    新概念英语(1-69)The car race Which car was the winner in 1995 ? There is  car race near our town every ye ...

  5. DevExpress控件的一些快捷操作

    用的DevExpress控件时,有一些操作并不太方便,根据我自己需要的封装了一些控件的事件,调用的时候直接绑定控件的事件就可以了 例如: this.ComboBoxEdit.KeyDown += Ct ...

  6. [SQL case when的两种用法]

    当我们需要从数据源上 直接判断数据显示代表的含义的时候 ,就可以在SQL语句中使用 Case When这个函数了. Case具有两种格式.简单Case函数和Case搜索函数. 第一种 格式 : 简单C ...

  7. io使用的设计模式

    File f = new File("c:/a.txt"); 1. FileInputStream fis = new FileInputStream(f); 2. Reader ...

  8. Hive函数:LAG,LEAD,FIRST_VALUE,LAST_VALUE

    参考自大数据田地:http://lxw1234.com/archives/2015/04/190.htm 测试数据准备: create external table test_data ( cooki ...

  9. ZOJ-1456 Minimum Transport Cost---Floyd变形+路径输出字典序最小

    题目链接: https://vjudge.net/problem/ZOJ-1456 题目大意: Spring国家有N个城市,每队城市之间也许有运输路线,也可能没有.现在有一些货物要从一个城市运到另一个 ...

  10. [论文阅读] Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks(MTCNN)

    相关论文:Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks 概论 用于人脸检测和对 ...