Dear All,

I ran the following query on Virtuoso:
select ?a?b?c?h?f?fnco ((?f+1001) * (?fnco+1) as ?ero) where{ graph ?g{?a
<pred2> ?f} graph ?g1{?a <pred1> ?b} graph ?g2{?b <pred3> ?c} graph ?g3{?c
<pred4> ?h} graph ?g4{?g3 <pred5> ?fnco}} order by asc(?ero) limit 50

The above query generated the following plan. If possible, can someone
please help me in understanding the generated plan:

Connected to OpenLink Virtuoso
Driver: 07.20.3215 OpenLink Virtuoso ODBC Driver
OpenLink Interactive SQL (Virtuoso), version 0.9849b.
Type HELP; for help and EXIT; to exit.
SQL> SQL> REPORT
VARCHAR
_______________________________________________________________________________

{
Subquery 27
{
{ fork
RDF_QUAD   8.7e+04 rows(s_1_3_t1.S, s_1_3_t1.O)
 inlined  P =  #/pred1
RDF_QUAD         1 rows(s_1_1_t0.O)
 inlined  P =  #/pred2  ,  S = s_1_3_t1.S

Precode:
      0: temp := artm s_1_1_t0.O +  1001
      4: BReturn 0
RDF_QUAD       1.8 rows(s_1_5_t2.O, s_1_5_t2.S)
 inlined  P =  #/pred3  ,  S = k_s_1_3_t1.O
RDF_QUAD       1.1 rows(s_1_7_t3.G, s_1_7_t3.S, s_1_7_t3.O)
 inlined  P =  #/pred4  ,  S = cast
RDF_QUAD         1 rows(s_1_9_t4.O)
 inlined  P =  #/pred5  ,  S = s_1_7_t3.G

After code:
      0: temp := artm s_1_9_t4.O +  1
      4: temp := artm temp * temp
      8: BReturn 0
Sort (temp) -> (s_1_3_t1.S, s_1_5_t2.S, s_1_7_t3.S, s_1_7_t3.O, s_1_1_t0.O,
s_1_9_t4.O)

}
top order by read (s_1_3_t1.S, s_1_5_t2.S, s_1_7_t3.S, s_1_7_t3.O,
s_1_1_t0.O, s_1_9_t4.O, temp)

After code:
      0: __ro2sq := Call __ro2sq (s_1_9_t4.O)
      5: __ro2sq := Call __ro2sq (s_1_1_t0.O)
      10: __ro2sq := Call __ro2sq (s_1_7_t3.O)
      15: __id2in := Call __id2in (s_1_7_t3.S)
      20: __id2in := Call __id2in (s_1_5_t2.S)
      25: __id2in := Call __id2in (s_1_3_t1.S)
      30: a :=  := artm __id2in
      34: b :=  := artm __id2in
      38: c :=  := artm __id2in
      42: h :=  := artm __ro2sq
      46: f :=  := artm __ro2sq
      50: fnco :=  := artm __ro2sq
      54: ero :=  := artm temp
      58: BReturn 0
Subquery Select(a, b, c, h, f, fnco, ero)
}

After code:
      0: a := Call __ro2sq (a)
      5: b := Call __ro2sq (b)
      10: c := Call __ro2sq (c)
      15: h := Call __ro2sq (h)
      20: f := Call __ro2sq (f)
      25: fnco := Call __ro2sq (fnco)
      30: ero := Call __ro2sq (ero)
      35: BReturn 0
Select (a, b, c, h, f, fnco, ero)
}

57 Rows. -- 5 msec.
------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
Virtuoso-users mailing list
Virtuoso-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/virtuoso-users

Reply via email to