Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.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
Graph Titan需要多大的Faunus图形分析框架?_Graph_Gremlin_Titan_Faunus - Fatal编程技术网

Graph Titan需要多大的Faunus图形分析框架?

Graph Titan需要多大的Faunus图形分析框架?,graph,gremlin,titan,faunus,Graph,Gremlin,Titan,Faunus,我正在研究在两个数据集上跨TitanGraph DB的边执行图形聚合(groupBy、groupCount)查询: 大约10000个节点和大约100万条边 大约200000个节点和大约10亿条边 有人知道我需要在什么时候安装Faunus才能在1分钟内完成这种类型的gremlin查询吗?在10000个节点和1M的边缘,普通gremlin(没有Faunus)应该没有问题。请参阅下面的代码,其中我使用熔炉生成了一个大致相同大小的图形: gremlin> g = TitanFactory.ope

我正在研究在两个数据集上跨TitanGraph DB的边执行图形聚合(groupBy、groupCount)查询:

  • 大约10000个节点和大约100万条边

  • 大约200000个节点和大约10亿条边


  • 有人知道我需要在什么时候安装Faunus才能在1分钟内完成这种类型的gremlin查询吗?

    在10000个节点和1M的边缘,普通gremlin(没有Faunus)应该没有问题。请参阅下面的代码,其中我使用熔炉生成了一个大致相同大小的图形:

    gremlin>  g = TitanFactory.open('/tmp/titan/generated')
    ==>titangraph[local:/tmp/titan/generated]
    gremlin> import com.tinkerpop.furnace.generators.*
    ==>import com.tinkerpop.gremlin.*
    ==>import com.tinkerpop.gremlin.java.*
    ...
    ==>import com.tinkerpop.furnace.generators.*
    gremlin> for (int i=0;i<10000;i++) g.addVertex(i)
    ==>null
    gremlin> r = new java.util.Random()
    ==>java.util.Random@137f0ced
    gremlin> generator = new DistributionGenerator("knows", { it.setProperty("weight", r.nextInt(100)) } as EdgeAnnotator)
    ==>com.tinkerpop.furnace.generators.DistributionGenerator@111a3ce4
    gremlin> generator.setOutDistribution(new PowerLawDistribution(2.1))
    ==>null
    gremlin> generator.generate(g,1000000)
    ==>1042671
    
    如您所见,执行此遍历大约需要1.5秒(在TinkerGraph上大约需要500毫秒,这都在内存中)


    在1B边缘,您可能需要Faunus。我不认为你们能在一分钟内完成所有这些边的迭代,即使你们能以某种方式把它们都放在内存中。请注意,使用Faunus,您可能无法获得1分钟的查询/回答时间。我想你需要做一点实验。

    这正是我想要的,很高兴看到一些不错的数字。谢谢
    gremlin> start=System.currentTimeMillis();g.E.groupBy{it.getProperty("weight")}{it}.cap.next();System.currentTimeMillis()-start
    ==>1415
    gremlin> m.size()
    ==>100