Elasticsearch中的数值类型索引

前言 最近杂七杂八的事情比较多,好久没更新文章了🤦‍♀️,今天就好好来理一理之前没搞清楚的关于ES数值索引的问题。ES主要是用于解决文本检索的场景,ES会默认将所有的输入内容当作字符串来理解,对于字段类型是keyword或者text的数据比较友好。但是如果输入的类型是数字,ES还会把数字当作字符串吗?排序问题还...

阅读更多

谈谈TCP中的TIME_WAIT

TCP 四次挥手过程和状态变迁 TCP三次握手和四次挥手详解 TCP 断开连接是通过四次挥手方式。双方都可以主动断开连接,断开连接后主机中的「资源」将被释放。 客户端打算关闭连接,此时会发送一个 TCP 首部 FIN 标志位被置为 1 的报文,也即 FIN 报文,之后客户端进入 FIN_W...

阅读更多

背包问题整理

背包定义 那么什么样的问题可以被称作为背包问题?换言之,我们拿到题目如何透过题目的不同包装形式看到里面背包问题的不变内核呢? 我对背包问题定义的理解:给定一个背包容量target,再给定一个数组nums(物品),能否按一定方式选取nums中的元素得到target。 注意: 背包容量target和物品...

阅读更多

Nacos原理

服务注册与发现 服务注册 服务注册,这个是个动作,那么注册到哪里了呢,那就需要在注册中心有个容器来存储注册上来的服务。这个容器可能是map,数组,持久化的mysql,mongodb。有了容器存储之后那我们就想那注册上来的是啥呢?也就是存在容器中的内容是什么呢?其实放在容器中的主要信息就是微服务各个节点所在的i...

阅读更多

ES读写数据的过程

基础知识 分片和分段 “分片”是Lucene的一个索引。 它本身就是一个功能齐全的搜索引擎。每个分片包含多个“分段”,其中分段是倒排索引。 分段内的doc数量上限是2的31次方。默认每秒都会生成一个segment文件。 在分片中搜索将依次搜索每个片段,然后将其结果合并到该分片的最终结果中。分段是不可变的。...

阅读更多

ES倒排索引原理

Elasticsearch 是一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎. 当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作: 分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。 实时分析的...

阅读更多

MySQL 事务

春招实习的整理了一大堆笔记,现在记忆又有些模糊了,刚好趁着秋招重新梳理一遍MySQL事务相关的知识,逐渐恢复高产吧👾。 事务相关的一些基础概念 事务是指满足 ACID 特性的一组操作,可以通过 Commit 提交一个事务,也可以使用 Rollback 进行回滚。 ACID A是原子性,表示事务是不可分割的...

阅读更多

Kafka 是如何实现高吞吐率的

Kafka是分布式消息系统,需要处理海量的消息,Kafka的设计是把所有的消息都写入速度低容量大的硬盘,以此来换取更强的存储能力,但实际上,使用硬盘并没有带来过多的性能损失。kafka主要使用了以下几个方式实现了超高的吞吐率: 顺序读写 Kafka数据不是实时写入硬盘,采用内存映射文件(分页存储)来利用...

阅读更多