关于solr还未解决的问题(20号)

1.unique key (id) 在solr 和数据库的id

  • 数据库表的id 和solr 的unique key id 区别在哪
  • q_answer表 一个id 对应10个question 如何在solr上 一个(unique key)id对应一个question q且保留它原来在数据库表的id字段 如何设置
    -

解决方法

  • 1.弄清楚各个配置项的含义 读官方文档 好像行不通
  • 2.how2j有相关教程 先过一遍

我的思考

  • 让solr与数据库一一对应 对问题创建索引&中文分词 找到对应的id 从而找到对应的answer
id Q1 Q2 Q3 answer
1 你是 ? 你是谁? 谁? demo
2 几号 ? 日期? 日子? 21号
3 男的 ? 女的? 性别?
  • 可行 但是 当数据库新增字段 solr就要新增字段 效率很低。目的要把数据库和solr分离 solr是对内容进行索引,并不一定要与数据库一一对应。
  • 解决方案:solr 上一个sid 对应一个问题(每个问题包含它数据库对应的id)
sid aid questton
1 1 你是谁?
2 1 你是?
3 1 谁?
4 2 几号?
5 2 日期?
6 2 日子?
7 3 性别?
  • 结构好处:数据库question字段增加 不会改变solr索引结构

两种查询方式

  • 模糊查询:通过关键词走solr流程 找到对应id 在精确查询
  • 精确查询:不走solr流程 直接在数据库中查询