关键词:索引、倒排索引(反向索引)
(1)为什么要用索引
索引的建立,能使查找更加快速
(2)索引的数据结构
数组: 方便查找,但是数据更新太慢
链表: 方便更新,但是查找太慢(从头到尾,或者从尾到头)
红黑树、二叉树: 快速查找,快速更新
(3)数据库中对于不同数据类型,怎么排序的:
数值型(int,long等): 按照数值的大小排序
时间型:
是按照时间的大小排序??????
当然不是,在数据库中,会将时间,转化成时间戳Long类型,所以,最终时间也是按数值进行排序的。
文本型(varchar、text等):
那么文本型又是怎么排序的?????
显然,肯定是数值型,为什么会是数值型????
因为计算机不认识字啊
每个文字在计算机中都对饮一个数字,就根据这些数字来排序
(4)一般的索引建立:
根据某列的值,来进行建立。
列值====》列的地址
(5)倒排索引:
什么是倒排索引???
原名inverted index,本该翻译成:反向索引
两种表现形式:
-
inverted file index,其表现形式为 {单词,单词所在文档的ID}
-
full inverted index,其表现形式为{单词,(单词所在文档的ID,在具体文档中的位置)}