Jakes-基于ES的音乐搜索引擎.key.PDF
基于ES的⾳乐搜索引擎
Jakes
2017年11⽉25 ⽇
酷狗⾳乐搜索引擎架构变迁
⽬录
⽬录 ⽬录
构建⾳乐搜索引擎经验之谈
架构变迁
伪集群
真集群
ES + redis集群
中⽂分词器
中⽂分词器
• 开源中⽂分词器(IK、ansj、jcseg 、HanLP、word 、jieba等)
• 如何选择?
• 为什么要⾃⼰写?为了KPI?
• “不污”中⽂分词器
• 具有核⼼、繁简体、标点符号、排除、替换词典
• ⽀持混合字符分词(英⽂词组、中英⽂、中⽂数字、数字英⽂、标点⾮标点等)
• 基于MMSEG算法,含有多种分词策略
• ⽀持词典热更新
索引篇
索引篇
• 索引流程
索引篇
• 优化及注意点
• 索引名加上时间戳
• mappings写在⽂件,⽅便修改
• number_of_shards: 1、number_of_replicas: 0、refresh_interval: “0s”
• 排序、聚合字段采⽤doc_values
• 根据需求应⽤不同分词策略
• 采⽤⽣产者消费者⽅式批量索引数据
• 优化索引段为1
• 统计索引量,防⽌建空索引
• 恢复副本数(R = N / P - 1),修改refresh_interval
• 关闭索引以作备份
• 涉及到索引状态变更的操作⼀定要有重试
搜索篇
搜索篇
• 常⽤query
• multi_match query
• bool query
• function_score query
• nested query
• 常⽤filter
• bool filter
• term filter
• range filter
• 插件
搜索篇
• 优化及注意点
• query vs filter
• query计算得分,filter不计算得分
• filter可以缓存结果,query “不⾏” (当search_type=countquery_cache=true时,可以缓存hits.total, aggregations,
suggestions,当分⽚刷新时,缓存失效)
• filtered query vs post filter
• filtered query影响aggretations 和 hits
• post filter只影响hits
• query写成⽂件,⽅便修改
• 限制最⼤from 、size 、搜索关键词⻓度
• 排序调优,要善⽤_explain ,各种query搭配不同分词⽅式
其他
其他⼩技巧
• 增量和全量分开⽅法索引,以免增量堆积
• index.mapper.dynamic: false 禁⽌⾃动⽣成mappings
• 优化⼩索引段为1个
QA
Thanks
就是歌多
您可能关注的文档
最近下载
- 人教版五年级语文(下册)写字表课文同步正楷练字帖.pdf VIP
- 家谱发放仪式上的讲话范文(3篇).docx VIP
- 塔吊拆除作业安全培训内容课件.pptx VIP
- SYT 5328-2019 石油天然气钻采设备 热采井口装置.docx VIP
- 肖邦升C小调幻想即兴曲(Op.66)(原版) 高清钢琴谱五线谱.docx VIP
- 高技术船舶科研项目指南(2024年).pdf VIP
- 全国大学生市场调查与分析大赛调查研究报告.PDF VIP
- 中北大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 产前检查ppt课件图文.pptx VIP
- 精品解析:重庆市万州二中教育集团2025-2026学年八年级上学期期中物理试题(原卷版).docx VIP
原创力文档

文档评论(0)