结果:
首先创建了一个容量为10的的布隆过滤器
然后分别加入 ‘dog’,‘fish’,‘cat’三个对象,这时的布隆过滤器的内容如下:
分词的逻辑就是对文本先进行主要分割,对每一个主要分割在进行次要分割。然后把所有分出来的词返回。
我们看看这段 code是如何运行的:
- Splunk代表一个拥有搜索功能的索引集合
- 每一个集合中包含一个布隆过滤器,一个倒排词表(字典),和一个存储所有事件的数组
- 当一个事件被加入到索引的时候,会做以下的逻辑
- 为每一个事件生成一个unqie id,这里就是序号
- 对事件进行分词,把每一个词加入到倒排词表,也就是每一个词对应的事件的id的映射结构,注意,一个词可能对应多个事件,所以倒排表的的值是一个Set。倒排表是绝大部分搜索引擎的核心功能。
- 当一个词被搜索的时候,会做以下的逻辑
- 检查布隆过滤器,如果为假,直接返回
- 检查词表,如果被搜索单词不在词表中,直接返回
- 在倒排表中找到所有对应的事件id,然后返回事件的内容
发稿网(QQ:599515669)是全国领先的在线新闻稿发布平台,团队由资深互联网专家组成,服务内容类涵盖软文发布、软文代写、微信营销、微博营销、报纸广告、视频置顶、百度问答等多种互联网广告行业。发稿网平台有上千媒介编辑、专业写手、段子手、营销专家,为企业、公共机构和个人提供定制化的解决方案,将创意、智慧、技能转化为商业价值和社会价值。发稿网平台凭借多年的网络资源和客户资源积累,发展遥遥领先同行业其他软文平台。