一、安装

安装 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. 重启Apache报错

    重启Apache报错,如图所示:server: /etc/httpd/modules/mod_jk.so: wrong ELF class: ELFCLASS64 原因:mod_jd的版本有问题 解决 ...

  2. Django中自定义过滤器的使用

    我在这里做的是: 从数据库查出id递增的一些信息,展示在前台. 编写一个过滤器判断查出数据的id是偶数的返回True 奇数返回False 1 创建项目,创建应用,注册应用,配置settings.py文 ...

  3. 表单中各种input汇总

    html表单 表单用于搜集不同类型的用户输入,表单由不同类型的标签组成,相关标签及属性用法如下: 1.<form>标签 定义整体的表单区域 action属性 定义表单数据提交地址 meth ...

  4. 用于水和水蒸汽物性计算的Python模块——iapws

    无论是火电还是核电,将能量转化为电能的方式主要还是烧开水,即加热水产生高压蒸汽驱动汽轮机做功再发电.在进行热力循环分析.流动传热计算时,需获得水和水蒸汽的物性参数.网上主流的水蒸汽物性计算程序是上海成 ...

  5. python编程基础--计算机原理之硬件基础

    一.寄存器:寄存器是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果. 1.寄存器的特性: 1)寄存器位于CPU内部,数量很少,仅十四个: 2)寄存器所能存储的数据不一定 ...

  6. A、B同时打开一个页面进行同一条数据库记录进行修改,A修改完成后提交表单,A修改的数据保存完成后;当B也修改完成后,提交数据进行数据修改。此时B修改的内容会覆盖A修改的内容,请问如何避免?

    A.B同时打开一个页面进行数据中的一条数据进行修改,A修改完成后提交表单,数据修改保存完成后B开始页面也修改完成,开始提交进行修改.此时B修改的内容会覆盖A的内容,请问如何避免? 通过搜索和我个人总结 ...

  7. hdu2674 N!Again---思维

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2674 题目大意: 求n!%2009的值 思路: 由于模2009,所以大于等于2009的直接为0,前2 ...

  8. 微信小程序开发-IP地址查询-例子

    微信小程序开发  小程序搜索框  IP地址查询  搜索查询  样例 微信小程序 开发 参考   https://mp.weixin.qq.com/debug/wxadoc/dev/component/ ...

  9. 1025InnoDB log file 设置多大合适

    转自 http://blog.csdn.net/langkeziju/article/details/51094289 数据库的东西,往往一个参数就牵涉N多知识点.所以简单的说一下.大家都知道inno ...

  10. [LeetCode] Basic Calculator III 基本计算器之三

    Implement a basic calculator to evaluate a simple expression string. The expression string may conta ...