想做一个公开课的展示小应用,基本功能:显示 附近 正要进行的公开 课, 分类检索附近的公开课(比如人力资源、市场营销等)
数据库设计遇到问题
分类检索,数据库如何设计
1)如果一个课程只有一个分类,直接建一个tag字段,where查询就行;如果是一个课程多个分类呢(难道把分类义字符串形式拼在 tag字段里,然后取出整张表的tag在进行字符串匹配?)
2)针对多个分类,考虑用lucene进行检索,分词的对象就是课程的分类。但是存在这样一个问题,由于公开课关闭之后就不再需要 检索,为了检索的实效性,每存在公开课关闭或是新建就要重建lucene数据库索引,是不是会消耗大量资源?
显示附近,如何实现
1)通过百度LBS开发平台,把课程的位置信息放在百度LBS云上,通过百度引擎来检索附近
2)大家的类似功能是如何实现的呢
最后应用场景:我要检索成都(或附近)的人力资源管理正在报名的公开课
大家如何设计的呢
1)一个课程对应多个分类是很基础的,给课程一个id,然后另外一表
课程id 分类id
即可一对多。
2)lucene分词和分类两码事。检索课程分类直接用SQL。 公开课关闭用个字段表示,0和1两个值,就和分类字段分开了,不用管lucene。
3)显示附近,数据库里用两个字段记录经度纬度,再获取当前经度纬度,自己算还是API随意。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。