Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我应该使用JanusGraph作为主数据库来存储新项目的所有数据吗?_Graph_Janusgraph - Fatal编程技术网

我应该使用JanusGraph作为主数据库来存储新项目的所有数据吗?

我应该使用JanusGraph作为主数据库来存储新项目的所有数据吗?,graph,janusgraph,Graph,Janusgraph,我正在考虑学习JanusGraph在我的新大项目中使用,但有些事情我不懂 Janus可以像任何数据库一样使用,并支持“插入”、“更新”、“删除”操作,因此JanusGraph将数据写入Cassandra或其他数据库以存储这些数据,对吗 JanusGraph在哪里存储节点、边、属性等,它会将这些写入数据库,对吗 这些数据应该由Janus加载到内存中,还是将一直从Cassandra读取 JanusGraph读取的数据必须在每个查询中加载到JanusGraph中,否则它将在数据库中进行选择以检索我需要

我正在考虑学习JanusGraph在我的新大项目中使用,但有些事情我不懂

Janus可以像任何数据库一样使用,并支持“插入”、“更新”、“删除”操作,因此JanusGraph将数据写入Cassandra或其他数据库以存储这些数据,对吗

JanusGraph在哪里存储节点、边、属性等,它会将这些写入数据库,对吗

这些数据应该由Janus加载到内存中,还是将一直从Cassandra读取

JanusGraph读取的数据必须在每个查询中加载到JanusGraph中,否则它将在数据库中进行选择以检索我需要的数据

数据库中检索到的数据只是我需要的,否则Janus将一直读取数据库中的所有记录

我应该在生产中的项目中使用JanusGraph,还是应该等到它准备好生产

我正在开发一种社交网络,需要存储友谊、帖子、评论、用户块,还需要做一些elasticsearch,在这种情况下,我应该使用什么数据库后端

Janus会将数据写入Cassandra或其他数据库来存储这些数据,对吗

Janus在哪里存储节点、边、属性等,它会将这些写入数据库,对吗

Janus Graph会将数据写入您配置使用的任何内容。这包括卡桑德拉。它使用大致概述的数据模型将这些数据写入参考底图数据库

这些数据应该由Janus加载到内存中,还是将一直从Cassandra读取

数据库中检索到的数据只是我需要的,否则Janus将一直读取数据库中的所有记录

Janus Graph只会将查询/遍历过程中接触的顶点和边加载到内存中。所以,如果你做了如下事情:


graph.traversal().V().hasLabel(“我的神奇标签”);

Janus将仅读取带有该标签的顶点并将其加载到内存中。因此,您不必担心初始化图形连接,然后等待整个图形序列化到内存中,然后才能进行查询。杰纳斯是个懒惰的读者

我应该在生产中的项目中使用Janus,还是应该等到生产就绪

这完全取决于您和您的用例。从页面底部可以看出,Janus已经在生产中使用。Janus是从中派生出来的,并在其基础上进行了改进,它还用于几个生产用例中。所以,如果你想知道“它准备好了吗”,那么我会说是的,考虑到它的现有用途,它显然已经准备好了

我应该使用什么数据库后端

再说一遍,这完全取决于你。我使用它是因为它可以水平伸缩,而且我发现它更容易使用。它似乎也适合所有不同大小的数据

我曾经玩弄过,这似乎也很强大。然而,它只适用于非常大的数据,而且它也只在云上,因为Cassandra可以很容易地在本地托管

我没有用过Janus,所以我不能在那里发表评论


不过,在后端之间进行更改非常简单(您所需要做的只是调整一些配置并检查您的依赖关系是否到位),因此在开发过程中,您可以随意使用后端。您只需要在投入生产或更确定每个后端时才真正需要提交到后端
  • 不需要迁移模式可以提高快速迭代新项目时的生产率
  • 遍历高度规范化的数据模型不像在RDBMS中使用连接那样昂贵
  • 大多数都包括内存配置,这对于实验和测试非常有用
  • 支持多机集群和分区容差
以下是用Kotlin编写的JanusGraph和Neo4j后端示例:


JanusGraph的主要优点是可以灵活地插入您喜欢的任何存储后端。

非常感谢您,Filipe。我不能理解这一点,因为我无法连接到后端无论如何,我只是花了3天的时间试图连接,但我每次都得到相同的错误。configs文件的配置与docs建议的配置相同,但我得到的是:在[conf/gremlin server/janusgraph cassandra es server.properties]上配置的Graph[Graph]无法实例化,并且在gremlin server中将不可用。GraphFactory消息:GraphFactory无法实例化此图形实现[class org.janusgraph.core.JanusGraphFactory]Hi@AugustoWill我建议您提出一个新问题?在这个问题中,显示您使用的配置,以及您如何使用它,当然还显示您得到的错误。若你们这样做,我和其他人会更有帮助。janusgraph用户邮件列表上也有同样的帖子