对知识图谱有兴趣的读者可以关注我的知乎专栏,主要介绍知识图谱的相关概念、技术,也包含一些具体实践。
这次我们介绍利用D2RQ开启SPARQL endpoint服务和两种交互方式:在浏览器中进行查询或者编写python脚本进行交互。跳过之前实践篇练习的读者,需要做的准备有:导入数据到Mysql,下载mapping文件(项目地址)。
一、SPARQL endpoint
前一篇介绍SPARQL的文章中提到,SPARQL endpoint是SPARQL协议的一部分,用于处理客户端的请求,可以类比web server提供用户浏览网页的服务。通过endpoint,我们可以把数据发布在网上,供用户查询。
D2RQ,是以虚拟RDF的方式来访问关系数据库中的数据,即我们不需要显式地把数据转为RDF形式。通过默认,或者自己定义的mapping文件,我们可以用查询RDF数据的方式来查询关系数据库中的数据。换个说法,D2RQ把SPARQL查询,按照mapping文件,翻译成SQL语句完成最终的查询,然后把结果返回给用户。下面是D2R Server的架构图:
进入d2rq目录,使用下面的命令启动D2R Server: