首页 > 其他分享 >Elasticsearch介绍

Elasticsearch介绍

时间:2023-05-07 14:33:58浏览次数:44  
标签:检索 数据库 介绍 全文检索 Elasticsearch 数据量 解决

.
.
参考老刘博客
https://www.cnblogs.com/liuqingzheng/p/16002298.html
.
.

产生背景


# 1.1 大规模数据如何检索
如:当系统数据量上了10亿、100亿条的时候,我们在做系统架构的时候通常会从以下角度去考虑问题:
1)用什么数据库好?(mysql、oracle、mongodb、hbase…)
2)如何解决单点故障;(lvs、F5、A10、Zookeeper、MQ)
3)如何保证数据安全性;(热备、冷备、异地多活)
4)如何解决检索难题;(数据库代理中间件:mysql-proxy、Cobar、MaxScale等;)
5)如何解决统计分析问题;(离线、近实时)

# 1.2 传统数据库的应对解决方案
对于关系型数据,我们通常采用以下或类似架构去解决查询瓶颈和写入瓶颈:
解决要点:
1)通过主从备份解决数据安全性问题;
2)通过数据库代理中间件心跳监测,解决单点故障问题;
3)通过代理中间件将查询语句分发到各个slave节点进行查询,并汇总结果

# 1.3 非关系型数据库解决方案
对于Nosql数据库,以mongodb为例,其它原理类似:
解决要点:
1)通过副本备份保证数据安全性;
2)通过节点竞选机制解决单点问题;
3)先从配置库检索分片信息,然后将请求分发到各个节点,最后由路由节点合并汇总结果

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

# 一句话,用这些方法,做很麻烦,而且检索的速度也不快

# 所以有了Elasticsearch

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

.
.
.
.

Elasticsearch介绍 ES


# 使用场景:
    要存储的数据量很大,又要求检索的速度很快,就用它!!

-----------------------------------------
# 专注于大数据量的存储和检索(主要是大数据量的检索)

# Elasticsearch 分布式全文检索引擎
Elasticsearch 是一个开源的高扩展的,
基于Lucene的分布式的,全文搜索和分析引擎。

它可以近乎实时的存储、检索数据;
本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。

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

Elasticsearch使用Java开发,在Apache许可条款下开放源码发布,
设计用于云计算中,能够达到实时搜索,
稳定,可靠,快速,安装使用方便

使用Lucene作为其核心来实现所有索引和搜索的功能,
但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,
使得全文检索变得简单

# 设计用途:
  用于分布式全文检索,通过HTTP使用JSON进行数据索引,速度快


标签:检索,数据库,介绍,全文检索,Elasticsearch,数据量,解决
From: https://www.cnblogs.com/tengyifan888/p/17379287.html

相关文章

  • 最新fl studio 21.0.3.351中文版功能介绍/下载安装/语言切换/激活解锁教程
    最新水果软件flstudio21.0.3.3517中文版是一款免费的音乐编曲制作软件,有了它你可以制作出色的音乐。它为您提供了一个集成的开发环境,使用起来非常简单有效,您的工作会变得更有条理。同时FLStudio为用户提供了更先进和原创的音乐制作理念,用户可以轻松地混合、编排和创作多种歌曲。......
  • Django笔记三十六之单元测试汇总介绍
    本文首发于公众号:Hunter后端原文链接:Django笔记三十六之单元测试汇总介绍Django的单元测试使用了Python的标准库:unittest。在我们创建的每一个application下面都有一个tests.py文件,我们通过继承django.test.TestCase编写我们的单元测试。本篇笔记会包括单元测试的......
  • Rabbitmq介绍,安装,基于queue实现消费者生产者,基本使用,消息安全,持久化,闲置消费,发布订阅,
    内容详细Rabbmit介绍消息队列中间件概念很大,准确一些叫消息队列中间件消息队列中间件使用redis当作消息队列来用,blpop阻塞式弹出,实现队列,先进先出MQ,消息队列,MessageQueue是什么?消息队列就是基础数据结构中先进先出(队列)的一种数据机制,类比于生活中,买东西,需要排队,先排队的人......
  • RUL预测常用数据集--C-MAPSS Dataset介绍
    C-MAPSS是针对航空发动机剩余寿命预测的数据集。该数据集由NASA(美国国家航空航天局)发布,包含了四个不同类型的航空发动机的传感器数据,以及相应的故障模式和剩余寿命数据,如表1所示。表1InformationoftheC-MAPSSdataset.DatasetFD001FD002FD003FD004Engineunit......
  • linux 下安装和使用Elasticsearch8+php的操作
    首先安装Elasticsearch8版本不需要jdk环境,就是JVAV的环境,他本身的压缩文件里就包含了固定的jdk去官网1、下载Elasticsearch的官方地址:https://www.elastic.co/cn/下载地址:https://www.elastic.co/cn/downloads/past-releases#elasticsearch我这里下载的是elasticsearch-8.......
  • python操作elasticsearch 记录
    一、环境Elasticsearch5.x, python3.6, 注意Elasticsearch不同版本的区别,比如以下几条:_id 字段变为 id 字段:在Elasticsearch5中,文档的唯一标识符使用 _id 字段。而在Elasticsearch6和7中,唯一标识符改为使用 id 字段。在Elasticsearch7中,_id字段被重新引......
  • Python函数介绍:getattr()、setattr()、hasattr()
    在Python中我们通常对类的操作中,常常会判定某个属性是否是在这个类中,也会动态的为这个类更改\增添的某些属性和方法。这时我们会常常用到这个几个重要的Python内置函数,分别是getattr()、setattr()、hasattr()。1、getattr(obj,name[,default])obj表示指定的类实例对......
  • redis分布式锁、介绍、具体实现,调用、原理、使用场景
    一、作用redis分布式锁:可以分为两点:1.分布式2.加锁主要作用是,在多副本部署服务的情况下(或者高并发时),相同时间点内,对业务代码进行加锁,业务代码只能被一个线程执行用了分布式锁,相当于强制将多副本(或者单副本高并发时)并行改成串行执行,其他副本直接返回或者阻塞等待(排队执行)由于是......
  • 消息队列Rabbitmq介绍、rabbitmq安装、基于queue实现生产者消费者、基本使用、消息安
    目录1消息队列Rabbitmq介绍2rabbitmq安装3基于queue实现生产者消费者4基本使用4.1发送者4.2消费者5消息安全(详见笔记)6持久化(详见笔记)7闲置消费(详见笔记)8发布订阅(详见笔记)9发布订阅高级之Routing(按关键字匹配)(详见笔记)1消息队列Rabbitmq介绍#消息队列 -......
  • Google推荐的图片加载库Glide介绍
    Fresco以及我们今天的主角Glide。它们各有千秋,不能评定谁一定比谁好,只能说哪一个更适合你。我的理解下面我来谈一下个人对这些图片加载库的理解,如有错误,还望指教。UniversalImageLoader:一个强大的图片加载库,包含各种各样的配置,最老牌,使用也最广泛。Picasso:Square出品,必属精品......