1.我小组负责的搜索引擎为金融部门的 app 和知识库等应用提供搜索服务。搜索引擎分为了数据传输模块,数据清洗模块,搜索引擎核心模块,业务模块,es集群(3节点),前端展示页面。对使用者来说能实现所有的模块。
2.我是总体负责人,负责搜索引擎的架构和搜索效果的调优,以及核心功能的实现。使用的技术栈有logstash、elasticsearch、mysql、springboot,微服务,k8s、云容器平台、Kafka、算法等
3.难点:
搜索引擎架构设计:使用 logstash 定时从 MySQL 从库中抽取数据,送往 Kafka,再写索引到es 中
搜索优化:根据业务需求,编写 DSL,平衡搜索速度、准确性和用户体验
分词器:在开源 hanlp 基础上,根据业务需求做了大量定制化修改
搜索联想:在开源拼音分词器基础上,做了增加了支持首字母联想,拼音联想,英译汉联想
搜索纠错:基于 trigram+编辑距离+相似拼音实现搜索纠错