1.什么是搜索?

  百度:我们想要查找想要的一些信息比如在百度搜索一本书,一部电影这就是最常见的搜索 但是百度!=搜索

  垂直搜索(站内搜索)

    互联网的搜索:电商网站,新闻网站,招聘网站,等等

    IT系统的搜索:OA软件,办公系统软件,后台管理系统等的搜索

  总结:搜索就是在任何场景下通过你输入的一些关键字查找到你想要的一些有用的信息

2.如果用数据库做索引会怎么样?

  数据是存储在数据库里的,那么一些网站的搜索比如招聘网站的职位信息的搜索,新闻网站的新闻搜索, 通常来说,从技术的角度来讲我们会很自然想到从数据库表中指定字段中查找出要搜索的内容,想要实现就需要进行全表扫描而且对于每条数据记录的指定文本进行扫描判断是否包含要搜索的关键字这样性能会很低

  要查找的关键字在数据库记录文本中还不能将搜索关键字拆分开来,一旦拆分开来就不能查找到期望的结果

3.什么是全文检索和Lucene?

  全文检索:对数据库中文本信息进行分词处理并且创建一张索引表这样通过关键字查询先从这张分词索引表查找到要查找的词然后根据词对应的数据记录地址在数据库中找到对应的记录

  倒排索引,也常被称为反向索引被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。通过倒排索引,可以根据单词快速获取包含这个单词的文档列表。

  Lucene是一个开放源代码的全文检索引擎工具包,即它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。

4.什么是ElasticSearch?

  ElasticSearch就是对分布式,全文检索Lucene,数据分析引擎的一个封装,是分布式,高可用,高扩展,高性能的搜索和分析系统

  自动维护数据分布到多个节点的索引的建立,分配多个请求到多个节点的执行

  自动维护数据的冗余副本保证一台机器宕机,不会丢失任何的数据

  封装了更多的高级功能,提供更多的高级支持能够让我们开发更加复杂应用,复杂的搜索功能,聚合分析的功能,基于地理位置的搜索

5.ElasticSearch的功能

  分布式的搜索引擎和数据分析引擎

  全文检索,结构化检索,数据分析

  对海量数据进行近实时的处理

6.ElasticSearch适用场景

  维基百科:全文检索,高亮,搜索推荐

  Stack overflow 

  GitHub

  电商网站:检索商品

  日志数据分析

  商品价格监控网站

  BI系统

  电商,招聘,门户站内搜索

  IT系统搜索(OA,CRM ERP等)

  数据分析

01-什么是ElasticSearch的更多相关文章

  1. ElasticSearch做实时OLAP框架~实时搜索、统计和OLAP需求,甚至可以作为NOSQL来使用(转)

    使用ElasticSearch作为大数据平台的实时OLAP框架 – lxw的大数据田地 http://lxw1234.com/archives/2015/12/588.htm 一直想找一个用于大数据平 ...

  2. ELK+Redis 解析Nginx日志

    一.ELK简介 Elk是指logstash,elasticsearch,kibana三件套,我们一般使用它们做日志分析. ELK工作原理图: 简单来讲ELK具体的工作流程就是客户端的logstash ...

  3. ES 01 - Elasticsearch入门 + 基础概念学习

    目录 1 Elasticsearch概述 1.1 Elasticsearch是什么 1.2 Elasticsearch的优点 1.3 Elasticsearch的相关产品 1.4 Elasticsea ...

  4. ElasticSearch学习笔记-01 简介、安装、配置与核心概念

    一.简介 ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便.支持通过HTTP使用JSON进 ...

  5. springBoot系列教程01:elasticsearch的集成及使用

    1.首先安装elasticsearch 集群环境,参考 http://www.cnblogs.com/xiaochangwei/p/8033773.html 注意:由于我的代码采用的是springbo ...

  6. 【原】无脑操作:ElasticSearch学习笔记(01)

    开篇来自于经典的“保安的哲学三问”(你是谁,在哪儿,要干嘛) 问题一.ElasticSearch是什么?有什么用处? 答:截至2018年12月28日,从ElasticSearch官网(https:// ...

  7. GlusterFS + lagstash + elasticsearch + kibana 3 + redis日志收集存储系统部署 01

    因公司数据安全和分析的需要,故调研了一下 GlusterFS + lagstash + elasticsearch + kibana 3 + redis 整合在一起的日志管理应用: 安装,配置过程,使 ...

  8. 01.Elasticsearch安装

    1.下载运行Elasticsearch 1.下载解压elasticsearch Elasticsearch官网地址:https://www.elastic.co/ Elasticsearch最新版下载 ...

  9. 第01章 ElasticSearch简介

    本章内容 Apache Lucene是什么. Lucene的整体架构. 文本分析过程是如何实现的. Apache Lucene的查询语言及其使用方法. ElasticSearch的基本概念. ELas ...

  10. 01 elasticsearch 概念理解

    最近在看一套 es 的教学视频,以下笔记主要来自视频资源 Near Realtime(NRT):近实时,先说实时就是数据创建到查询时间在毫秒级或更少: 和实时不一样的是近实时数据在创建到查询最多需要n ...

随机推荐

  1. PyMySQL创建

    title: PyMySQL创建 author: 杨晓东 permalink: PyMySQL创建 date: 2021-10-02 11:27:04 categories: - 投篮 tags: - ...

  2. unittest框架数据驱动

    一.目录 数据驱动概述 环境准备 使用unittest和ddt驱动 使用数据文件驱动 使用Excel驱动 使用XML驱动 使用MySQL驱动 二.数据驱动概述 数据驱动的定义: 相同的测试脚本使用不同 ...

  3. 集群笔记-fence

    fence机制: 隔离主机到存储的连接 配置fence_xvm步骤 KVM fence 请问物理机器需要真实的fence 设备吗? 否 一.将物理机器(宿主机)f0配置成fence设备 1. 安装fe ...

  4. 如何利用python的xlrd模块读取日期格式的Excel

    经常使用python操作Excel,就会遇到各种坑,比如,有时候你读取到的某一单元格的数据,你预想的结果本来应该是这样的,但是它却是这样的,真是很蛋疼.于是你会找各种解决办法,去解决这个问题!所以鄙人 ...

  5. nodejs+koa 后台框架结构、demo学习地址

    框架结构例子 https://github.com/bayi-lzp/koa-template 官网例子(有很多 示例) https://github.com/koajs/examples <K ...

  6. 老生常谈:String s1 = new String("abc") 创建了几个字符串对象及8 种基本类型的包装类和常量池

    将创建 1 或 2 个字符串.如果池中已存在字符串常量"abc",则只会在堆空间创建一个字符串常量"abc".如果池中没有字符串常量"abc" ...

  7. 在控制台中输入msqyl一直报ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost'错误

    错误: 在绿色Mysql的bin文件下打开cmd,输入mysql,一直报ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' ...

  8. pandas的数据结构--Series创建使用

    # 1. 使用Series创建一个空的系列:import pandas as pds=pd.Series()print(s)输出结果为:Series([], dtype: float64) # 2. ...

  9. linux 中的errno 和 strerror(errno)

    1. errno.h 中包含 errno 这个错误保存值 string.h 包含 strerror() 函数 ,它的原型 是 char *strerror(int errnum); 输入值应该是err ...

  10. Android---mediaplayer 创建和调用顺序

    Android mediaframework创建mediaplayer // java层 ///frameworks/base/media/java/android/media/MediaPlayer ...