Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

You may see that the benchmark opens 4 servers on ports 65440 - 65443 where you can connect to.Now Odysseus can use the nexmark sources. Each time an Odysseus query connects to one of the servers a new scenario is started, i.e. the same users and the same auctions are generated, so the same queries will always create the same results.

Optional: Configure Nexmark

Nexmark has some standard configuration that will be used in our examples.The configuration can be changed in nexmark.ini.

The following parameters can be adapted:

  • pr: This is the starting port of the first server (Auction). The next servers (PERSON, BID, CATEGORY) will get the next 3 ports.
  • gcf: This parameter references a file that describes the behaviour of the nexmark server, e.g. how long is the delay between different elements in the stream. We deliver two standard configurations that can be found in the plugin de.uniol.inf.is.odysseus.nexmark:
    • /config/NEXMarkGeneratorConfiguration_SLOW.properties: Here elements are delivered with a rather slow rate. This should be used when creating queries.
    • /config/NEXMarkGeneratorConfiguration.properties: Here elements are created with a higher rate. This can be used to test, if the application scales.
Nexmark Configuration File

In the following code block is an example of a nexmark configuration (/config/NEXMarkGeneratorConfiguration_SLOW.properties). All time elements are in milliseconds.

The following elements can be used:

minDistBetweenPersons
Code Block
languagexml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>

<!-- Konfiguration des NEXMarkGenerators -->
<!-- Zeitangaben in MS -->

<entry key="minDistBetweenPersons">5000</entry>
<entry key="maxDistBetweenPersons">5000</entry>

<entry key="minDistBetweenAuctions">2000</entry>
<entry key="maxDistBetweenAuctions">2000</entry>

<entry key="minDistBetweenBids">500</entry>
<entry key="maxDistBetweenBids">500</entry>

<!-- Faktor um den die Zeit beschleunigt werden soll. -->
<entry key="accelerationFactor">1</entry>

<!-- wie lange Auktionen offen bleiben sollen -->
<entry key="minAuctionDuration">600000</entry>
<entry key="maxAuctionDuration">600000</entry>


<!-- Zeit zwischen zwei Bursts (MIN und MAX) in ms -->
<!-- Ein Wert von 0 bei beiden simuliert ohne Bursts. -->
<!-- Diese Zeit wird nicht vom "accelerationFactor" beeinflusst -->
<entry key="minTimeBetweenBursts">0</entry>
<entry key="maxTimeBetweenBursts">0</entry>

<!-- Dauer eines Bursts --> 
<!-- Ein Wert von 0 bei beiden simuliert ohne Bursts. -->
<!-- Diese Zeit wird nicht vom "accelerationFactor" beeinflusst -->
<entry key="minBurstDuration">0</entry>
<entry key="maxBurstDuration">0</entry>

<!-- Beschleunigungsfaktor waehrend eines Bursts -->
<entry key="burstAccelerationFactor">0</entry>

</properties>