搜索引擎的设计(3):倒排表的设计下
9.VariableByte编码上述所有的编码方式有一个共同点,就是需要一位一位的进行处理,称为基于位的编码(bitwise)。这样一分钱一分钱的节省,的确符合咱们勤俭持家的传统美德,也能节约不少存储空间。然而在计算机中,数据的存储和计算的都是以字(Word)为单位进行的,一个字中包含的位数成为字长
搜索引擎的设计(2):倒排表的设计上
1.定长编码最容易想到的方式就是常用的普通二进制编码,每个数值占用的长度相同,都占用最大的数值所占用的位数,如图所示。这里有一个文档ID列表,254,507,756,1007,如果按照二进制定长编码,需要按照最大值1007所占用的位数10位进行编码,每个数字都占用10位。和词典的格式设计中顺序列表方
搜索引擎的设计(1):词典的设计
词典中所保存的信息主要是三部分:Term字符串Term的统计信息,比如文档频率(DocumentFrequency)倒排表的位置信息其中Term字符串如何保存是一个很大的问题,根据上一章基本原理的表述中,我们知道,写入文件的Term是按照字典顺序排好序的,那么如何将这些排好序的Term保存起来呢?1
什么决定了程序员的价格,程序员该如何溢价
什么决定了程序员的价格所谓的职业就是企业和员工之间的价值交换。企业付出薪水,福利来雇用员工,以期通过员工的劳动来实现企业的目标。员工付出劳动,技术,以期通过在企业中的劳动来实现自己的目标。当双方都觉得收获大于付出的时候,交换就会产生,于是供需双方达成合作,价格也就产生了,当然这里的价格不仅仅是薪水,
不是技术也能看懂搜索引擎
什么叫做搜索引擎呢?这要从我们生活中的数据说起。我们生活中的数据总体分为两种:结构化数据和非结构化数据。结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等。非结构化数据:指不定长或无固定格式的数据,如邮件,word文档等。当然有的地方还会提到第三种,半结构化数据,如XML,HTML等,当
不是技术也能看懂容器技术与容器平台
在云计算领域有一个新的技术,称为容器。传统的云计算是基于虚拟机技术的,而容器技术解决了虚拟机原来解决不了的问题。云计算主要解决的是资源弹性的问题,感兴趣的可以看历史文章《不懂技术也能看懂云计算,大数据,人工智能》。所谓资源,主要是指计算,网络,存储。罗永浩在采访中说过,他要做最大的计算平台,当前是手
不是技术也能看懂云计算,大数据,人工智能
我今天要讲这三个话题,一个是云计算,一个大数据,一个人工智能,我为什么要讲这三个东西呢?因为这三个东西现在非常非常的火,它们之间好像互相有关系,一般谈云计算的时候也会提到大数据,谈人工智能的时候也会提大数据,谈人工智能的时候也会提云计算。所以说感觉他们又相辅相成不可分割,如果是非技术的人员来讲可能比