一、安装

安装 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. Collaborative Filtering(协同过滤)算法详解

    基本思想 基于用户的协同过滤算法是通过用户的历史行为数据发现用户对商品或内容的喜欢(如商品购买,收藏,内容评论或分享),并对这些喜好进行度量和打分.根据不同用户对相同商品或内容的态度和偏好程度计算用户 ...

  2. J2ee入门:servlet-mapping的映射配置

    <servlet-mapping>元素在Servlet和URL样式之间定义一个映射.它包含了两个子元素<servlet- name>和<url-pattern> & ...

  3. Spring Security入门(2-1)Spring Security - 重要的过滤器

    1.自定义的filter机制 如果要对Web资源进行保护,最好的办法莫过于Filter,要想对方法调用进行保护,最好的办法莫过于AOP. Acegi对Web资源的保护,就是靠Filter实现的.Ace ...

  4. mysql解压缩版本的安装、初始化等

    https://dev.mysql.com/doc/refman/5.7/en/windows-install-archive.html 启动或者暂停mysql服务: https://dev.mysq ...

  5. layer ui插件显示tips时,修改字体颜色

    今天做调查问卷,又遇到一个蛋疼小问题,记录下. 调查问卷有很多选项是要求必填的,如果不填的话,需要给出友好的提示.用的如下组件:http://layer.layui.com/ 1.之前一直默认用的: ...

  6. pandas.read_csv参数详解

    读取CSV(逗号分割)文件到DataFrame 也支持文件的部分导入和选择迭代 更多帮助参见:http://pandas.pydata.org/pandas-docs/stable/io.html 参 ...

  7. Android学习——移植tr069程序到Android平台

    原创作品,转载请注明出处,严禁非法转载.如有错误,请留言! email:40879506@qq.com 声明:本系列涉及的开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅 ...

  8. requests-认证设置

    #如果需要用户名和密码才能登陆网站,则需要认证设置auth=() import requests response = requests.get(url,auth=('user','password' ...

  9. 如何在现有的 Web 应用中使用 ReactJS

    原文:How to Sprinkle ReactJS into an Existing Web Application 译者:nzbin 当我们学习一项新技术,可能是一个 JavaScript 框架, ...

  10. 在一个没有设置宽高的容器中,为什么设置position:absolute后就可以全屏显示了?

    此场景适用于移动端百分比布局,背景全屏显示. 在一个没有设置宽高的容器中设置背景,想要背景全屏显示,设置bcakground-size:100%;后还需设置position:absolut; 原因: ...