Skip to Content.
Sympa Menu

perfsonar-dev - Lookup Service performance benchmarking - next test

Subject: perfsonar development work

List archive

Lookup Service performance benchmarking - next test


Chronological Thread 
  • From: Maciej Glowiak <>
  • To: Jason Zurawski <>, Jeff Boote <>
  • Cc: Perfsonar Development List <>
  • Subject: Lookup Service performance benchmarking - next test
  • Date: Mon, 02 Oct 2006 10:37:56 +0200
  • Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAQMAAABtzGvEAAAABlBMVEUAAAD///+l2Z/dAAAA CXBIWXMAAEU1AABFNQF8gVf5AAAAB3RJTUUH1QYQDjo6uEWvwgAAAM5JREFUGNNN0LFqAkEUheGj KRZsfATrvENgYyH4APabxwgWGUUQC99BsNDCInUq7VImbbDZ0kayxBXMuN7jvTuKVh//mZlmQKZ1 EhQ8GAVgZECspEBdWQHRjR70KlgFKkoUaCw3ijSYQ4n5HfBK4a4jDcdDQPol/80Sr9BxZOOL4Fmr Jq8VBx7eopaSPvWGOm67fqol3j1q0XNs7Nk2cs6MU6gPNzf+ZGKQX4Ek8H6rAnFZnXB2vJxJcv8g C2P+WzL4tD+Txc4KydrIkh+eAdo01QbjQ84vAAAAAElFTkSuQmCC
  • Organization: Poznan Supercomputing and Networking Center

Hi,

After our last discussion about two options of storing/retrieving data in/from LS I made some additional query test.

Basically we had two options:

1. use one XML file in the collection

- very slow modifications

2. use of separate XML files for each Lookup Information

- fast insert/remove

We discussed that opt.2 may slow down queries, so I decided to make an additional test.

With Jeff's script I generated 10 Lookup Information of MA each collecting 100 interfaces. Then I merged them one common file containing these 10 Lookup Information.

First I put one, large file into LS collection and run query:

===========================================================================
for $m in /nmwg:store/nmwg:metadata
let $s := $m/perfsonar:subject/psservice:service
let $accessPoint := $s/psservice:accessPoint
let $d :=
/nmwg:store/nmwg:data[@metadataIdRef=data($m/@id)]
let $datas :=
for $i in $d
return <ifAddress>
{$i/nmwg:metadata//nmwgt:ifAddress/text()}
</ifAddress>
where contains($s/psservice:serviceType,'MA')
and $datas != ''
return <service>
<accessPoint>
{data($accessPoint)}
</accessPoint>
{$datas}
</service>
===========================================================================

that browses all services and returns a structure of accessPoint and stored interfaces addresses, something like this:

===========================================================================
<service>
<accessPoint>http://....</accessPoint>
<ifAddress>150.254.161.194</ifAddress>
<ifAddress>150.254.162.195</ifAddress>
<ifAddress>150.254.163.196</ifAddress>
</service>
===========================================================================

Then I did the same with separate files (results were exactly the same of course):

-----------------+--------------------+-----------------------
| 1 large file | 10 separate files
-----------------+--------------------+-----------------------
size | 970 KB | 10 * 97 KB
-----------------+--------------------+-----------------------
results | 1178 | 392
of several | 1191 | 391
tests | 1213 | 394
(ms) | 1179 | 397
| 1183 | 391
-----------------+--------------------+-----------------------
average | 1189 | 393
-----------------+--------------------+-----------------------
score | 3 | 1
-----------------+--------------------+-----------------------

So, we thought the query operation would slow down with separate files, but the test shows that using separate files may speed up query time even 3 times !!!

It's promising.

Maciej


--

--------------------------------------------------------------------
| Maciej Glowiak Network Research and Development ||
|

Poznan Supercomputing and Networking Center ||
| (+48 61) 858 2024 http://monstera.man.poznan.pl/ ||
====================================================================


  • Lookup Service performance benchmarking - next test, Maciej Glowiak, 10/02/2006

Archive powered by MHonArc 2.6.16.

Top of Page