在内核版本v0.9.1中,新增了gServer组件,实现Socket API双向通信;上一讲介绍了gServer组件的命名参数和接口交互以及简单的接口信息。接下来将介绍gServer组件的每个接口的使用和详情。
1 login 登录
简要描述
• 登陆用户(验证用户名和密码)
参数
参数名 | 必选 | 类型 | 说明 |
op | 是 | string | 操作名称,固定值为login |
username | 是 | string | 用户名 |
password | 是 | string | 密码(明文) |
返回值
参数名 | 类型 | 说明 |
StatusCode | int | 返回值代码值(具体请参考附表:返回值代码表) |
StatusMsg | string | 返回具体信息 |
返回示例
{
"StatusCode":0,
"StatusMsg":"Login successfully."
}
2 build 创建库
简要描述
• 根据已有的NT文件创建数据库
• 文件必须存在gStore服务器上
参数
参数名 | 必选 | 类型 | 说明 |
op | 是 | string | 操作名称,固定值为build |
db_name | 是 | string | 数据库名称(不需要.db) |
db_path | 是 | string | 数据库文件路径(可以是绝对路径,也可以是相对路径,相对路径以gStore安装根目录为参照目录) |
返回值
参数名 | 类型 | 说明 |
StatusCode | int | 返回值代码值(具体请参考附表:返回值代码表) |
StatusMsg | string | 返回具体信息 |
返回示例
{
"StatusCode":0,
"StatusMsg":"Import RDF file to database done."
}
3 load 加载库
简要描述
• 将数据库加载到内存中,load操作是很多操作的前置条件,如query等
参数
参数名 | 必选 | 类型 | 说明 |
op | 是 | string | 操作名称,固定值为load |
db_name | 是 | string | 数据库名称(不需要.db) |
返回值
参数名 | 类型 | 说明 |
StatusCode | int | 返回值代码值(具体请参考附表:返回值代码表) |
StatusMsg | string | 返回具体信息 |
返回示例
{
"StatusCode":0,
"StatusMsg":"Load database successfully."
}
4 unload 卸载库
简要描述
• 将数据库从内存中卸载(所有的更改都会刷回硬盘)
参数
参数名 | 必选 | 类型 | 说明 |
op | 是 | string | 操作名称,固定值为unload |
db_name | 是 | string | 数据库名称(不需要.db) |
返回值
参数名 | 类型 | 说明 |
StatusCode | int | 返回值代码值(具体请参考附表:返回值代码表) |
StatusMsg | string | 返回具体信息 |
返回示例
{
"StatusCode":0,
"StatusMsg":"Unload database done."
}
5 drop 删除库
简要描述
• 删除数据库
参数
参数名 | 必选 | 类型 | 说明 |
op | 是 | string | 操作名称,固定值为drop |
db_name | 是 | string | 数据库名称(不需要.db) |
返回值
参数名 | 类型 | 说明 |
StatusCode | int | 返回值代码值(具体请参考附表:返回值代码表) |
StatusMsg | string | 返回具体信息 |
返回示例
{
"StatusCode":0,
"StatusMsg":"Drop database done."
}
6 show 查看数据库列表
简要描述
• 显示所有数据库列表
参数
参数名 | 必选 | 类型 | 说明 |
op | 是 | string | 操作名称,固定值为show |
返回值
参数名 | 类型 | 说明 |
StatusCode | int | 返回值代码值(具体请参考附表:返回值代码表) |
StatusMsg | string | 返回具体信息 |
ResponseBody | JSONArray | JSON数组(每个都是一个数据库信息) |
---- db_name | string | 数据库名称 |
---- status | string | 数据库状态(loaded:已加载,unloaded:未加载) |
返回示例
{
"StatusCode":0,
"StatusMsg":"success",
"ResponseBody":[
{"lubm":"loaded"},
{"lubm10K":"unloaded"}
]
}
7 query 查询
简要描述
• 对数据库进行查询
参数
参数名 | 必选 | 类型 | 说明 |
op | 是 | string | 操作名称,固定值为query |
db_name | 是 | string | 需要操作的数据库 |
format | 否 | string | 结果集返回格式,默认是json |
sparql | 是 | string | 要执行的sparql语句 |
返回值
参数名 | 类型 | 说明 |
StatusCode | int | 返回值代码值(具体请参考附表:返回值代码表) |
StatusMsg | string | 返回具体信息 |
head | JSON | 头部信息 |
results | JSON | 结果信息(详情请见返回示例) |
返回示例
{
"head":{
"link":[],
"vars":["x"]
},
"results":{
"bindings":[
{
"x":{"type":"uri","value":"十面埋伏"}
},
{
"x":{"type":"uri","value":"投名状"}
},
{
"x":{"type":"uri","value":"如花"}
}
]
},
"StatusCode":0,
"StatusMsg":"success"
}
8 stop 关闭服务
简要描述
• 关闭服务端
参数
参数名 | 必选 | 类型 | 说明 |
op | 是 | string | 操作名称,固定值为stop |
返回值
参数名 | 类型 | 说明 |
StatusCode | int | 返回值代码值(具体请参考附表:返回值代码表) |
StatusMsg | string | 返回具体信息 |
返回示例
{
"StatusCode":0,
"StatusMsg":"Server stopped."
}
9 close 关闭连接
简要描述
• 关闭与服务端的连接
参数
参数名 | 必选 | 类型 | 说明 |
op | 是 | string | 操作名称,固定值为close |
返回值
参数名 | 类型 | 说明 |
StatusCode | int | 返回值代码值(具体请参考附表:返回值代码表) |
StatusMsg | string | 返回具体信息 |
返回示例
{
"StatusCode":0,
"StatusMsg":"Connection disconnected."
}
附表1 返回值代码表
代码值 | 涵义 |
0 | Success |
1000 | The method type is not support |
1001 | Authentication Failed |
1002 | Check Privilege Failed |
1003 | Param is illegal |
1004 | The operation conditions are not satisfied |
1005 | Operation failed |
1006 | Add privilege Failed |
1007 | Loss of lock |
1008 | Transcation manage Failed |
1100 | The operation is not defined |
1101 | IP Blocked |
针对gStore有任何问题也可通过加运营同学微信,邀请加入gStore图谱社区咨询。
诚邀大家参加
·gStore-weekly技术文章征集活动·
相关技术文章,包含但不限于以下内容:系统技术解析、案例分享、实践总结、开发心得、客户案例、使用技巧、学习笔记等。文章要求原创。
入选周刊即送精美礼品~