sparql和elasticsearch构建知识图谱搜索引擎

sparql和elasticsearch构建知识图谱搜索引擎是最新实验室的给mooc中国的项目的主要技术

给mooc中国做的知识图谱,先吐槽一番再说,学校在划水,老师不关心,自己没补助。当作自己学习一下知识吧。

elasticsearch是之前使用的全文检索工具,在速度上很快,分布式具有优势。sparql是rdf的标准检索语言,我们使用的数据库是jena,虽然有点慢,但目前数据量比较小,他们也发现不了。


整体框架:图谱构建、图谱存储、图谱搜索、图谱可视化

图谱构建: 主要采用之前一个师兄的c语言的知识点数据,然后爬取了百度百科的数据,然后根据分面(实验室的一个概念)建立子节点。知识点间的关系主要通过文本相似度来确定,就是图谱中的一些点和点的关系,这样图谱就构建好啦。(ps:知识图谱的来源划水会导致后面没法增加更好的功能,没和充分利用图谱优势)

图谱存储: 就是把mysql数据库中的数据导入rdf数据库jena中,主要就是设计存储好模式就好啦。

图谱搜索:

  1. 主要进行知识点的搜索,为了提高速度,并没有使用sparql的regex匹配,采用把知识点的id和名称存入到ES中,检索时候得到的是知识点的id,这样就可以进行第二步的sparql查询
  2. sparql查询,在jena引擎中,存储采用的是jena的TDB,之后打算使用fuseki,可以将rdf数据库TDB共享出去,理论上速度也会提升,毕竟成为了一个服务,在事务和线程上都有优势。
  3. 得到结果,将数据通过restful API传输到前台。
  4. PS:全用的java。

图谱可视化:echars的关系图表,加上压力布局。


总体而言,实验室的这个项目有点水,或许可以管中窥豹,学校就是这样,真正能学到什么全是靠自己

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章