Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
W
workload-API
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
3
Issues
3
List
Boards
Labels
Service Desk
Milestones
Iterations
Merge Requests
0
Merge Requests
0
Requirements
Requirements
List
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issue
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
mowgli
workload-API
Commits
40eb41a2
Commit
40eb41a2
authored
May 07, 2020
by
Daniel Seybold
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
applied more fixes
parent
2edce963
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
20 additions
and
18 deletions
+20
-18
src/main/java/de/uulm/omi/dbms/workload/api/impl/WorkloadApiServiceImpl.java
...lm/omi/dbms/workload/api/impl/WorkloadApiServiceImpl.java
+9
-9
src/main/java/de/uulm/omi/utils/WorkloadApiProperties.java
src/main/java/de/uulm/omi/utils/WorkloadApiProperties.java
+1
-0
src/main/java/de/uulm/omi/workload/tsbs/TSBSCommandBuilder.java
...in/java/de/uulm/omi/workload/tsbs/TSBSCommandBuilder.java
+8
-8
src/main/webapp/WEB-INF/workloadAPI.properties
src/main/webapp/WEB-INF/workloadAPI.properties
+2
-1
No files found.
src/main/java/de/uulm/omi/dbms/workload/api/impl/WorkloadApiServiceImpl.java
View file @
40eb41a2
...
...
@@ -45,10 +45,8 @@ public class WorkloadApiServiceImpl extends WorkloadApiService {
//TSBS constants
private
final
String
TSBS_DATA_FOLDER
=
"TSBS/"
;
// TODO CHANGE
private
final
String
TSBS_RESULT_FOLDER
=
"TSBS/"
;
// TODO CHANGE
private
final
String
TSBS_RESULT_FOLDER
=
"TSBS/"
;
private
static
final
String
TSBS_BINARY
=
"/opt/workloads/tsbs/bin/"
;
private
static
final
String
TSBS_SCRIPTS
=
"/opt/workloads/tsbs/src/github.com/timescale/tsbs/scripts/"
;
...
...
@@ -230,7 +228,7 @@ public class WorkloadApiServiceImpl extends WorkloadApiService {
LOGGER
.
debug
(
"Satarting phase 1: data generations"
);
String
generateDataCommand
=
""
;
generateDataCommand
=
TSBSCommandBuilder
.
generateDataCommand
(
TSBS_BINARY
,
workload
.
getDbms
(),
workload
.
getTsbsDataGeneration
());
generateDataCommand
+=
TSBS_DATA_FOLDER
+
workload
.
getDbms
().
toString
()
+
"-data.gz"
;
generateDataCommand
+=
properties
.
getProperty
(
WorkloadApiProperties
.
WORKLOAD_DATA_FOLDER
)
+
workload
.
getDbms
().
toString
()
+
"-data.gz"
;
LOGGER
.
debug
(
"Generate data command: "
+
generateDataCommand
);
ProcessBuilder
genDataProcess
=
new
ProcessBuilder
();
...
...
@@ -257,7 +255,7 @@ public class WorkloadApiServiceImpl extends WorkloadApiService {
String
generateQueriesCommand
=
""
;
generateQueriesCommand
=
TSBSCommandBuilder
.
generateQueriesCommand
(
TSBS_BINARY
,
workload
.
getDbms
(),
workload
.
getTsbsDataGeneration
(),
workload
.
getTsbsQueryGeneration
());
generateQueriesCommand
+=
TSBS_DATA_FOLDER
+
workload
.
getDbms
().
toString
()
+
"-queries.gz"
;
generateQueriesCommand
+=
properties
.
getProperty
(
WorkloadApiProperties
.
WORKLOAD_DATA_FOLDER
)
+
workload
.
getDbms
().
toString
()
+
"-queries.gz"
;
LOGGER
.
debug
(
generateQueriesCommand
);
...
...
@@ -285,6 +283,8 @@ public class WorkloadApiServiceImpl extends WorkloadApiService {
String
clearDBCommand
=
TSBSCommandBuilder
.
clearDB
(
workload
.
getDbms
(),
workload
.
getTsbsLoadExecution
().
getDbName
(),
workload
.
getDbEndpoints
());
ProcessBuilder
processClearDBBuilder
=
new
ProcessBuilder
();
processClearDBBuilder
.
command
(
UNIX_SHELL
,
UNIX_COMMAND_PARAM
,
clearDBCommand
);
LOGGER
.
debug
(
clearDBCommand
);
Process
clearDBProcess
=
null
;
try
{
clearDBProcess
=
processClearDBBuilder
.
start
();
...
...
@@ -303,8 +303,8 @@ public class WorkloadApiServiceImpl extends WorkloadApiService {
String
loadCommand
=
""
;
loadCommand
=
TSBSCommandBuilder
.
generateLoadCommand
(
TSBS_BINARY
,
workload
.
getDbms
(),
workload
.
getTsbsLoadExecution
(),
workload
.
getDbEndpoints
());
loadCommand
+=
" > "
+
TSBS_RESULT_FOLDER
+
taskId
.
trim
()
+
"_load.txt"
;
loadCommand
=
TSBSCommandBuilder
.
generateLoadCommand
(
TSBS_BINARY
,
WorkloadApiProperties
.
WORKLOAD_DATA_FOLDER
,
workload
.
getDbms
(),
workload
.
getTsbsLoadExecution
(),
workload
.
getDbEndpoints
());
loadCommand
+=
" > "
+
properties
.
getProperty
(
WorkloadApiProperties
.
WORKLOAD_RESULTS_FOLDER
)
+
TSBS_RESULT_FOLDER
+
taskId
.
trim
()
+
"_load.txt"
;
LOGGER
.
debug
(
loadCommand
);
...
...
@@ -329,8 +329,8 @@ public class WorkloadApiServiceImpl extends WorkloadApiService {
//Phase 4: executing query phase
//Execute Queries
String
executeQueriesCommand
=
TSBSCommandBuilder
.
executeQueriesCommand
(
TSBS_BINARY
,
TSBS_DATA_FOLDER
,
workload
.
getDbms
(),
workload
.
getTsbsQueryExecution
(),
workload
.
getDbEndpoints
()
);
executeQueriesCommand
+=
" > "
+
TSBS_RESULT_FOLDER
+
taskId
.
trim
()
+
".txt"
;
String
executeQueriesCommand
=
TSBSCommandBuilder
.
executeQueriesCommand
(
TSBS_BINARY
,
properties
.
getProperty
(
WorkloadApiProperties
.
WORKLOAD_DATA_FOLDER
)
,
workload
.
getDbms
(),
workload
.
getTsbsQueryExecution
(),
workload
.
getDbEndpoints
()
);
executeQueriesCommand
+=
" > "
+
properties
.
getProperty
(
WorkloadApiProperties
.
WORKLOAD_RESULTS_FOLDER
)
+
TSBS_RESULT_FOLDER
+
taskId
.
trim
()
+
".txt"
;
LOGGER
.
debug
(
loadCommand
);
...
...
src/main/java/de/uulm/omi/utils/WorkloadApiProperties.java
View file @
40eb41a2
...
...
@@ -64,6 +64,7 @@ public enum WorkloadApiProperties implements WorkloadApiPropertiesService {
//property keys
public
static
final
String
WORKLOAD_BINARIES_FOLDER
=
"workloadBinariesFolder"
;
public
static
final
String
WORKLOAD_RESULTS_FOLDER
=
"workloadResultsFolder"
;
public
static
final
String
WORKLOAD_DATA_FOLDER
=
"workloadDataFolder"
;
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
WorkloadProcess
.
class
.
getName
());
...
...
src/main/java/de/uulm/omi/workload/tsbs/TSBSCommandBuilder.java
View file @
40eb41a2
...
...
@@ -19,7 +19,7 @@ public class TSBSCommandBuilder {
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
TSBSCommandBuilder
.
class
);
private
static
String
DEFAULT_INFLUX_URLS
=
"http://localhost:8086"
;
private
static
String
DEFAULT_INFLUX_URLS
=
"http://localhost:8086
"
;
private
static
String
DEFAULT_INFLUX_BACKOFF
=
"1s"
;
private
static
String
DEFAULT_INFLUX_CONSISTENCY
=
"all"
;
private
static
String
DEFAULT_INFLUX_REPLICATION_FACTOR
=
"1"
;
...
...
@@ -139,7 +139,7 @@ public class TSBSCommandBuilder {
public
static
String
generateLoadCommand
(
String
binaryPath
,
DbmsEnum
dbms
,
public
static
String
generateLoadCommand
(
String
binaryPath
,
String
dataFolder
,
DbmsEnum
dbms
,
TSBSLoadExecution
tsbsLoadExecution
,
DBEndpoints
dbEndpoints
)
{
...
...
@@ -148,7 +148,7 @@ public class TSBSCommandBuilder {
String
generateLoadCommand
=
binaryPath
+
"tsbs_load_"
+
dbms
.
toString
()
+
" "
;
String
generateLoadCommand
=
"cat "
+
dataFolder
+
dbms
.
toString
()
+
"-data.gz | gunzip | "
+
binaryPath
+
"tsbs_load_"
+
dbms
.
toString
()
+
" "
;
//common parameters
if
(
tsbsLoadExecution
.
getDbName
()
!=
null
){
...
...
@@ -242,10 +242,10 @@ public class TSBSCommandBuilder {
Optional
<
TSDBMSDBMSProperties
>
item
=
dbmsProperties
.
stream
()
.
filter
(
c
->
c
.
getName
().
equals
(
"backoff"
)).
findAny
();
influxCommand
+=
"--backoff "
+
item
.
get
().
getValue
();
influxCommand
+=
"--backoff "
+
item
.
get
().
getValue
()
+
" "
;
}
else
{
influxCommand
+=
" --backoff "
+
DEFAULT_INFLUX_BACKOFF
;
influxCommand
+=
" --backoff "
+
DEFAULT_INFLUX_BACKOFF
+
" "
;
}
...
...
@@ -268,10 +268,10 @@ public class TSBSCommandBuilder {
Optional
<
TSDBMSDBMSProperties
>
item
=
dbmsProperties
.
stream
()
.
filter
(
c
->
c
.
getName
().
equals
(
"replication-factor"
)).
findAny
();
influxCommand
+=
"--replication-factor "
+
item
.
get
().
getValue
();
influxCommand
+=
"--replication-factor "
+
item
.
get
().
getValue
()
+
" "
;
}
else
{
influxCommand
+=
" --replication-factor "
+
DEFAULT_INFLUX_REPLICATION_FACTOR
;
influxCommand
+=
" --replication-factor "
+
DEFAULT_INFLUX_REPLICATION_FACTOR
+
" "
;
}
...
...
@@ -284,7 +284,7 @@ public class TSBSCommandBuilder {
String
clearCommand
=
""
;
if
(
dbms
.
equals
(
DbmsEnum
.
INFLUX
)){
clearCommand
=
"curl -X POST http://"
+
dbEndpoints
.
get
(
0
)
+
":8086/query?q=drop%20database%20"
+
databaseName
;
clearCommand
=
"
curl -X POST http://"
+
dbEndpoints
.
get
(
0
)
+
":8086/query?q=drop%20database%20"
+
databaseName
;
return
clearCommand
;
}
...
...
src/main/webapp/WEB-INF/workloadAPI.properties
View file @
40eb41a2
debugFlag
=
false
workloadBinariesFolder
=
/opt/workloads/
workloadResultsFolder
=
/opt/results/
workloadDataFolder
=
/opt/workloads/data/
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment