• Zoie中文文档及简单解析


    https://linkedin.jira.com/wiki/pages/viewpage.action?pageId=4456480 一、总体架构

    Zoie是一个实时的搜索引擎系统,其需要逻辑上独立的索引和搜索子系统相对紧密的结合在一起,从而使得一篇文档一经索引,就能够立刻被搜索的到。

    ZoieSystem是Zoie的重要组成部分,其一方面通过实现DataConsumer接口而完成了索引功能,一方面通过实现IndexReaderFactory<ZoieIndexReader<R extends IndexReader>>而完成了搜索功能,并将二者紧密的结合在一起。

    下面就是ZoieSystem的总体架构图:

    • 对于索引系统来讲,ZoieSystem是一个DataConsumer,也即是一个消费者,其有函数consume用于消费DataEvent对象而完成索引功能。
    • 既然其是消费者,则向其提供数据的就应该是生产者DataProvider,要想使用Zoie建立实时搜索系统,必须提供自己的生产者。
    • 对于搜索系统来讲,ZoieSystem是一个IndexReaderFactory,也即是一个能够得到读取索引的IndexReader的工厂,其有函数getIndexReaders得到所有的IndexReader列表,从而可以完成对索引数据读取的功能。
    • 熟悉Lucene的读者应该很清楚,要想对Lucene的索引进行搜索,则首先要得到IndexReader,然后根据IndexReader生成IndexSearcher,从而可以进行搜索,收集结果,打分,排序等过程。既然IndexReader可以通过Zoie的工厂得到,用户需要实现自己的搜索逻辑方可。
  • 相关阅读:
    通用订单搜索的API设计得失录
    碎碎念集萃十七
    基于Groovy+HttpRestful的超轻量级的接口测试用例配置的设计方案及DEMO实现
    决策:作出更好选择的方法与技巧
    碎碎念集萃十六
    谈谈Groovy闭包
    Groovy常用编程知识点简明教程
    TMC首秀:写作带给我生命的影响与感动
    关于年龄
    工程质量保障的基本规范和建议
  • 原文地址:https://www.cnblogs.com/svennee/p/4075426.html
Copyright © 2020-2023  润新知