Elasticsearch简单介绍

Elasticsearch (ES)是一个基于Lucene构建的开源、分布式、RESTful 接口全文搜索引擎。Elasticsearch 还是一个分布式文档数据库(存放的JSON格式的),其中每个字段均是被索引的数据且可被搜索(京东的搜索数据商品 细节 相关都可以被搜索到),它能够扩展至数以百计的服务器存储以及处理PB级的数据。它可以在很短的时间内在储、搜索和分析大量的数据。它通常作为具有复杂搜索场景情况下的核心发动机。

Elasticsearch就是为高可用和可扩展而生的。可以通过购置性能更强的服务器来完成。

官网:https://www.elastic.co/downloads/elasticsearch
中文社区https://es.xiaoleilu.com/
什么是PB级别https://baike.baidu.com/item/PetaByte/5910820
ElastiJob---XXL-JOB

补充 ElasticJob 类似于 xxl-job 分布式任务调度平台

Elasticsearch优势

横向可扩展性:只需要增加台服务器,做一点儿配置,启动一下Elasticsearch就可以并入集群。容易加入进集群

分片机制提供更好的分布性:同一个索引分成多个分片(sharding), 这点类似于HDFS的块机制;分而治之的方式可提升处理效率。

高可用:提供复制( replica) 机制,一个分片可以设置多个复制,使得某台服务器在宕机的情况下,集群仍旧可以照常运行,并会把服务器宕机丢失的数据信息复制恢复到其他可用节点上。
口使用简单:共需一条命令就可以下载文件,然后很快就能搭建一一个站内搜索引擎。

Elasticsearch应用场景

大型分布式日志分析系统ELK  elasticsearch(存储日志)+logstash(收集日志)+kibana(展示数据)

电商中某个模块需要做搜索,或者做分布式日志收集。

大型电商商品搜索系统、网站站内搜索、网盘搜索引擎等。

Elasticsearch使用公司
维基百科
The Guardian(国外新闻网站)
Stack Overflow(国外的程序异常讨论论坛)
GitHub(开源代码管理)
电商网站
日志数据分析
BI系统
站内搜索

Elasticsearch存储结构

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

{

"name" :     "toov5",

"sex" :      0,

"age" :      25

}

与关系型数据库的比较:

关系数据库:     ⇒ 数据库 ⇒ 表    ⇒ 行    ⇒ 列(Columns)

Elasticsearch:    ⇒ 索引(Index)   ⇒ 类型(type,类似于数据表结构)  ⇒ 文档(Docments,类似于这一条数据)  ⇒ 字段(Fields)

对于入门来说,要学习的有:

1、Elasticsearch应用场景
2、安装kibana可视化插件
3、Kibana平台增删改查
4、Elasticsearch乐观锁版本控制
5、Elasticsearch底层原理实现
6、Elasticsearch Mapping映射
7、深入Elasticsearch搜索查询
8、Elasticsearch索引分词器
9、使用分布式日志日志收集ELK

SpringBoot2.0整合ElasticSearch 很简单的!!

Elasticsearch6.0简介入门介绍的更多相关文章

  1. [.Net Core 3.0从入门到精通]1.笔记简介及.Net Core3.0介绍

    文章目的:.Net Core 3.0学习笔记整理与分享. 面向人群:有一定基础的C#开发人员或学习人员(C#语法一定要掌握). 笔者水平:中级C#开发攻城狮(水平有限,写的不对的地方希望大家指正). ...

  2. MySQL入门介绍(mysql-8.0.13)

    MySQL入门介绍(mysql-8.0.13单机部署) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MySQL数据库介绍 1>.MySQL是一种开放源代码的关系型数据库 ...

  3. Python入门介绍

    Python入门介绍(人生苦短,我用 Python) Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹 ...

  4. ECC加密算法入门介绍 --- 看雪

    标 题:ECC加密算法入门介绍 作 者:zmworm 时 间:2003/05/04 08:32pm 链 接:http://bbs.pediy.com ECC加密算法入门介绍 作者  :ZMWorm[C ...

  5. 【转】Zabbix 3.0 从入门到精通(zabbix使用详解)

    [转]Zabbix 3.0 从入门到精通(zabbix使用详解) 第1章 zabbix监控 1.1 为什么要监控 在需要的时刻,提前提醒我们服务器出问题了 当出问题之后,可以找到问题的根源   网站/ ...

  6. TensorFlow 2.0 快速入门指南 | iBooker·ApacheCN

    原文:TensorFlow 2.0 Quick Start Guide 协议:CC BY-NC-SA 4.0 自豪地采用谷歌翻译 不要担心自己的形象,只关心如何实现目标.--<原则>,生活 ...

  7. IOS 网络浅析-(十一 三方 AFNetworking3.0简介)

    AFNetworking3.0是目前最新的版本,本来打算介绍一下2.6,但是想想2.6名不久矣,就决定不介绍了,有兴趣的小伙伴可以上网查一查.下面我就开始进入正题了. 目前使用人数最多的第三方网络库, ...

  8. [Python爬虫] 在Windows下安装PhantomJS和CasperJS及入门介绍(上)

    最近在使用Python爬取网页内容时,总是遇到JS临时加载.动态获取网页信息的困难.例如爬取CSDN下载资源评论.搜狐图片中的“原图”等,此时尝试学习Phantomjs和CasperJS来解决这个问题 ...

  9. [Python爬虫] scrapy爬虫系列 <一>.安装及入门介绍

    前面介绍了很多Selenium基于自动测试的Python爬虫程序,主要利用它的xpath语句,通过分析网页DOM树结构进行爬取内容,同时可以结合Phantomjs模拟浏览器进行鼠标或键盘操作.但是,更 ...

随机推荐

  1. rest-framework框架的基本组件分析

    一.快速实例化 二.序列化 三.视图 四.身份认证,权限认证,频率限制 五.分页 六.响应器 七.路由 八.解释器

  2. 1、aritcMS-环境搭建-设置布局-布局测试

    在开始项目之前,准备开发工具等请参考easyUI章节. 首先.在获取broPHP框架的时候(可以在网上下载).在brophp文件夹同级目录下新建admin.php,以及index.php admin. ...

  3. Java Random 含参与不含参构造函数的区别

    ##Random 通常用来作为随机数生成器,它有两个构造方法: Random random = new Random(); Random random2 = new Random(50); 1.不含参 ...

  4. PNG透明兼容IE6的几种方法

    方法一:css方式,写一个属性hack,使用滤镜来解决png在ie6下不兼容的问题. _filter: progid:DXImageTransform.Microsoft.AlphaImageLoad ...

  5. eclipse java文件提示 The import XXX cannot be resolved

    问题:eclipse导入类   提示The import XXX cannot be resolved 原因:原来使用JDK和现在使用的JDK不同造成的buildpath不对 解決方法: 1.右键项目 ...

  6. POJ 3259 Wormholes【bellman_ford判断负环——基础入门题】

    链接: http://poj.org/problem?id=3259 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=22010#probl ...

  7. TFS二次开发-基线文件管理器(5)-源码文件的读取

      在上一节中,我们在保存标签之前,已经将勾选的文件路径保存到了Listbox中,这里只需要将保存的数据输出去为txt文档就可以做版本控制了.   版本文件比较复杂的是如何读取,也就是如何通过文件路径 ...

  8. C#反射 程序域

    1:加载dll到当前应用程序域: public static void LoadAllAssembly(string bindir) //bindir是dll所在的完整路径 { List<Ass ...

  9. git的安装-环境变量配置

    windows安装git和环境变量配置 2015.10.12 评论(0) 10,729 点此嗨一下 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git是一个开源 ...

  10. MyISAM VS InnoDB

     A.构成上的区别: InnoDB只在磁盘上存储一个文件.frm         每个MyISAM在磁盘上存储成三个文件.第一个文件的名字以表的名字开始,扩展名指出文件类型:            文 ...