By Theofilos Ioannidis (tioannid [at] di [dot] uoa [dot] gr), created on , last updated on
Containers are not ideal for benchmarking purposes similar to the one GeoRDFBench Framework performs, because they do not allow clearing system caches. The reason for this is that:
Therefore, in the following example, although the user can verify that the experiments run properly and results are correctly calculated and reported, the COLD cache response times will not be accurate. However, for experiments that do not require COLD cache response time measurements, e.g., macro benchmark scenarios, response times should be accurate enough for drawing basic conclusions.
This example, features:
The geordfbench_nuc_rdf4j_v2.zip is a zipped file which contains a docker image. When run, the image will generate a container which will execute the Scalability-10K workload with RDF4J on the NUC8i7BEH host (for simplicity reasons, in this example, we do not allocate memory, cpus, IP and hostname for the container). We assume that we have the ~/Downloads/geordfbench_nuc_rdf4j_v2.zip. Then we uncompress in /data and build the geordfbench_nuc_rdf4j:v2 docker image from within the /data/geordfbench_nuc_rdf4j_v2 folder: </p>
/data$ unzip -qq ~/Downloads/geordfbench_nuc_rdf4j_v2.zip; cd geordfbench_nuc_rdf4j_v2
/data/geordfbench_nuc_rdf4j_v2$ docker build -t geordfbench_nuc_rdf4j:v2 .
[+] Building 123.0s (14/14) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 1.27kB 0.0s
=> [internal] load metadata for docker.io/library/ubuntu:jammy 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> CACHED [1/8] FROM docker.io/library/ubuntu:jammy 0.0s
=> [internal] load build context 5.2s
=> => transferring context: 1.06GB 5.0s
=> CACHED [internal] preparing inline document 0.0s
=> [2/8] RUN apt-get update && apt-get install -y openjdk-11-jdk rsync maven 62.9s
=> [3/8] RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates wget gnupg lsb-release curl tree 8.5s
=> [4/8] RUN apt-get update && apt-get install -y postgresql 44.5s
=> [5/8] COPY <<EOF /etc/systemd/system/postgresql.service 0.0s
=> [6/8] WORKDIR /data 0.0s
=> [7/8] COPY . . 1.4s
=> [8/8] RUN locale-gen en_US.UTF-8 1.7s
=> exporting to image 3.9s
=> => exporting layers 3.9s
=> => writing image sha256:d1a8e83cfc005efa62aee4dc0ef057eb76b736f78dca11106a306d61bb441640 0.0s
=> => naming to docker.io/library/geordfbench_nuc_rdf4j:v2
We can now create a docker container based on the new image. The configuration of the image will instruct the container to automatically run the /data/startUpScript.sh. Below we see the initial part of the experiment output, in which the PostgreSQL server is started, the RDF4J environment variables are setup, the RDF4J scalability_10K repository is created and data loaded to it: </p>
/data/geordfbench_nuc_rdf4j_v2$ docker run -it --name rdf4jscal10k geordfbench_nuc_rdf4j:v2
* Starting PostgreSQL 14 database server [ OK ]
Running script with syntax: source prepareRunEnvironment.sh NUC8I7BEH RDF4JSUT CreateRepo_Scalability10K_RDF4J
All SUTs
--------
Environment = NUC8I7BEH
EnvironmentBaseDir = /data
GeoRDFBenchScriptsDir = /data/geordfbench/scripts
GeoRDFBenchJSONLibDir = /data/geordfbench/json_defs
DatasetBaseDir = /data/Geographica2_Datasets
QuerysetBaseDir = /data/Geographica2_Datasets/QuerySets
ResultsBaseDir = /data
ResultsDirName = 00#_2025-05-18_RDF4JSUT_CreateRepo_Scalability10K_RDF4J
ActiveSUT = RDF4JSUT
ExperimentResultDir = /data/RDF4JSUT/00#_2025-05-18_RDF4JSUT_CreateRepo_Scalability10K_RDF4J
ExperimentDesc = 00#_2025-05-18_RDF4JSUT_CreateRepo_Scalability10K_RDF4J
CompletionReportDaemonIP = 192.168.1.44
CompletionReportDaemonPort = 3333
ScalabilityGenScriptName = /data/Geographica2_Datasets/Scalability/scalabilityDSGen.sh
ScalabilityGzipRefDSName = /data/Geographica2_Datasets/Scalability/scalability500MRefDS.nt.gz
SystemMemorySizeInGB = 32 GBs
JVM_Xmx = -Xmx24g
RDF4J SUT
---------
RDF4JRepoBaseDir = /data/RDF4J_4.3.15_Repos/server
EnableLuceneSail = false
RDF4JLuceneReposPrefix =
Version = 4.3.15
All of the following environment variables (geordfbench/scripts/prepareRunEnvironment.sh) are defined:
{DatasetBaseDir, RDF4JRepoBaseDir, JVM_Xmx, EnableLuceneSail, CompletionReportDaemonIP, CompletionReportDaemonPort, ScalabilityGenScriptName, ScalabilityGzipRefDSName}
Running script with syntax:
./createAllRDF4JRepos.sh false /data/Geographica2_Datasets /data/RDF4J_4.3.15_Repos/server -Xmx24g false 192.168.1.44 3333 /data/Geographica2_Datasets/Scalability/scalabilityDSGen.sh /data/Geographica2_Datasets/Scalability/scalability500MRefDS.nt.gz
Script start time: Sun May 18 09:00:58 UTC 2025
/data/RDF4J_4.3.15_Repos/server dir does not exist.
Creating it now ...
Checking/Creating scalability 10K dataset ...
Scalability 10K dataset already exists
Generating scalability 10K repository ...
./createRDF4JRepo.sh /data/RDF4J_4.3.15_Repos/server scalability_10K false "spoc,posc" N-TRIPLES /data/Geographica2_Datasets/Scalability/10K -Xmx24g false "http://www.opengis.net/ont/geosparql#asWKT" 192.168.1.44 3333
CREATE_REPO_ARGS = createman "/data/RDF4J_4.3.15_Repos/server" "scalability_10K" "FALSE" "false" "spoc,posc" "http://www.opengis.net/ont/geosparql#asWKT"
LOAD_REPO_ARGS = dirloadman "/data/RDF4J_4.3.15_Repos/server" "scalability_10K" "N-TRIPLES" "/data/Geographica2_Datasets/Scalability/10K" true
log4j:ERROR Could not connect to remote log4j server at [localhost]. We will try again later.
0 [main] INFO RDF4JSystem - No LocalRepositoryManager instance present, creating a new one.
78 [main] INFO RDF4JSystem - Creating NativeStore base sail with spoc,posc indexes
253 [main] INFO RDF4JSystem - Creating new repository object for repo id = scalability_10K
362 [main] INFO RDF4JSystem - Initialing new repository object for repo id = scalability_10K
389 [main] INFO RepoUtil - RDF4J created with manager repo "/data/RDF4J_4.3.15_Repos/server/repositories/scalability_10K" in 92 msecs
389 [main] INFO RDF4JSystem - Closing connection...
390 [main] INFO RDF4JSystem - Repository closed.
log4j:ERROR Could not connect to remote log4j server at [localhost]. We will try again later.
0 [main] INFO RDF4JSystem - Loading file scalability_10K.nt ...
437 [main] INFO RDF4JSystem - Finished loading file scalability_10K.nt in 433 msecs
447 [main] INFO RepoUtil - RDF4J loaded with manager all files from "/data/Geographica2_Datasets/Scalability/10K" to repo "/data/RDF4J_4.3.15_Repos/server/repositories/scalability_10K" in 440 msecs
447 [main] INFO RDF4JSystem - Closing connection...
448 [main] INFO RDF4JSystem - Repository closed.
RDF4J repository "/data/RDF4J_4.3.15_Repos/server/repositories/scalability_10K" has size: 4MB
Script end time: Sun May 18 09:01:00 UTC 2025
...
The experiment proceeds with running the workloads queryset against the new repository. Initially the arguments are read and validated, then JSON specification files are deserialized to benchmark and experiment environment components, the RDF4J system is initialized and the experiment starts with the first query execution. The last part is the reporting of results and statistics. The initial and final parts of the run log are shown below:
...
ARGS = -rbd RDF4J_4.3.15_Repos/server -expdesc 2025-05-18_RDF4JSUT_RunWL_Scal10K -wl /data/geordfbench/json_defs/workloads/scalabilityFunc10K_WLoriginal.json \
-h /data/geordfbench/json_defs/hosts/nuc8i7behHOSToriginal.json -rs /data/geordfbench/json_defs/reportspecs/simplereportspec_original.json \
-rpsr /data/geordfbench/json_defs/reportsources/nuc8i7behHOSToriginal.json
log4j:ERROR Could not connect to remote log4j server at [localhost]. We will try again later.
0 [main] INFO RunRDF4JExperimentWorkload - args[0] = -rbd
1 [main] INFO RunRDF4JExperimentWorkload - args[1] = RDF4J_4.3.15_Repos/server
1 [main] INFO RunRDF4JExperimentWorkload - args[2] = -expdesc
1 [main] INFO RunRDF4JExperimentWorkload - args[3] = 2025-05-18_RDF4JSUT_RunWL_Scal10K
1 [main] INFO RunRDF4JExperimentWorkload - args[4] = -wl
1 [main] INFO RunRDF4JExperimentWorkload - args[5] = /data/geordfbench/json_defs/workloads/scalabilityFunc10K_WLoriginal.json
1 [main] INFO RunRDF4JExperimentWorkload - args[6] = -h
1 [main] INFO RunRDF4JExperimentWorkload - args[7] = /data/geordfbench/json_defs/hosts/nuc8i7behHOSToriginal.json
2 [main] INFO RunRDF4JExperimentWorkload - args[8] = -rs
2 [main] INFO RunRDF4JExperimentWorkload - args[9] = /data/geordfbench/json_defs/reportspecs/simplereportspec_original.json
2 [main] INFO RunRDF4JExperimentWorkload - args[10] = -rpsr
2 [main] INFO RunRDF4JExperimentWorkload - args[11] = /data/geordfbench/json_defs/reportsources/nuc8i7behHOSToriginal.json
5 [main] INFO RunRDF4JExperimentWorkload - |==> Experiment related options
9 [main] INFO RunRDF4JExperimentWorkload - Experiment description: 2025-05-18_RDF4JSUT_RunWL_Scal10K
9 [main] INFO RunRDF4JExperimentWorkload - |==> Workload, Host, Report related options
9 [main] INFO RunRDF4JExperimentWorkload - Workload specs configuration JSON file: /data/geordfbench/json_defs/workloads/scalabilityFunc10K_WLoriginal.json
10 [main] INFO RunRDF4JExperimentWorkload - List of queries to include in the run: all
10 [main] INFO RunRDF4JExperimentWorkload - Host configuration JSON file: /data/geordfbench/json_defs/hosts/nuc8i7behHOSToriginal.json
11 [main] INFO RunRDF4JExperimentWorkload - Report specs configuration JSON file: /data/geordfbench/json_defs/reportspecs/simplereportspec_original.json
11 [main] INFO RunRDF4JExperimentWorkload - Report source specs configuration JSON file: /data/geordfbench/json_defs/reportsources/nuc8i7behHOSToriginal.json
11 [main] INFO RunRDF4JExperimentWorkload - |==> System options
11 [main] INFO RunRDF4JExperimentWorkload - BaseDir: RDF4J_4.3.15_Repos/server
320 [main] INFO RunRDF4JExperimentWorkload - {SimpleGeospatialWL: ScalabilityFunc, ,
{GeographicaDS: scalability_10K, Scalability/10K,
{GenericGeospatialSimpleDS: scalability_10K, N-TRIPLES}}
{StaticTempParamQS: scalabilityFunc, ,false, SimpleES{ COLD=3, WARM=3, action=RUN, maxduration=604800 secs, repmaxduration=86400 secs, func=QUERY_MEDIAN }}}
823 [main] INFO RDF4JSUT - Initializing..
1003 [main] INFO ExperimentWorkload - RDF4JBasedGeographicaSystem-dependent translation of the queryset scalabilityFunc
1003 [main] INFO ExperimentWorkload - RDF4JBasedGeographicaSystem-dependent namespace prefixes merged with the prefixes of queryset scalabilityFunc
1004 [main] INFO RDF4JSUT - Closing..
1004 [main] INFO RDF4JBasedGeographicaSystem - Closing connection...
1006 [main] INFO RDF4JBasedGeographicaSystem - Repository closed.
6019 [main] INFO RDF4JSUT - Closed (caches not cleared)
6202 [main] INFO RunRDF4JExperimentWorkload - Start ScalabilityFunc
6240 [main] INFO ExperimentWorkload - |==> Executing query [0, SC1_Geometries_Intersects_GivenPolygon] (COLD, 0):
PREFIX geo: <http://www.opengis.net/ont/geosparql#>
PREFIX geo-sf: <http://www.opengis.net/ont/sf#>
PREFIX geof: <http://www.opengis.net/def/function/geosparql/>
PREFIX lgo: <http://data.linkedeodata.eu/ontology#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT ?s1 ?o1 WHERE {
?s1 geo:asWKT ?o1 .
FILTER(geof:sfIntersects(?o1, "POLYGON((23.708496093749996 37.95719224376526,22.906494140625 40.659805938378526,11.524658203125002 48.16425348854739,-0.1181030273437499 51.49506473014367,-3.2189941406250004 55.92766341247031,-5.940856933593749 54.59116279530599,-3.1668090820312504 51.47967237816337,23.708496093749996 37.95719224376526))"^^<http://www.opengis.net/ont/geosparql#wktLiteral>)).
}
6241 [main] INFO UbuntuJammyOS - Syncing...
6338 [main] INFO UbuntuJammyOS - Clearing caches...
6340 [main] ERROR UbuntuJammyOS - Something went wrong while clearing caches of system Ubuntu-jammy
11345 [main] INFO UbuntuJammyOS - Caches cleared after delay of 5000 msecs
11345 [main] INFO RDF4JSUT - Initializing..
11365 [main] INFO RDF4JSUT - Starting QueryExecutor thread
11369 [main] INFO RDF4JSUT - Waiting for QueryExecutor thread to finish
11370 [Thread-3] INFO QueryRepResult - Transitioning (NOTSTARTED => STARTED)
11371 [Thread-3] INFO QueryRepResult - Transitioning (STARTED => PREPARING)
11375 [main] INFO RDF4JSUT - Timeout progress step is 21600000 msecs
11440 [Thread-3] INFO QueryRepResult - Transitioning (PREPARING => EVALUATING)
11521 [Thread-3] INFO QueryRepResult - Transitioning (EVALUATING => EVALUATED)
11523 [Thread-3] INFO RDF4JbasedExecutor - s1 o1
11523 [Thread-3] INFO RDF4JbasedExecutor - ------------------------------------>
11523 [Thread-3] INFO QueryRepResult - Transitioning (EVALUATED => SCANNING)
11584 [Thread-3] INFO RDF4JbasedExecutor - http://data.linkedeodata.eu/osm/wales/transport/Geometry/111686299 "MULTIPOLYGON (((-4.0803447 53.0841743, -4.0803 53.0841838, -4.080264 53.084123, -4.0803086 53.0841134, -4.0803447 53.0841743)))"^^<http://www.opengis.net/ont/geosparql#wktLiteral>
11586 [Thread-3] INFO RDF4JbasedExecutor - http://data.linkedeodata.eu/osm/wales/transport/Geometry/111686304 "MULTIPOLYGON (((-4.1180155 53.1046596, -4.1179132 53.1046853, -4.1177627 53.1044688, -4.117865 53.1044432, -4.1180155 53.1046596)))"^^<http://www.opengis.net/ont/geosparql#wktLiteral>
11587 [Thread-3] INFO RDF4JbasedExecutor - http://data.linkedeodata.eu/osm/wales/transport/Geometry/111686306 "MULTIPOLYGON (((-4.0960447 53.0956141, -4.0960086 53.0956258, -4.0959763 53.0955897, -4.0960124 53.0955781, -4.0960447 53.0956141)))"^^<http://www.opengis.net/ont/geosparql#wktLiteral>
11983 [Thread-3] INFO QueryRepResult - Transitioning (SCANNING => SCANNED)
11983 [Thread-3] INFO RDF4JbasedExecutor - <------------------------------------
11983 [Thread-3] INFO QueryRepResult - Transitioning (SCANNED => COMPLETED)
11985 [main] INFO RDF4JSUT - Percentage of expired timeout is 0.0 %
12021 [main] INFO ExperimentWorkload - |<== Executed query [0, SC1_Geometries_Intersects_GivenPolygon] (COLD, 0): <COMPLETED-NONE> 82052585 + 459795469 = 541848054 nsecs, 554 results, 0 scan errors - ACCURACY NOT DETERMINED
12030 [main] INFO RDF4JSUT - Closing..
12031 [main] INFO RDF4JBasedGeographicaSystem - Closing connection...
12031 [main] INFO RDF4JBasedGeographicaSystem - Repository closed.
17049 [main] INFO RDF4JSUT - Closed (caches not cleared)
...
142168 [main] INFO PostgreSQLRepSrc - Deferred mode for PostgreSQLRepSrc was enabled. 18 records were flushed
142175 [main] INFO GenericExprerimentResultsCollector - Export statistics in "/data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload"
142177 [main] INFO GenericExprerimentResultsCollector - Created non existing directory
142184 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/00-SC1_Geometries_Intersects_GivenPolygon-cold
142190 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/00-SC1_Geometries_Intersects_GivenPolygon-cold-long
142190 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/01-SC2_Intensive_Geometries_Intersect_Geometries-cold
142190 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/01-SC2_Intensive_Geometries_Intersect_Geometries-cold-long
142191 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/02-SC3_Relaxed_Geometries_Intersect_Geometries-cold
142191 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/02-SC3_Relaxed_Geometries_Intersect_Geometries-cold-long
142191 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/00-SC1_Geometries_Intersects_GivenPolygon-warm
142191 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/00-SC1_Geometries_Intersects_GivenPolygon-warm-long
142192 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/01-SC2_Intensive_Geometries_Intersect_Geometries-warm
142192 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/01-SC2_Intensive_Geometries_Intersect_Geometries-warm-long
142192 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/02-SC3_Relaxed_Geometries_Intersect_Geometries-warm
142192 [main] INFO GenericExprerimentResultsCollector - Statistiscs printed: /data/Results_Store/RDF4JSUT/2025-05-18_RDF4JSUT_RunWL_Scal10K/Scalability/10K/RDF4JSUT-ExperimentWorkload/02-SC3_Relaxed_Geometries_Intersect_Geometries-warm-long
142193 [main] INFO GenericExprerimentResultsCollector - Cache COLD
142193 [main] INFO GenericExprerimentResultsCollector - Query 0
142194 [main] INFO GenericExprerimentResultsCollector - Rep 0 <COMPLETED-NONE> 82052585 + 459795469 = 541848054 nsecs, 554 results, 0 scan errors
142194 [main] INFO GenericExprerimentResultsCollector - Rep 1 <COMPLETED-NONE> 2826831 + 196664627 = 199491458 nsecs, 554 results, 0 scan errors
142194 [main] INFO GenericExprerimentResultsCollector - Rep 2 <COMPLETED-NONE> 3041041 + 165867317 = 168908358 nsecs, 554 results, 0 scan errors
142194 [main] INFO GenericExprerimentResultsCollector - Query 1
142194 [main] INFO GenericExprerimentResultsCollector - Rep 0 <COMPLETED-NONE> 11498612 + 194095955 = 205594567 nsecs, 2 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Rep 1 <COMPLETED-NONE> 6347521 + 136679225 = 143026746 nsecs, 2 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Rep 2 <COMPLETED-NONE> 6300864 + 131235819 = 137536683 nsecs, 2 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Query 2
142195 [main] INFO GenericExprerimentResultsCollector - Rep 0 <COMPLETED-NONE> 5628345 + 126592038 = 132220383 nsecs, 2 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Rep 1 <COMPLETED-NONE> 6881147 + 117171146 = 124052293 nsecs, 2 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Rep 2 <COMPLETED-NONE> 7562990 + 118327652 = 125890642 nsecs, 2 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Cache WARM
142195 [main] INFO GenericExprerimentResultsCollector - Query 0
142195 [main] INFO GenericExprerimentResultsCollector - Rep 0 <COMPLETED-NONE> 503180 + 166952924 = 167456104 nsecs, 554 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Rep 1 <COMPLETED-NONE> 752219 + 148889351 = 149641570 nsecs, 554 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Rep 2 <COMPLETED-NONE> 512101 + 117840229 = 118352330 nsecs, 554 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Query 1
142195 [main] INFO GenericExprerimentResultsCollector - Rep 0 <COMPLETED-NONE> 1621045 + 105342840 = 106963885 nsecs, 2 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Rep 1 <COMPLETED-NONE> 1245780 + 104247188 = 105492968 nsecs, 2 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Rep 2 <COMPLETED-NONE> 1427373 + 103369655 = 104797028 nsecs, 2 results, 0 scan errors
142195 [main] INFO GenericExprerimentResultsCollector - Query 2
142196 [main] INFO GenericExprerimentResultsCollector - Rep 0 <COMPLETED-NONE> 1252881 + 115920912 = 117173793 nsecs, 2 results, 0 scan errors
142196 [main] INFO GenericExprerimentResultsCollector - Rep 1 <COMPLETED-NONE> 1054289 + 104801772 = 105856061 nsecs, 2 results, 0 scan errors
142196 [main] INFO GenericExprerimentResultsCollector - Rep 2 <COMPLETED-NONE> 1103119 + 104729648 = 105832767 nsecs, 2 results, 0 scan errors
142196 [main] INFO RunRDF4JExperimentWorkload - End ScalabilityFunc
Start time = Sun May 18 09:01:00 UTC 2025
End time = Sun May 18 09:03:23 UTC 2025
Afterwards we can verify the result files generated in the filesystem:
/data$ docker exec -it rdf4jscal10k /bin/bash
root@f9a1d01d4750:/data# tree /data/Results_Store
/data/Results_Store
`-- RDF4JSUT
`-- 2025-05-18_RDF4JSUT_RunWL_Scal10K
`-- Scalability
`-- 10K
`-- RDF4JSUT-ExperimentWorkload
|-- 00-SC1_Geometries_Intersects_GivenPolygon-cold
|-- 00-SC1_Geometries_Intersects_GivenPolygon-cold-long
|-- 00-SC1_Geometries_Intersects_GivenPolygon-warm
|-- 00-SC1_Geometries_Intersects_GivenPolygon-warm-long
|-- 01-SC2_Intensive_Geometries_Intersect_Geometries-cold
|-- 01-SC2_Intensive_Geometries_Intersect_Geometries-cold-long
|-- 01-SC2_Intensive_Geometries_Intersect_Geometries-warm
|-- 01-SC2_Intensive_Geometries_Intersect_Geometries-warm-long
|-- 02-SC3_Relaxed_Geometries_Intersect_Geometries-cold
|-- 02-SC3_Relaxed_Geometries_Intersect_Geometries-cold-long
|-- 02-SC3_Relaxed_Geometries_Intersect_Geometries-warm
`-- 02-SC3_Relaxed_Geometries_Intersect_Geometries-warm-long
5 directories, 12 files
When you are done with the docker container, you can terminate it with:
/data$ tioannid@NUC8i7BEH:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1686c4836d3a geordfbench_nuc_rdf4j "/bin/sh -c '/data/s…" 5 minutes ago Exited (130) 4 seconds ago rdf4jscal10k
/data$ docker rm -f rdf4jscal10k
rdf4jscal10k
The more interested user, can look at the simple Bash script, /data/startUpScript.sh, which is the entry point of the docker description file. The simple actions taken are: