2024-01-23(MongoDB&&ElasticSearch)

附上:MongoDB详解,用心看这篇就够了【重点】-CSDN博客

1.MongoDB中的副本集

是一组维护相同数据集得mongodb服务。副本集可以提供冗余和高可用性,是所有生产部署的基础。也可以说,副本集是类似于有自动故障恢复功能的主从集群。

主节点,从节点,仲裁节点。

2.MongoDB副本集中主节点的选举原则:

MongoDB在副本集中,会自动进行主节点的选举,主节点的选举的触发条件:

1)主节点故障

2)主节点网络不可达(默认心跳为10s)

3)人工干预

选举规则:

票数最高;如果票数相同,数据新的节点获胜(数据的新旧是根据操作日子oplog来对比的)

在选举过程中,优先级很重要,优先级越高,获得其他人的投票的几率就越大。

3.我定义好后端接口规范,前端为我传递我所需要的参数。

4.分片集群

分片集群是一种跨多台机器分布数据的方法,MongoDB使用分片来支持具有非常大的数据集和高吞吐量操作的部署。换句话说:分片是指将数据拆分,将其分散存在不同的机器上的过程。将数据分散到不同机器上,不需要功能强大的大型计算机就可以存储更多的数据,处理更多的负载。

5.MongoDB分片集群包含以下组件:

1)分片(存储):每个分片包含分片数据的子集。每个分片都可以部署为副本集。

2)mongos(路由):mongos充当查询路由器,在客户端应用程序和分片集群之间提供接口。

3)config servers("调度"的配置):配置服务器存储集群的元数据和配置设置。

6.MongoDB的安全认证:

默认情况下,MongoDB不会对连接客户端进行用户验证,这是十分危险的。为了保证mongodb的安全可以做以下几个步骤:

1)使用新的端口,默认27017端口如果一旦知道了ip就可以连接上,不安全。

2)设置mongodb的网络环境,最好将mongodb部署到公司服务器的内网中,这样外网是访问不到的,公司内部使用vpn等。

3)开启安全认证。认证要同时设置服务器之间的内部认证方式,同时要设置客户端连接到集群的账号密码认证方式。

7.什么是elasticsearch:

elasticsearch是一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能。

8.什么是elastic stack(ELK):

是以elasticsearch为核心的技术栈,包括beats(用来做数据收集)、logstash(用来做数据收集)、kihana(用来做数据展示)、elasticsearch(负责数据的搜索,存储等核心功能)。

9.什么是Lucece:

elasticsearch的底层就是基于Lucece来实现的。Lucece是Apache的开源搜索引擎类库,提供了搜索引擎的核心API

10.正向索引和倒序索引:

传统数据库(mysql)使用正向索引,

elasticsearch采用倒序索引:

文档:每条数据就是一个文档

词条:文档按照语义分成的词语

eg:

用elasticsearch搜索的流程案例:

11.elasticsearch的倒排索引的含义是:

传统是根据文档去找词条,但是es是根据词条去找文档。这就是倒排索引的含义。

12.总结:

文档:每一条数据就是一个文档。

词条:对文档中的内容分词,得到的词语就是词条

正向索引:基于文档id创建索引。查询词条时必须先找到文档,而后判断是否包含词条。

倒排索引:对文档内容分词,对词条创建索引,并记录词条所在文档的信息。查询时现根据词条查询文档id,而后获得文档。

相关推荐
GeekAGI4 分钟前
PyMongo 中 `ServerSelectionTimeoutError` 和 `NetworkTimeout` 异常的区别
mongodb
小云数据库服务专线21 分钟前
GaussDB数据库架构师修炼(十六) 如何选择磁盘
数据库·数据库架构·gaussdb
码出财富1 小时前
SQL语法大全指南
数据库·mysql·oracle
异世界贤狼转生码农3 小时前
MongoDB Windows 系统实战手册:从配置到数据处理入门
数据库·mongodb
QuZhengRong3 小时前
【数据库】Navicat 导入 Excel 数据乱码问题的解决方法
android·数据库·excel
码农阿豪3 小时前
Windows从零到一安装KingbaseES数据库及使用ksql工具连接全指南
数据库·windows
时序数据说9 小时前
时序数据库市场前景分析
大数据·数据库·物联网·开源·时序数据库
听雪楼主.12 小时前
Oracle Undo Tablespace 使用率暴涨案例分析
数据库·oracle·架构
我科绝伦(Huanhuan Zhou)12 小时前
KINGBASE集群日常维护管理命令总结
数据库·database
妖灵翎幺13 小时前
Java应届生求职八股(2)---Mysql篇
数据库·mysql