倒排索引
发表于|更新于
|浏览量:
倒排索引(英语:Inverted index),也常被称为反向索引、置入档案或反向档案,是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。有两种不同的反向索引形式:
- 一条记录的水平反向索引(或者反向档案索引)包含每个引用单词的文档的列表。
- 一个单词的水平反向索引(或者完全反向索引)又包含每个单词在一个文档中的位置。
文章作者: 烦恼多一点
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 非鱼小站!
相关推荐

2022-06-28
MySQL规范
基础规范 表存储引擎必须使用InnoDB 表字符集默认使用utf8,必要时使用·utf8bm4 通用无乱码分险,汉字3字节,英文1字节 utf8mb4是utf8的超集,有存储4字节例如表情符号时,使用它 禁止使用存储过程,视图,触发器,Event 对数据库性能影响较大,互联网业务,能让站点层和服务层干的事情,不要交到数据库层 调试,排错,迁移都比较困难,扩展性较差 禁止在数据库中存储发文件,例如图片,可以将大文件存储在对象存储系统,数据库中存储路径 禁止在线上环境做数据库压力测试 测试,开发,线上数据库环境必须隔离 命名规范 库名,表名,列名必须使用小写,采用下划线分隔 abc,Abc,ABC都是给自己埋坑 库名,表名,列名必须见名知意,长度不要超过32字符 tmp,wushan谁TM知道这些库是干嘛的 库备份必须以bak为前缀,以日期为后缀 从库必须以-s为后缀 备库必须以-ss为后缀 表设计规范 单实例表个数必须控制在 2000 个以内 单表分表个数必须控制在 1024 个以内 表必须有主键,推荐使用 UNSIGNED整数为主键 删除无主键的表,...

2022-07-13
聊聊 MongoDB 使用场景
高伸缩性的场景MongoDB 非常适合高伸缩性的场景,它是可扩展性的表结构。基于这点,可以将预期范围内,表结构可能会不断扩展的 MySQL 表结构,通过 MongoDB 来存储,这就可以保证表结构的扩展性。 日志系统的场景日志系统数据量特别大,如果用 MongoDB 数据库存储这些数据,利用分片集群支持海量数据,同时使用聚集分析和 MapReduce 的能力,是个很好的选择。 分布式文件存储MongoDB 还适合存储大尺寸的数据,之前介绍的 GridFS 存储方案,就是基于 MongoDB 的分布式文件存储系统。

2022-07-07
数据库索引的原理
数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用 BTree 及其变种 B+Tree。

2022-07-28
自己如何实现消息队列
大体上的设计是由一条线程 1 执行从等待列表中获取任务插入任务队列再由线程池中的线程从任务队列中取出任务去执行. 添加一条线程 1 主要是防止在执行耗时的任务时阻塞主线程.当执行耗时任务时,添加的任务的操作快于取出任务的操作, 当任务队列长度达到最大值时,线程 1 将被阻塞,等待线程 2,3… 从任务队列取出任务执行。

2022-07-12
ObjectId 规则
时间戳 机器码 PID 计数器 0,1,2,3 4,5,6 7,8 9,10,11 前四位是时间戳,可以提供秒级别的唯一性。 接下来三位是所在主机的唯一标识符,通常是机器主机名的散列值。 接下来两位是产生 ObjectId 的 PID,确保同一台机器上并发产生的 ObjectId 是唯一的。 前九位保证了同一秒钟不同机器的不同进程产生的 ObjectId 时唯一的。 最后三位是自增计数器,确保相同进程同一秒钟产生的 ObjectId 是唯一的。

2022-07-06
存储引擎的 InnoDB 与 MyiSAM
InnoDB 不支持 FULLTEXT 类型的索引。 InnoDB 中不保存表的具体行数,也就是说,执行 select count() from table 时,InnoDB 要扫描一遍整个表来计算有多少行,但是 MyISAM 只要简单的读出保存好的行数即可。注意的是,当 count() 语句包含 where 条件时,两种表的操作是一样的。 对于 AUTO_INCREMENT 类型的字段,InnoDB 中必须包含只有该字段的索引,但是在 MyISAM 表中,可以和其他字段一起建立联合索引。 DELETE FROM table 时,InnoDB 不会重新建立表,而是一行一行的删除。 LOAD TABLE FROM MASTER 操作对 InnoDB 是不起作用的,解决方法是首先把 InnoDB 表改成 MyISAM 表,导入数据后再改成 InnoDB 表,但是对于使用的额外的 InnoDB 特性(例如外键)的表不适用。 另外,InnoDB 表的行锁也不是绝对的,假如在执行一个 SQL 语句时 MySQL 不能确定要扫描的范围,InnoDB 表同样会锁全表,例如 update t...
评论
WalineDisqus
公告
This is my Blog






