一、什么是ElasticSearch:

  Elasticsearch (ES)是一个基于Lucene构建的开源、分布式、RESTful 接口全文搜索引擎。Elasticsearch 还是一个分布式文档数据库,其中每个字段均是被索引的数据且可被搜索,它能够扩展至数以百计的服务器存储以及处理PB级的数据。它可以在很短的时间内在储、搜索和分析大量的数据。它通常作为具有复杂搜索场景情况下的核心发动机。 Elasticsearch就是为高可用和可扩展而生的。可以通过购置性能更强的服务器来完成。 官网:https://www.elastic.co/downloads/elasticsearch 中文社区https://es.xiaoleilu.com/

  ES的优势:横向可扩展性:只需要增加台服务器,做一点儿配置,启动一下Elasticsearch就可以并入集群。 分片机制提供更好的分布性:同一个索引分成多个分片(sharding), 这点类似于HDFS的块机制;分而治之的方式可提升处理效率。 高可用:提供复制( replica) 机制,一个分片可以设置多个复制,使得某台服务器在宕机的情况下,集群仍旧可以照常运行,并会把服务器宕机丢失的数据信息复制恢复到其他可用节点上。

  ES应用场景:大型分布式日志分析系统ELK elasticsearch(存储日志)+logstash(收集日志)+kibana(展示数据) 大型电商商品搜索系统、网站站内搜索、网盘搜索引擎等。

  ES存储结构:Elasticsearch是文件存储,Elasticsearch是面向文档型数据库,一条数据在这里就是一个文档,用JSON作为文档序列化的格式,比如下面这条用户数据:

  {

    "name" : "yushengjun",

    "sex" : 0,

     "age" : 25

  }

  ES与关系型数据库的比较:

  关系数据库     ⇒ 数据库 (会员数据库)⇒ 表 (用户表) ⇒ 行                      ⇒ 列(Columns)

   Elasticsearch ⇒ 索引(Index)                   ⇒ 类型(type) ⇒ 文档(Docments) ⇒ 字段(Fields)

二、ES环境搭建

  都是在Linux上操作

  1、Linux系统上必须安装JDK8.0以上版本(ES是Java语言写的,需要JDK支持)

  2、解压ES到一个目录,一般放在usr下

    解压后目录:

  3、修改配置文件,进入config文件夹

    (1)、jvm.options文件,里面就有修改内存的(默认内存占用是1G,ES很吃内存的)

    (2)、elasticsearch.yml文件(集群、端口号、IP地址)都是在这里面修改的。

    先改这两个,进行试验,之后用到什么改什么

9300与9200区别:

  9300端口: ES节点之间通讯使用

  9200端口: ES节点 和 外部 通讯使用

  9300是TCP协议端口号,ES集群之间通讯端口号

  9200端口号,暴露ES RESTful接口端口号

三、启动ElasticSearch

  进入es的bin目录,./elasticsearch进行启动,但是会报错误,错误解决办法如下:

  第一个错误,不能用root账户进行启动:

  创建一个分组

    groupadd esmayikt

    useradd esyushengjun -g esmayikt -p 123456

    chown -R esyushengjun:esmayikt  elasticsearch-6.4.3

    su esyushengjun   ##切换用户

  第二个错误,修改文件的时候,进入root账户进行修改:

  第三个错误,需要在这个文件(limits.conf)中加上4行代码(在root账户进行修改)

  vi /etc/security/limits.conf

  * soft nofile 65536

  * hard nofile 131072

  * soft nproc 2048

  * hard nproc 4096

 

  最后重新启动服务器(shutdown -r now),并在es账户中重新启动es;

四、访问ElasticSearch

  1、关闭防火墙:systemctl stop firewalld.service

  2、在浏览器中输入在elasticsearch.yml中设置的IP地址,和9200端口号

ElasticSearch(一)概念介绍及环境搭建的更多相关文章

  1. Maven快速入门(一)Maven介绍及环境搭建

    做开发的程序员都知道,在系统开发需要各自各样的框架.工具.其中有一种工具不管你是初级程序员还是高级程序员都必须熟练掌握的,那就是项目管理工具(maven.ant.gradle).接下来就总结Maven ...

  2. Python介绍及环境搭建

    摘自http://www.cnblogs.com/sanzangTst/p/7278337.html Python零基础学习系列之二--Python介绍及环境搭建   1-1.Python简介: Py ...

  3. Django 01 django基本介绍及环境搭建

    Django 01 django基本介绍及环境搭建 #http服务器 #用来接收用户请求,并将请求转发给web应用框架进行处理 #Web应用框架 #处理完请求后在发送给http服务器,http服务器在 ...

  4. [springboot 开发单体web shop] 1. 前言介绍和环境搭建

    前言介绍和环境搭建 简述 springboot 本身是为了做服务化用的,我们为什么要反其道使用它来开发一份单体web应用呢? 在我们现实的开发工作中,还有大量的业务系统使用的是单体应用,特别是对于中小 ...

  5. App自动化测试-1.App自动化介绍和环境搭建

    App自动化测试-1.App自动化介绍和环境搭建 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-b ...

  6. Maven介绍及环境搭建

    Maven介绍及环境搭建 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建.报告和文档的软件项目管理工具. 下载Maven boot:类加载器框架,Maven使用它加在自 ...

  7. Hibernate 介绍及其 环境搭建

    介绍 数据持久化概念 数据持久化是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称.例如:文件的存储.数据的读取等都是数据持久化操作.数据模型可以是任何数据结构或对象模型, ...

  8. 持续集成-jenkins介绍与环境搭建

    什么是持续集成? 转自:https://blog.csdn.net/tanshizhen119/article/details/80328523 持续集成,俗称CI, 大师Martin Fowler对 ...

  9. Hibernate 系列 02 - Hibernate介绍及其环境搭建

    引导目录: Hibernate 系列教程 目录 昨晚喝多了,下午刚清醒,继续搞Hibernate.走起. 觉得还行的话,记得点赞哈,给我这个渣渣点学习的动力.有错误的话也请指出,省的我在错误上走了不归 ...

随机推荐

  1. Flink1.10全文跟读翻译

    前言 突然的一个想法,我想把flink官网英语版全部看一遍翻译出来,并且带上自己的理解.自己不是什么大神,只是想这样做一遍,有人说不是有中文版,因为我自己想练习一下英语和对flink的理解吧!工作是一 ...

  2. 关于数据库客户端navicat创建新连接失败的问题

    如图是navicat创建新连接的截图: 我就有一个疑问了,主机填localhost或者127.0.0.1都是本机,自然是可以连接成功的,那如果填本机的IP地址会怎样呢? 如下图,出现了报错: 说我的访 ...

  3. python之单元测试及unittest框架的使用

    例题取用登录模块:代码如下 def login_check(username,password): ''' 登录校验的函数 :param username:账号 :param password: 密码 ...

  4. 造轮子-AgileConfig基于.NetCore的一个轻量级配置中心

    微服务确实是行业的一个趋势,我自己也在把一些项目往微服务架构迁移.玩微服务架构配置中心是一个绕不过去的东西,有很多大牌的可以选,比如spring-cloud-config,apoll,disconf等 ...

  5. abp + vue 模板新建页面

    新建页面 创建按对应的模块和实体 新建的模块需要进行注册

  6. 初探pandas——安装和了解pandas数据结构

    安装pandas 通过python pip安装pandas pip install pandas pandas数据结构 pandas常用数据结构包括:Series和DataFrame Series S ...

  7. 与跨域相关的 jsonp 劫持与 CORS 配置错误

    参考文章: CORS(跨域资源共享)错误配置漏洞的高级利用 JSONP劫持CORS跨源资源共享漏洞 JSONP绕过CSRF防护token 读取型CSRF-需要交互的内容劫持 跨域资源共享 CORS 详 ...

  8. Redis哨兵集群创建脚本--v1

    基础环境 操作系统版本  CentOS Linux release 7.6.1810 (Core) Docker 版本  19.03.11, build 42e35e61f3 Redis  版本  3 ...

  9. 2.Unity3d常用按键

    Unity3d常用按键和组合键: 1.鼠标左键:选中物体 2.鼠标中键:平移视角,和手型功能一样 3.鼠标右键:旋转观察角度 4.Alt+鼠标左键:旋转观察角度 5.Alt+鼠标右键:拉远拉近

  10. LintCode笔记 - 82.落单的数

    这一题相对简单,但是代码质量可能不是很好,我分享一下我的做题笔记以及做题过程给各位欣赏,有什么不足望各位大佬指出来 原题目,各位小伙伴也可以试着做一下 . 落单的数 中文English 给出 * n ...