假设我有一个大数额的异构JSON文件(即名为关键的价值映射)和一个层次结构的类别(即命名套),这些文件。我需要设立一个数据结构,将允许:

  1. 增删改操作上JSON文件。
  2. 检索JSON文件的ID 真的很快.
  3. 检索所有JSON文件附于某一特定类 真的很快.
  4. 编辑类层次:添加、删除课程,重新安排他们。

我最初想的储存JSON文件在文件为导向的数据库(如CouchDB或MongoDB)和储存的类层次结构中的一个卢旺达国防军的储存(如4store). 1, 24 然后找到了自然和 3 解决了保持清单的附的文件Id的每一类中的储存。

但后来我想到一个卢旺达国防军的储存实际上可以做的的面向文件的一部分检索JSON文件的通过标识。在乍一看,这似乎是真的,但我仍然关心 23.是否有卢旺达国防军的储存,能够检索文件(节点)的速度面向文件分贝的服务的文档?如何快速将它的服务 3-喜欢查询?我听到一点点关于卢旺达国防军的储存正在缓慢,具体化的问题,等等。

是否有卢旺达国防军的储存,这也是一样舒适用于休闲的检索对象的ID,作为CouchDB,例如?之间的区别是什么使用文件为导向的和卢旺达国防军的储存,用于存储、检索和编辑启动喜欢的对象?

有帮助吗?

解决方案

最近的事情,你可以使用在卢旺达国防军的数据库命名的图表。在一个名为图,你可以把一组的卢旺达国防军的三倍。这一组的三倍,可以断言,从一个或多卢旺达国防军文件取决于你的需求。可以说你想要一个命名的图表每卢旺达国防军文件。你能说出名字的图表URI,反映了文件位置的网址或者一个IRI.例如...

http://yourdomain/files/rdf_file_1

file:///home/myrdffiles/file1

4store是四商店。四商店支持名为图和4store是专门设计的处理这个问题。

与4store可以运行以下命令主张的三倍,在一个命名的图:

curl -T your_file.rdf http://your_4store_database/data/http://yourdomain/files/rdf_file_1

/data/ 你可以把图表标识符(IRI)其中的三人将会断言。看看 4store sparql服务器4store客户库 更多的细节。

一旦你有你的数据的断言,与SPARQL你也可以使用的命名的图直接您的查询,图表:

SELECT * WHERE {
   GRAPH <http://youdomain/files/rdf_file_1> {
        .... some triple patterns in here ....
   }
}

此外,4store还支持JSON所以你可以检索的SPARQL结果直接在手机中。

如果你决定使用4store你会找到有价值的支持在这里: http://4store.org/contact

其他提示

您最初向图数据库询问了这个问题(例如 neo4j)。这就是为什么我想添加一些笔记。

  1. 图数据库使用集成的 索引 对于节点(和关系),因此文档的根节点的快速初始查找是通过该节点(外部或图形索引)完成的
  2. 路径的图形索引(实际上是根到根)可以建模清洁器,只是键值查找)
  3. 如果您将文档建模为具有属性的节点树,则可以执行任何简单且复杂的CRUD操作(也可以进行结构)
  4. 检索“类型”或“类”的所有文档可以通过索引(索引root节点为type)或Graph类别节点来完成
  5. 您可以将这些“类型或类”类别节点放入层次结构(或图形)中,然后可以使用通常的图形数据库API进行编辑
  6. 遍历图可以使用 遍历 /集成图查询语言(例如 Neo4J的Cypher)
  7. 加载层次数据可以由自定义进口商或更通用的子图进口商完成(例如 杰夫)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top