2016-05-03 14 views
1

Ich habe ein Diagramm in ArangoDB erstellt, und ich will es mit 15 Sammlungen verwenden, aber der GUI sagt mir, dass:ArangoDB: Limit bei 10 Dokumenten in Graph

Sie können nur 10 Elemente auswählen

für jedes n-Tupel (fromCollections, toCollections, EdgeDefinitions).

Was kann ich tun, um das Limit zu überschreiten?

Vielen Dank.

Daniele

+0

Hat die Antwort für Sie funktioniert? Wenn ja, können Sie es als "akzeptiert" bezeichnen? Wenn nicht, was fehlt? – dothebart

+0

Das ist in Ordnung! Vielen Dank! –

Antwort

2

AQL verfügt derzeit über eine Grenze von 32 Sammlungen verwendbar in einer Abfrage. mit 15 Randsammlungen

var Graph = require("org/arangodb/general-graph"); 

Ein Graph:: Sie können grafische Darstellungen wie diese in arangosh erstellen

var g = Graph._create("test1", 
    [ 
    Graph._relation("edge_1", "test", "test"), 
    ... 
    Graph._relation("edge_15", "test", "test") 
    ] 
); 

und ein anderes mit 34 Randsammlungen (das ist 35 Sammlungen mit der einem Scheitelpunkt Sammlung kombiniert):

var g = Graph._create("test2", 
    [ 
    Graph._relation("edge_1", "test", "test"), 
    ... 
    Graph._relation("edge_34", "test", "test") 
    ] 
); 

Wir speichern einen Dummy-Startknoten für eine Traversal:

db.test.save({_key: 'a'}) 

wenn Sie jetzt test1 abfragen, werden Sie das erwartete Ergebnis leer bekommen (wir haben keine Kanten):

db._query("FOR v IN 1..1 ANY 'test/a' GRAPH 'test1' RETURN v") 

Aber wenn Sie test2 abfragen, erhalten Sie:

ArangoError: too many collections (while parsing) 

Sie können mit dem Test2-Diagramm arbeiten, indem Sie edgeCollectionRestriction option of the GRAPH_* functions verwenden, um eine Teilmenge der 34 konfigurierten Sammlungen auszuwählen.

Während das Webui eine nette Sache für einfache Aufgaben sein kann, glaube ich nicht, dass es verwendbar ist, um die Schaffung von Aufgaben wie oben dargestellt zu erreichen.