ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

-----------------------------------------------------------------------------------------------------------------------------------------------------

1.ElasticSearch 的功能

分布式,搜索,数据分析

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

全文检索:我想搜索商品名称包含牙膏的商品,select * from products where product_name like "%牙膏%"
结构化检索:我想搜索商品分类为日化用品的商品都有哪些,select * from products where category_id='日化用品'

数据分析:我们分析每一个商品分类下有多少个商品,select category_id,count(*) from products group by category_id

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

分布式:ES自动可以将海量数据分散到多台服务器上去存储和检索
海量数据的处理:分布式以后,就可以采用大量的服务器去存储和检索数据,自然而然就可以实现海量数据的处理了

近实时:检索个数据要花费1小时(这就不要近实时,离线批处理,batch-processing);在秒级别对数据进行搜索和分析

跟分布式/海量数据相反的:lucene,单机应用,只能在单台服务器上使用,最多只能处理单台服务器可以处理的数据量

--------------------------------------------------------------------------------------------------------------------------------------------------------------

2.ElasticSearch 的特点

(1)可以作为一个大型分布式集群(数百台服务器)技术,处理PB级数据,服务大公司;也可以运行在单机上服务小公司

(2)Elasticsearch不是什么新技术,主要是将全文检索、数据分析以及分布式技术,合并在了一起,才形成了独一无二的ES;

lucene(全文检索),商用的数据分析软件(也是有的),分布式数据库(mycat)

(3)对用户而言,是开箱即用的,非常简单,作为中小型的应用,直接3分钟部署一下ES,就可以作为生产环境的系统来使用了,数据量不大,操作不是太复杂

(4)数据库的功能面对很多领域是不够用的(事务,还有各种联机事务型的操作);特殊的功能,比如全文检索,同义词处理,相关度排名,复杂数据分析,海量数据的近实时处理;Elasticsearch作为传统数据库的一个

最新文章

  1. MyBatis笔记
  2. github无法访问?试试修改hosts
  3. 如何修改SharePoint列表条数等阈值
  4. Sqoop-1.4.6.bin__hadoop-2.0.4-alpha 环境搭建
  5. 黑马程序员——【Java基础】——Java概述
  6. LINQ Operators之过滤(Filtering)
  7. php qr生成二维码
  8. Codeforces Round #192 (Div. 1) A. Purification 贪心
  9. motan源码分析五:cluster相关
  10. zbrush曲面增加厚度
  11. 火狐浏览器打开html文件,中文乱码
  12. OJ题:将一个数倒置输出
  13. 基于html5 plus + Mui 移动App开发(一)
  14. [UnityAPI]SerializedObject类 & SerializedProperty类
  15. [NOI 2015]品酒大会
  16. PAT A1010 Radix (25 分)——进制转换,二分法
  17. JQ面试问题(转载)
  18. 3-51单片机ESP8266学习-AT指令(学会刷固件)
  19. JPA之@GeneratedValue注解(转)
  20. appium+python自动化42-微信公众号

热门文章

  1. JavaScript 之 DOM
  2. Spring 源码学习(1)—— 容器的基本实现
  3. java中有关初始化的问题
  4. 如何使用HackRF做一个简单的IMSI捕获器
  5. laravel 解决session保存不了,取不出的问题
  6. CMake 构建项目教程-简介
  7. OpenCV3 SVM ANN Adaboost KNN 随机森林等机器学习方法对OCR分类
  8. bash的工作特性(2)
  9. Linux上安装MangoDB
  10. design_patterns_in_typescript 学习