mirror of https://gitee.com/bigwinds/arangodb
New examples.
This commit is contained in:
parent
877b2d9172
commit
d1386ef8ee
|
@ -0,0 +1,44 @@
|
|||
arangosh> db._create(<span class="hljs-string">"test"</span>);
|
||||
[ArangoCollection <span class="hljs-number">1092291992475</span>, <span class="hljs-string">"test"</span> (type <span class="hljs-built_in">document</span>, status loaded)]
|
||||
arangosh> <span class="hljs-keyword">for</span> (i = <span class="hljs-number">0</span>; i < <span class="hljs-number">100</span>; ++i) { db.test.save({ value: i }); }
|
||||
arangosh> db.test.ensureSkiplist(<span class="hljs-string">"value"</span>);
|
||||
{
|
||||
<span class="hljs-string">"id"</span> : <span class="hljs-string">"test/1092311980955"</span>,
|
||||
<span class="hljs-string">"type"</span> : <span class="hljs-string">"skiplist"</span>,
|
||||
<span class="hljs-string">"fields"</span> : [
|
||||
<span class="hljs-string">"value"</span>
|
||||
],
|
||||
<span class="hljs-string">"unique"</span> : <span class="hljs-literal">false</span>,
|
||||
<span class="hljs-string">"sparse"</span> : <span class="hljs-literal">false</span>,
|
||||
<span class="hljs-string">"isNewlyCreated"</span> : <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-string">"code"</span> : <span class="hljs-number">201</span>
|
||||
}
|
||||
arangosh> <span class="hljs-keyword">var</span> explain = <span class="hljs-built_in">require</span>(<span class="hljs-string">"org/arangodb/aql/explainer"</span>).explain;
|
||||
arangosh> explain(<span class="hljs-string">"FOR i IN test FILTER i.value > 97 SORT i.value RETURN i.value"</span>, {colors:<span class="hljs-literal">false</span>});
|
||||
Query string:
|
||||
FOR i IN test FILTER i.value > <span class="hljs-number">97</span> SORT i.value RETURN i.value
|
||||
|
||||
Execution plan:
|
||||
Id NodeType Est. Comment
|
||||
<span class="hljs-number">1</span> SingletonNode <span class="hljs-number">1</span> * ROOT
|
||||
<span class="hljs-number">9</span> IndexNode <span class="hljs-number">50</span> - FOR i IN test <span class="hljs-comment">/* skiplist index scan */</span>
|
||||
<span class="hljs-number">5</span> CalculationNode <span class="hljs-number">50</span> - LET #<span class="hljs-number">3</span> = i.<span class="hljs-string">`value`</span> <span class="hljs-comment">/* attribute expression */</span> <span class="hljs-comment">/* collections used: i : test */</span>
|
||||
<span class="hljs-number">8</span> ReturnNode <span class="hljs-number">50</span> - RETURN #<span class="hljs-number">3</span>
|
||||
|
||||
Indexes used:
|
||||
By Type Collection Unique Sparse Selectivity Fields Ranges
|
||||
<span class="hljs-number">9</span> skiplist test <span class="hljs-literal">false</span> <span class="hljs-literal">false</span> n/a [ <span class="hljs-string">`value`</span> ] i.<span class="hljs-string">`value`</span> > <span class="hljs-number">97</span>
|
||||
|
||||
Optimization rules applied:
|
||||
Id RuleName
|
||||
<span class="hljs-number">1</span> move-calculations-up
|
||||
<span class="hljs-number">2</span> move-filters-up
|
||||
<span class="hljs-number">3</span> remove-redundant-calculations
|
||||
<span class="hljs-number">4</span> remove-unnecessary-calculations
|
||||
<span class="hljs-number">5</span> move-calculations-up-<span class="hljs-number">2</span>
|
||||
<span class="hljs-number">6</span> move-filters-up-<span class="hljs-number">2</span>
|
||||
<span class="hljs-number">7</span> use-indexes
|
||||
<span class="hljs-number">8</span> remove-filter-covered-by-index
|
||||
<span class="hljs-number">9</span> use-index-<span class="hljs-keyword">for</span>-sort
|
||||
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
arangosh> <span class="hljs-keyword">var</span> examples = <span class="hljs-built_in">require</span>(<span class="hljs-string">"org/arangodb/graph-examples/example-graph.js"</span>);
|
||||
arangosh> <span class="hljs-keyword">var</span> g = examples.loadGraph(<span class="hljs-string">"knows_graph"</span>);
|
||||
arangosh> db.persons.toArray()
|
||||
[
|
||||
{
|
||||
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Charlie"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"persons/charlie"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092164590491"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"charlie"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Bob"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"persons/bob"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092164328347"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"bob"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Eve"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"persons/eve"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092164983707"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"eve"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Dave"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"persons/dave"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092164787099"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"dave"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Alice"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"persons/alice"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092164131739"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"alice"</span>
|
||||
}
|
||||
]
|
||||
arangosh> db.knows.toArray();
|
||||
[
|
||||
{
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"knows/1092165835675"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092165835675"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"1092165835675"</span>,
|
||||
<span class="hljs-string">"_from"</span> : <span class="hljs-string">"persons/eve"</span>,
|
||||
<span class="hljs-string">"_to"</span> : <span class="hljs-string">"persons/alice"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"knows/1092165639067"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092165639067"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"1092165639067"</span>,
|
||||
<span class="hljs-string">"_from"</span> : <span class="hljs-string">"persons/bob"</span>,
|
||||
<span class="hljs-string">"_to"</span> : <span class="hljs-string">"persons/dave"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"knows/1092165245851"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092165245851"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"1092165245851"</span>,
|
||||
<span class="hljs-string">"_from"</span> : <span class="hljs-string">"persons/alice"</span>,
|
||||
<span class="hljs-string">"_to"</span> : <span class="hljs-string">"persons/bob"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"knows/1092165442459"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092165442459"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"1092165442459"</span>,
|
||||
<span class="hljs-string">"_from"</span> : <span class="hljs-string">"persons/bob"</span>,
|
||||
<span class="hljs-string">"_to"</span> : <span class="hljs-string">"persons/charlie"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"knows/1092166032283"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092166032283"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"1092166032283"</span>,
|
||||
<span class="hljs-string">"_from"</span> : <span class="hljs-string">"persons/eve"</span>,
|
||||
<span class="hljs-string">"_to"</span> : <span class="hljs-string">"persons/bob"</span>
|
||||
}
|
||||
]
|
||||
arangosh> examples.dropGraph(<span class="hljs-string">"knows_graph"</span>);
|
||||
<span class="hljs-literal">true</span>
|
|
@ -0,0 +1,69 @@
|
|||
arangosh> <span class="hljs-keyword">var</span> examples = <span class="hljs-built_in">require</span>(<span class="hljs-string">"org/arangodb/graph-examples/example-graph.js"</span>);
|
||||
arangosh> <span class="hljs-keyword">var</span> graph = examples.loadGraph(<span class="hljs-string">"social"</span>);
|
||||
arangosh> db.female.toArray()
|
||||
[
|
||||
{
|
||||
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Diana"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"female/diana"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092171340699"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"diana"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Alice"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"female/alice"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092170619803"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"alice"</span>
|
||||
}
|
||||
]
|
||||
arangosh> db.male.toArray()
|
||||
[
|
||||
{
|
||||
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Bob"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"male/bob"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092170947483"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"bob"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Charly"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"male/charly"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092171144091"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"charly"</span>
|
||||
}
|
||||
]
|
||||
arangosh> db.relation.toArray()
|
||||
[
|
||||
{
|
||||
<span class="hljs-string">"type"</span> : <span class="hljs-string">"friend"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"relation/bobAndDiana"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092172323739"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"bobAndDiana"</span>,
|
||||
<span class="hljs-string">"_from"</span> : <span class="hljs-string">"male/bob"</span>,
|
||||
<span class="hljs-string">"_to"</span> : <span class="hljs-string">"female/diana"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"type"</span> : <span class="hljs-string">"married"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"relation/charlyAndDiana"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092172127131"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"charlyAndDiana"</span>,
|
||||
<span class="hljs-string">"_from"</span> : <span class="hljs-string">"male/charly"</span>,
|
||||
<span class="hljs-string">"_to"</span> : <span class="hljs-string">"female/diana"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"type"</span> : <span class="hljs-string">"friend"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"relation/aliceAndCharly"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092171930523"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"aliceAndCharly"</span>,
|
||||
<span class="hljs-string">"_from"</span> : <span class="hljs-string">"female/alice"</span>,
|
||||
<span class="hljs-string">"_to"</span> : <span class="hljs-string">"male/charly"</span>
|
||||
},
|
||||
{
|
||||
<span class="hljs-string">"type"</span> : <span class="hljs-string">"married"</span>,
|
||||
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"relation/aliceAndBob"</span>,
|
||||
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"1092171668379"</span>,
|
||||
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"aliceAndBob"</span>,
|
||||
<span class="hljs-string">"_from"</span> : <span class="hljs-string">"female/alice"</span>,
|
||||
<span class="hljs-string">"_to"</span> : <span class="hljs-string">"male/bob"</span>
|
||||
}
|
||||
]
|
||||
arangosh> examples.dropGraph(<span class="hljs-string">"social"</span>);
|
||||
<span class="hljs-literal">true</span>
|
Loading…
Reference in New Issue