Elasticsearch和MongoDB对比

发布时间:2023-01-10 09:30

关于 Elasticsearch

官网:https://www.elastic.co/cn/elasticsearch/

Elasticsearch和MongoDB对比_第1张图片

Elastic is the leading platform for search-powered solutions. We accelerate results that matter.
Elastic是搜索解决方案的领先平台。我们加速了重要的结果。

ElasticSearch(简称ES)是一个开源的高扩展的分布式全文检索引擎;它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器;可以处理PB级别的数据。 是当前流行的企业级搜索引擎。

Elaticsearch,简称为es, es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。es也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。

官方说明 :

Elasticsearch 是什么?

简单来说,我们的目标是 帮助每个人更快地找到所需内容,从需要通过内网获取文档的员工,到在网上购物寻找适合自己鞋子的客户。 但从更技术的角度来说,大致描述如下:

Elasticsearch 在 Apache Lucene 的基础上开发而成,由 Elasticsearch N.V.(即现在的 Elastic)于 2010 年首次发布。Elasticsearch 以其简单的 REST 风格 API、分布式特性、速度和可扩展性而闻名,是 Elastic Stack 的核心组件; Elastic Stack 是一套适用于数据采集、扩充、存储、分析和可视化的免费开源工具。人们通常将 Elastic Stack 称为 ELK Stack(代指 Elasticsearch、Logstash 和 Kibana),目前 Elastic Stack 包括一系列丰富的轻量型数据采集代理,这些代理统称为 Beats,可用来向 Elasticsearch 发送数据。

Elasticsearch应用场景

Elasticsearch 的应用场景

参考URL: https://www.bilibili.com/video/BV1bS4y1K7Ru

Elasticsearch和MongoDB对比_第2张图片

关于 MongoDB

官网:https://www.mongodb.com/

MongoDB中文社区:https://mongoing.com/

MongoDB最大的特点是表结构灵活可变,字段类型可以随时修改。MongoDB中的每一行数据只是简单的被转化成Json格式后存储,因此MongoDB中压根没有MySQL中表结构这样的概念,你可以直接简单粗暴的将任意结构的数据塞入同一个表中,压根不必考虑表结构的限制,更不必像MySQL一样因为要修改数据表结构而大费周折。

MongoDB不需要定义表结构这个特点给表结构的修改带来了极大的方便,但是也给多表查询、复杂事务等高级操作带来了阻碍。因此,如果你的数据的逻辑结构非常复杂,经常需要进行复杂的多表查询或者事务操作,那显然还是MySQL这类关系型数据库更合适。

MongoDB很适合那些表结构经常改变,数据的逻辑结构没又没那么复杂不需要多表查询操作,数据量又比较大的应用场景。

MongoDB优点

  • 速度:MongoDB比一般的关系型数据库快很多,作为面向文档的NoSQL数据库,MongoDB可以通过索引使访问文档变得很容易而且快速
  • 分片:MongoDB另外一个优势是允许用户存储大量的数据,其通过分片的方式将数据分发到多个服务器上。
  • 灵活性:因为MongoDB是非结构化的数据库系统,而且多种数据类型,所以不需要像关系型数据那样,进行特别的表结构设计,存储数据更加灵活
  • 分布式:MongoDB数据库默认支持分布式,内带分布式的解决方案

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号