Xml-db test exist client

From GEANT2-JRA1 Wiki

Contents

Query times (measured by eXist GUI client

Read also EXist_DB_XML_performance_tests !


Data

  • 100.000 locations (100.000 - 999.999)
  • 10.000 distances ( 10.000 - 99.999)

Sample

<?xml version="1.0" encoding="UTF-8"?>
<data>
  <locations>
    <location id="loc500" type="2d">
        <name>Location_500</name>
        <x-coordinate type="gps-encoded">647373</x-coordinate>
        <y-coordinate type="gps-encoded">589038</y-coordinate>
    </location>
  </locations>
  <distances>
    <distance id="dis10000" startRef="loc500" endRef="loc500">
        <description>Distance_10000</description>
        <value type="km">8026</value>
    </distance>
  </distances>
</data>

Queries

XPath (1)

//location[@id="loc199000"]
  • 1800-3200 ms (mostly 2000-2500)

XPath (2)

//distance[@id="loc19000"]
  • 220-300 ms

XQuery (ex.3.1)

  • All locations having x-coordinate > 900000
for $x in //location
where $x/x-coordinate>900000
return $x
  • 4800-5200 ms

XQuery (ex.3.2) - 3.1 with sorting

for $x in //location
where $x/x-coordinate>900000
order by $x/y-coordinate 
return $x
  • 6300-6600 ms

XQuery (ex.4)

  • Counting
let $a := //location[@type = '3d']
return count($a)
  • 2000-2300 ms (result:36090)
let $a := //location[@type = '2d']
return count($a)
  • 2000-2300 ms (result:63910)
Personal tools