rdflib 存储使用 SQLite 全文索引
项目描述
SPOLStore
一个Python RDFLib存储,它基于简单的主题-谓词-对象-字面值来存储RDF数据,所有字面值都使用SQLite FTS5全文索引。
用法
首先安装该软件包,可以使用以下方法完成
pip install spolstore
在使用之前,需要指定包含图的sqlite数据库在文件系统中的位置以打开它。要将此用作RDFlib中的存储,初始化并打开一个图
import rdflib
g = rdflib.Graph("spol")
g.open("/tmp/example.spol")
如果在尝试调用其任何方法之前没有打开图,则会抛出异常。
一旦解析了图,就可以使用SPARQL查询执行全文搜索
import rdflib
g = rdflib.Graph("spol")
g.open("/tmp/example.spol")
g.parse("http://www.w3.org/People/Berners-Lee/card")
q = """
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT ?s ?p
WHERE {
?s ?p "web workshop" .
}
"""
for r in g.query(q):
print(r)
从磁盘导入ntriples文件
您还可以使用SPOLStore从磁盘加载一个.nt文件,如下所示
python -m spolstore example.nt example.spol
文件可以是压缩的。脚本会检查是否有.gz扩展名,如果是,则在读取时会解压文件。如果您知道文件中有多少个三元组,您还可以在命令行上指定它以查看进度。
python -m spolstore --total=6122281 abiggerfile.nt.gz someotherfile.spol
有关更多信息和使用方法以及如何直接作为SQL数据库查询的查询,请参阅此处
待办事项
这是一个非常初版的可工作版本。请将其视为一个实用原型。可能存在许多错误...
- 正确处理字面值的语言和数据类型,而不是当前的无脑转储
项目详情
关闭
spolstore-0.9.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 49c08f5c3758860158f740448537b076160cf9c205d3f8527bd19b2a64bac388 |
|
MD5 | f3639253d46452d72f535a962e35e9ff |
|
BLAKE2b-256 | bdf328e2798f040840db9b2ad1c69c4f24a3191fc1ce5fde63dca92b60a71bd8 |