gStore是遵循 BSD协议的一个开源项目。一个基于图的 RDF 三元组存储的数据管理系统。该项目是北京大学、滑铁卢大学、香港科技大学的联合研究项目。中国北京大学计算机科学与技术研究所的数据库组对该系统进行开发和维护。目前尚未商业化,需通过技术转让或授权使用。

 
  • gStore从图数据库角度存储和检索RDF知识图谱数据.
  • gStore支持W3C定义的SPARQL1.1标准,包含Union,OPTIONAL,FILTER和聚集函数查询;gStore支持有效的增删改操作
  • gStore单机可以支持1Billion(十亿)三环组规模的RDF知识图谱的数据管理任务

gStore--基于图的RDF存储和查询系统

gStore主要技术手段:
• 统一的结构和内容编码方法
• 一种高度平衡树 VS-tree索引
• 基于索引的多级过滤机制

查询编码图 Q*

 

数据编码图 G*

▲代码:除了SPARQL语法解析器外均为独立开发的,目前有14万行C++,完成自主知识产权;共计6人年, 目前是版本v 0.3.0 .
▲开源地址:https://github.com/Caesar11/gStore/
包括全部的系统代码;详细的用户手册;与目前最好的开源和工业系统在多个Benchmark数据集上的对比测试报告;系统使用演示视频。
▲开源协议:基于BSD 协议
▲部署方法:单机和C/S方式部署 
▲接口:C++, Java, python, PHP等API接口;接收标准的RDF文件格式(N3,Turtle等格式)

gStore 安装

gStore可以采用单机和C/S方式部署。源码包(C++)编译安装,安装过程中依赖包较多,需分别安装。需注意各依赖包版本问题。总体安装部署难度为:中等。
测试服务器系统配置:

  • 操作系统:Centos 6.5
  • 架构:x86_64
  • 磁盘容量:500G
  • 内存空间:32G

gStore命令行

gconsole:

  gStore 的主要控制台
gbuild/build:

  根据三元组文件生成新的数据库
  例如:bin/gbuild test test_data/2.0_zhwiki_dbpedia_links_zh.n3
  或在gconsole状态下执行:build test test_data/2.0_zhwiki_dbpedia_links_zh.n3
load:

  装载数据库
  在gconsole状态下执行:load test
unload:

  卸载数据库
  在gconsole状态下执行:unload
gadd/add:

  向数据库中插入一个文件中的三元组
  例如:bin/gadd test  test_data/2.0_zhwiki_infobox_properties_zh.n3
  或在gconsole状态下执行:add test   test_data/2.0_zhwiki_infobox_properties_zh.n3
gsub/sub:

  从数据库中删除某一文件中的三元组
  例如:bin/gsub test  test_data/2.0_zhwiki_infobox_properties_zh.n3
  或在gconsole状态下执行:sub test   test_data/2.0_zhwiki_infobox_properties_zh.n3
gquery /query:

  用包含 SPARQL的文件查询一个已有的数据库
gserver:

  一个后台程序。会在使用 gclient 或 API 连接 gStore 时运行。
  例如:bin/gserver –s 启动server
  bin/gserver –p 3306 指定server监听端口为3306
  bin/gserver –t 关闭server
ghttp:

  通过 HTTP 协议访问 gStore
  例如:bin/ghttp
  从数据集建立一个数据库:
  http://*.*.*.*:9001/%3Foperation%3Dbuild%26db_name%3Dtest%26ds_path%3dtest_data%2f2.0_zhwiki_dbpedia_links_zh.n3 
  加载一个数据库:
  http://*.*.*.*:9001/%3Foperation%3Dload%26db_name%3Dtest
  在当前数据库进行查询:
  http://*.*.*.*:9001/%3Foperation%3Dquery%26format%3Djson%26sparql%3d%22select+%3fx+where+%7b+%3fx+%3cub%3aname%3e+%3cFullProfessor0%3e%7d%22
  卸载数据库:
  http://*.*.*.*:9001/%3Foperation%3Dunload%26db_name%3Dtest
  监控服务器:
  http://*.*.*.*:9001/%3Foperation%3monitor
  显示当前加载的数据库:
  http://*.*.*.*:9001/%3Foperation%3show
  保存当前数据库:
  http://*.*.*.*:9001/%3Foperation%3checkpoint

gStore--HTTP API 接口

最新文章

  1. lua实现私有函数
  2. jQuery+ASP.NET MVC基于CORS实现带cookie的跨域ajax请求
  3. XAML: x:DeferLoadStrategy, x:Null
  4. uC/OS-II内核的服务文件
  5. [ruby on rails] 深入(2) ruby基本语法
  6. C#轻型ORM框架PetaPoco试水
  7. HDU 1997 汉诺塔VII
  8. ArrayList线程不安全?
  9. c#重起 普通路由器
  10. HTML5新特性之WebRTC[转]
  11. headfirst设计模式(9)—模板方法模式
  12. 并发容器学习—ConcurrentSkipListMap与ConcurrentSkipListSet 原
  13. JAVA程序CPU 100%问题排查
  14. 【Spring】浅谈spring为什么推荐使用构造器注入
  15. 【PE结构】由浅入深PE基础学习-菜鸟手动查询导出表、相对虚拟地址(RVA)与文件偏移地址转换(FOA)
  16. [日常] Go语言圣经-Goroutines和线程
  17. python实战之原生爬虫(爬取熊猫主播排行榜)
  18. android Socket 编程
  19. Kotlin(2): 优雅地扩展类的方法和属性
  20. 【Linux】Linux各文件夹说明

热门文章

  1. 搭建个人OpenAPI
  2. cogs 49. 跳马问题 DFS dp
  3. 轻松弄懂var、let、const之间的区别
  4. python爬虫——selenium+chrome使用代理
  5. TCP客户端服务器编程模型
  6. 解决浮点运算精度不准确,BigDecimal 加减乘除
  7. ①CM+CDH6.2.0安装(全网最全)
  8. chrome浏览器无法开启同步功能 request cancel
  9. 2019年,我花了3个月时间备考PMP
  10. IDEA | 更改idea打开新项目默认配置