1. Elasticsearch背景介绍
  Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
备注:
  (1) Lucene
  Lucene是一套用于全文检索的开放源代码程序库,同时也是最受欢迎的免费Java信息检索程序库。
  (2) RESTful
  RESTful是一种万维网软件架构风格,不是一种标准
  (3) Elasticsearch开箱即用,请在官网下载

2. Elasticsearch相关概念及项目包介绍
 (一) 相关概念
  1、索引(index)
  ES中文档存储的地方就叫索引,也可以理解为数据库
  2、类型(type)
  文档归属于一种类型(type),而这些类型存在于索引(index)中,可以理解为数据库中的一张表
  3、文档(documents)
  可以理解为数据库中一行数据就是一个文档
  4、字段(File)
  可以理解为一行数据中的字段
  5、数据包含关系如下:Elasticsearch -> Indices -> Types -> Documents -> Fields
  6、分片(shard)
  Elasticsearch集群允许系统存储的数据量超过单机容量,实现这一目标引入分片策略shard。在一个索引index中,数据(document)被分片处理(sharding)到多个分片上。Elasticsearch屏蔽了管理分片的复杂性,使得多个分片呈现出一个大索引的样子。
  7、副本(replica)
  为了提升访问压力过大是单机无法处理所有请求的问题,Elasticsearch集群引入了副本策略replica。副本策略对index中的每个分片创建冗余的副本,处理查询时可以把这些副本当做主分片来对待(primary shard),此外副本策略提供了高可用和数据安全的保障,当分片所在的机器宕机,Elasticsearch可以使用其副本进行恢复,从而避免数据丢失。
  8、路由(routing)
  当向Elasticsearch存放数据时,根据文档标识符_id将文档分配到多个分片上,负载均衡算法只需要实现平均即可。当取用数据时,查询所有的分片然后汇总结果,而并不必须知道数据到底存在哪个分片上。带来的问题是,在查询时,要查询所有的分片然后汇总结果,造成性能的损耗,在不乐观的情况下,有些分片的查询可能失败(failed),造成结果不准确。为了避免这个问题,引入了路由功能(routing),在存入数据时通过路由键将数据存入指定分片,在查询的时候可以通过相同的路由键指明在哪个分片将数据查出来。

 (二) 目录介绍
  1、Bin 启动目录
  2、Config 配置目录
  3、Data 节点分片数据目录
  4、Lib jar包目录
  5、Logs 日志目录
  6、Plugins 工具目录

3. Elasticsearch启动测试
 (一)启动
  1、es目录下进入bin目录下,点击 elasticsearch.bat
  2、es目录下命令行执行./bin/elasticsearch
 (二)测试
  1、es目录下命令行执行:curl 'http://localhost:9200/?pretty'
  2、浏览器访问地址:http://localhost:9200/_plugin/head/

4. Elasticsearch命令行数据的增删改查
 (一)查询
  请求方式:curl 'localhost:9200/index/type/id?pretty'
  1、localhost:9200是ES的访问地址和端口
  2、index是索引的名称
  3、type是类型的名称
  4、pretty是将返回的信息以可读的JSON形式返回。
  搜索API
  1、请求参数方式:curl 'localhost:9200/index/_search?XXX'
  2、请求体方式:curl -XPOST 'localhost:9200/index/_search?pretty' -d 'XXX'
 (二)新增:curl -XPOST http://localhost:9200/index/type/id -d’{XXX}’
 (三)修改:与新增类似
 (四)删除:curl -XDELETE 'localhost:9200/index/type/id'
  备注:以上XXX指需要查询的内容
  以上就是简单的ES学习内容,当然这是很基础的知识,本人了解也有限,如果有什么问题请及时指出。当然最好的学习方式是参考ES官网文档,在我之前的博客也有提到过,学无止境,希望能与大家一起进步。

Elasticsearch基础知识分享的更多相关文章

  1. GO基础知识分享

    目录 GO基础知识分享 go语言的基本事项 关键字 字符串的拼接和变量的定义方式 空白符 const常量 iota的用法 运算符 Go 没有三目运算符,不能适用?: 语言条件语句 for循环的方式 函 ...

  2. Elasticsearch基础知识学习

    概要 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Ap ...

  3. Elasticsearch基础知识要点QA

    前言:本文为学习整理实践他人成果的记录型博客.在此统一感谢各原作者,如果你对基础知识不甚了解,可以通过查看Elasticsearch权威指南中文版, 此处注意你的elasticsearch版本,版本不 ...

  4. elasticsearch基础知识杂记

    日常工作中用到的ES相关基础知识和总结.不足之处请指正,会持续更新. 1.集群的健康状况为 yellow 则表示全部主分片都正常运行(集群可以正常服务所有请求),但是 副本 分片没有全部处在正常状态. ...

  5. XML的相关基础知识分享(二)

    前面我们讲了一下XML相关的基础知识(一),下面我们在加深一下,看一下XML高级方面. 一.命名空间 1.命名冲突 XML命名空间提供避免元素冲突的方法. 命名冲突:在XML中,元素名称是由开发者定义 ...

  6. Elasticsearch基础教程分享

    基础及相关资料 首先我们先了解一下什么是Elastisearch,Elasticsearch(简称es)是一个基于Lucene库的搜索引擎.它提供了一个分布式.支持多租户的全文搜索引擎,具有HTTP  ...

  7. docker 基础知识分享ppt

    给团队做的docker基础分享ppt, 见下面的附件. https://files.cnblogs.com/files/harrychinese/docker_intro.pptx

  8. Elasticsearch 基础知识要点与性能监控

    本文的来源是我翻译国外的一篇技术博客,感谢原作者Emily Chang,原文地址通过如下的知识,我们能大致学到关于ES的一些基本知识,进而对elasticsearch的性能进行监控和调优 注意elas ...

  9. elasticsearch 基础知识汇总

    索引分片: 从策略层面,控制分片分配的选择 磁盘限额 为了保护节点数据安全,ES 会定时(cluster.info.update.interval,默认 30 秒)检查一下各节点的数据目录磁盘使用情况 ...

随机推荐

  1. sql server managerment 给表加说明

    右击表 =>点属性  =>扩展属性 =>加 MS_Description

  2. Centos将yum源设置为阿里云的镜像源

    第一步:备份原有镜像源 mv /etc/yum.repo.d/Centos-Base.repo /etc/yum.repo.d/Centos-Base.repo.bak 第二步:下载阿里云的镜像源 w ...

  3. Kali安装Docker

    ---恢复内容开始--- 第一周 计划安装好docker     准备 审计thinkphp 框架 先把docker 安装的笔记补上 本来是在unbuntu 安装了一遍 并run 了几个镜像和基本操作 ...

  4. windows与linux多线程对比

      一.创建线程 1>windows HANDLE aThread[MAX_THREAD]; 函数原型: HANDLE WINAPI CreateThread( _In_opt_ LPSECUR ...

  5. 03SQLALchemy外键约束

    一,配置 1,SQLALchemy的配置单独使用config.py文件2,满足如下要求: #dialect+driver://username:password@host:port/database ...

  6. pip install

    pip install <包名> 或 pip install -r requirements.txt 通过使用 == >= <= > < 来指定版本,不写则安装最新 ...

  7. Nuxt.js 从入门到放弃

    Nuxt 是 Vue 上的 SSR,也就是服务端渲染应用框架,可在很大程度上解决当前 SPA 和 CSR 的首页加载慢,不利于 SEO 的问题.本场 Chat 就将详细介绍 Nuxt 的使用以及相关概 ...

  8. 通配符的匹配很全面, 但无法找到元素 'context:property-placeholder' 的声明。

    在Spring相应包导入正确的前提下,出现这个异常,是因为我们在引入命名空间的时候,没有正确引入它的DTD解析文件,以上面的context为例,解决办法如下: 在引入 xmlns:context=&q ...

  9. 分布式、集群、微服务、SOA 之间的区别

    分布式:不同模块部署在不同服务器上 作用:分布式解决网站高并发带来问题 集群:多台服务器部署相同应用构成一个集群 作用:通过负载均衡设备共同对外提供服务 SOA:Service Oriented Ar ...

  10. 实现简单的promise

    只考虑成功时的调用,方便理解一下promise的原理promise的例子: 1. 接下来一步步实现一个简单的promise step1:promise 接受一个函数作为构造函数的参数,是立即执行的,并 ...