ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
我们建立一个网站或应用程序,并要添加搜索功能,令我们受打击的是:搜索工作是很难的。我们希望我们的搜索解决方案要快,我们希望有一个零配置和一个完全免费的搜索模式,我们希望能够简单地使用JSON通过HTTP的索引数据,我们希望我们的搜索服务器始终可用,我们希望能够一台开始并扩展到数百,我们要实时搜索,我们要简单的多租户,我们希望建立一个云的解决方案。Elasticsearch旨在解决所有这些问题和更多的问题。
ElasticSearch安装

以windows操作系统和ES0.19.7版本为例:
①下载elasticsearch-0.19.7.zip
②直接解压至某目录,设置该目录为ES_HOME环境变量
③安装JDK,并设置JAVA_HOME环境变量
④在windows下,运行 %ES_HOME%\bin\elasticsearch.bat即可运行

ElasticSearch核心慨念
cluster

代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的。es的一个概念就是去中心化,字面上理解就是无中心节点,这是对于集群外部来说的,因为从外部来看es集群,在逻辑上是个整体,你与任何一个节点的通信和与整个es集群通信是等价的。
shards
代表索引分片,es可以把一个完整的索引分成多个分片,这样的好处是可以把一个大的索引拆分成多个,分布到不同的节点上。构成分布式搜索。分片的数量只能在索引创建前指定,并且索引创建后不能更改。
replicas
代表索引副本,es可以设置多个索引的副本,副本的作用一是提高系统的容错性,当某个节点某个分片损坏或丢失时可以从副本中恢复。二是提高es的查询效率,es会自动对搜索请求进行负载均衡。
recovery
代表数据恢复或叫数据重新分布,es在有节点加入或退出时会根据机器的负载对索引分片进行重新分配,挂掉的节点重新启动时也会进行数据恢复。
river
代表es的一个数据源,也是其它存储方式(如:数据库)同步数据到es的一个方法。它是以插件方式存在的一个es服务,通过读取river中的数据并把它索引到es中,官方的river有couchDB的,RabbitMQ的,Twitter的,Wikipedia的。
gateway
代表es索引快照的存储方式,es默认是先把索引存放到内存中,当内存满了时再持久化到本地硬盘。gateway对索引快照进行存储,当这个es集群关闭再重新启动时就会从gateway中读取索引备份数据。es支持多种类型的gateway,有本地文件系统(默认),分布式文件系统,Hadoop的HDFS和amazon的s3云存储服务。
discovery.zen
代表es的自动发现节点机制,es是一个基于p2p的系统,它先通过广播寻找存在的节点,再通过多播协议来进行节点之间的通信,同时也支持点对点的交互。
Transport
代表es内部节点或集群与客户端的交互方式,默认内部是使用tcp协议进行交互,同时它支持http协议(json格式)、thrift、servlet、memcached、zeroMQ等的传输协议(通过插件方式集成)。

。。。。。。。。。。

数据检索---ElasticSerach相关推荐

  1. 数据库复习总结(12)数据检索

    (1)执行备注中的代码创建测试数据表. (2)简单的数据检索 :SELECT * FROM Student 注:*代表查询所有的列的值,尽量不要用*,因为效率不如直接把所有列写出来效率快. (3)只检 ...

  2. easyui datagrid 多表头数据错位_表格数据检索(二)

    企业级中后台产品通常大量使用表格来展示结构化的数据,对表格数据进行检索,是一个常用功能.在日常设计工作中,我们经常不加思考便产出一个个带有表格数据检索功能的页面.然而,体验良好的表格数据检索功能,需要 ...

  3. Java与ElasticSerach的整合

    通过es的mapping数据结构 定义数据库中的表的结构的定义,通过mapping来控制索引存储数据的设置 定义Index下的字段名(Field Name) 定义字段的类型,比如数值型.字符串型.布尔 ...

  4. 2022还在使用Mysql进行数据检索?ElasticSearch自定义扩展词库完成检索

    文章目录 1.为什么要自定义扩展ES词库呢? 2.如何自定义扩展词库呢? 3.Docker安装Nginx 4.在nginx中保存一个简易词库 5.修改IK分词器的配置文件,让其指向nginx保存的词库 ...

  5. MySQL数据检索+查询+全文本搜索

    [0]README 0.1)本文部分文字描述转自"MySQL 必知必会",旨在review"MySQL数据检索+查询+全文本搜索" 的基础知识: [1]使用子查 ...

  6. 数据分析师mysql基础_数据分析师之mysql入门——数据检索

    免责申明:写这篇文章的初衷只是为了让我自己更好地掌握相关的知识.所以不保证对错.欢迎批评指教. mysql主要用select进行数据的检索,可以检索出一列,多列,一个表.如: select colum ...

  7. 元数据驱动设计 —— 设计一套用于API数据检索的灵活引擎

    如果你曾在企业开发方面具有一些经验,那么基本上可以断言,你必定承担过一些类似于搬运工的职责,将数据从你的数据库中不断地搬进搬出.此外,如果你在这方面有过过往的经验,那么你肯定也曾经做过将大量对共享文件 ...

  8. 手把手教你建立私人数据检索库(二)

    声明:本文介绍的安全工具仅用于渗透测试及安全教学使用,禁止任何非法用途 0x00 序言 咳咳,这里是青空酱.本次为大家带来<手把手教你建立私人数据检索库>系列第二讲之数据的清洗导入与配置. ...

  9. Transact-SQL基础语言(数据检索)

    SQL 语言简介 SQL (Structure Query Language) 语言是一种在关系型数据库中定义.查询.操纵和控制数据的标准语句. 大多数据库厂商都在SQL-92标准的基础上对SQL又进 ...

最新文章

  1. python语法基础题输出倒三角图案,【趣味shellamp;amp;python】倒三角控制台输出图形...
  2. 只能是数字、字母、-和_
  3. Linux configure 参数解释,程序的这装,卸载
  4. 多线程中使用Java集合类
  5. mysql数据表添加数值_MySQL中数据表和数据的操作
  6. 6月6号=》80页-100页
  7. 房间计费系统改造E-R图纸设计
  8. 06 SQL执行计划
  9. Java连接数据库导致连接数占满
  10. 高通msm8937的BLSP学习
  11. 阿里研究员吴翰清:世界需要什么样的智能系统?
  12. 滴答清单微信登录界面丢失
  13. 奥克兰大学计算机科学与技术,奥克兰大学计算机科学专业怎么样?成为IT达人就靠它...
  14. 实战演习(二)——网站点击流数据分析
  15. 自己总结的常见命令(用过的)
  16. PDF文件中的图片如何删除?分享两种删除方法
  17. GNSS CORS站观测值数据FTP下载
  18. java 判断zip文件编码_如何使用UTF-8编码打开java程序生成的zip文件
  19. [第11课]统计:集中趋势
  20. 高新的技术对不对_高新技术六大技术领域

热门文章

  1. restful规范对应的controller层注解,testng测试
  2. HTML简约导航源码
  3. 跨境电商案例分析:他投资3万美元卖爆款手表,年入2.28亿!
  4. Proxy用法——让我们创建一个API代理器
  5. 为什么Vidyo 的编解码是颠覆性的创新。它的特点是什么?
  6. 2020年 ICLR 国际会议最终接受论文(poster-paper)列表(四)
  7. 什么是交换机,交换机的工作原理
  8. yolov5中ap_per_class函数
  9. 经典力学、相对论、量子力学
  10. 19英寸 6U 机架的U 等行业术语