@@ -16,180 +16,180 @@ while true; do
16
16
17
17
\033[1mDESCRIPTION\033[22m
18
18
19
- Nancy is a member of Postgres.ai's Artificial DBA team
20
- responsible for conducting experiments.
21
-
22
- Use 'nancy run' to request a new run for some experiment
23
- being conducted.
24
-
25
- An experiment consists of one or more 'runs'. For instance,
26
- if Nancy is being used to verify that a new index will
27
- affect performance only in a positive way, two runs are needed.
28
- If one needs to only collect query plans for each query group,
29
- a single run is enough. And finally, if there is a goal to
30
- find an optimal value for some PostgreSQL setting,
31
- multiple runs will be needed to check how various
32
- values of specified setting affect performance
33
- of specified database and workload.
34
-
35
- 4 main parts of each run are:
36
- - environment: where it will happen, PostgreSQL version, etc;
37
- - database: copy or clone of some database;
38
- - workload: 'real' workload or custom SQL;
39
- - target: PostgreSQL config changes or some DDL such as
40
- 'CREATE INDEX ...'.
19
+ Nancy is a member of Postgres.ai's Artificial DBA team
20
+ responsible for conducting experiments.
21
+
22
+ Use 'nancy run' to request a new run for some experiment
23
+ being conducted.
24
+
25
+ An experiment consists of one or more 'runs'. For instance,
26
+ if Nancy is being used to verify that a new index will
27
+ affect performance only in a positive way, two runs are needed.
28
+ If one needs to only collect query plans for each query group,
29
+ a single run is enough. And finally, if there is a goal to
30
+ find an optimal value for some PostgreSQL setting,
31
+ multiple runs will be needed to check how various
32
+ values of specified setting affect performance
33
+ of specified database and workload.
34
+
35
+ 4 main parts of each run are:
36
+ - environment: where it will happen, PostgreSQL version, etc;
37
+ - database: copy or clone of some database;
38
+ - workload: 'real' workload or custom SQL;
39
+ - target: PostgreSQL config changes or some DDL such as
40
+ 'CREATE INDEX ...'.
41
41
42
42
\033[1mOPTIONS\033[22m
43
43
44
- NOTICE: A value for a string option that starts with 'file://'
45
- is treated as a path to a local file. A string value
46
- starting with 's3://' is treated as a path
47
- to remote file located in S3 (AWS S3 or its analog).
48
- Otherwise, a string values is considered as 'content',
49
- not a link to a file.
44
+ NOTICE: A value for a string option that starts with 'file://'
45
+ is treated as a path to a local file. A string value
46
+ starting with 's3://' is treated as a path
47
+ to remote file located in S3 (AWS S3 or its analog).
48
+ Otherwise, a string values is considered as 'content',
49
+ not a link to a file.
50
50
51
- \033[1m--debug\033[22m (boolean)
51
+ \033[1m--debug\033[22m (boolean)
52
52
53
- Turn on debug logging.
53
+ Turn on debug logging.
54
54
55
- \033[1m--debug-timeout\033[22m (string)
55
+ \033[1m--debug-timeout\033[22m (string)
56
56
57
- How many seconds the entity (Docker container, Docker machine)
58
- where experimental run is being made will be alive after the
59
- main activity is finished. This is useful for various debugging:
60
- one can access container via ssh / docker exec and see PostgreSQL
61
- with data, logs, etc.
57
+ How many seconds the entity (Docker container, Docker machine)
58
+ where experimental run is being made will be alive after the
59
+ main activity is finished. This is useful for various debugging:
60
+ one can access container via ssh / docker exec and see PostgreSQL
61
+ with data, logs, etc.
62
62
63
- \033[1m--run-on\033[22m (string)
63
+ \033[1m--run-on\033[22m (string)
64
64
65
- Specify, where the experimental run will take place
65
+ Specify, where the experimental run will take place
66
66
67
- * 'localhost' (default)
67
+ * 'localhost' (default)
68
68
69
- * aws
69
+ * aws
70
70
71
- * gcp (WIP)
71
+ * gcp (WIP)
72
72
73
- If 'localhost' is specified (or --run-on is omitted),
74
- Nancy will perform the run on the localhost in a Docker container
75
- so (` docker run` must work locally).
73
+ If 'localhost' is specified (or --run-on is omitted),
74
+ Nancy will perform the run on the localhost in a Docker container
75
+ so (` docker run` must work locally).
76
76
77
- If 'aws' is specified, Nancy will use a Docker machine with a single
78
- container running on an EC2 Spot instance.
77
+ If 'aws' is specified, Nancy will use a Docker machine with a single
78
+ container running on an EC2 Spot instance.
79
79
80
- \033[1m--pg-version\033[22m (string)
80
+ \033[1m--pg-version\033[22m (string)
81
81
82
- Specify Major PostgreSQL version.
82
+ Specify Major PostgreSQL version.
83
83
84
- * 9.6 (default)
84
+ * 9.6 (default)
85
85
86
- * 10
86
+ * 10
87
87
88
- * 11devel (WIP)
88
+ * 11devel (WIP)
89
89
90
- \033[1m--pg-config\033[22m (string)
90
+ \033[1m--pg-config\033[22m (string)
91
91
92
- Specify PostgreSQL config to be used (may be partial).
92
+ Specify PostgreSQL config to be used (may be partial).
93
93
94
- \033[1m--db-prepared-snapshot\033[22m (string)
94
+ \033[1m--db-prepared-snapshot\033[22m (string)
95
95
96
- Reserved / Not yet implemented.
96
+ Reserved / Not yet implemented.
97
97
98
- \033[1m--db-dump-path\033[22m (string)
98
+ \033[1m--db-dump-path\033[22m (string)
99
99
100
- Specify the path to database dump (creted by pg_dump) to be used
101
- as an input.
100
+ Specify the path to database dump (creted by pg_dump) to be used
101
+ as an input.
102
102
103
- \033[1m--after-db-init-code\033[22m (string)
103
+ \033[1m--after-db-init-code\033[22m (string)
104
104
105
- Specify additional commands to be executed after database
106
- is initiated (dump loaded or snapshot attached).
105
+ Specify additional commands to be executed after database
106
+ is initiated (dump loaded or snapshot attached).
107
107
108
- \033[1m--workload-full-path\033[22m (string)
108
+ \033[1m--workload-full-path\033[22m (string)
109
109
110
- Path to 'real' workload prepared by using ` nancy prepare-workload` .
110
+ Path to 'real' workload prepared by using ` nancy prepare-workload` .
111
111
112
- \033[1m--workload-basis-path\033[22m (string)
112
+ \033[1m--workload-basis-path\033[22m (string)
113
113
114
- Reserved / Not yet implemented.
114
+ Reserved / Not yet implemented.
115
115
116
- \033[1m--workload-custom-sql\033[22m (string)
116
+ \033[1m--workload-custom-sql\033[22m (string)
117
117
118
- Specify custom SQL queries to be used as an input.
118
+ Specify custom SQL queries to be used as an input.
119
119
120
- \033[1m--workload-replay-speed\033[22m (string)
120
+ \033[1m--workload-replay-speed\033[22m (string)
121
121
122
- Reserved / Not yet implemented.
122
+ Reserved / Not yet implemented.
123
123
124
- \033[1m--target-ddl-do\033[22m (string)
124
+ \033[1m--target-ddl-do\033[22m (string)
125
125
126
- SQL changing database somehow before workload is applied.
127
- 'Do DDL' example:
126
+ SQL changing database somehow before workload is applied.
127
+ 'Do DDL' example:
128
128
129
- create index i_t1_experiment on t1 using btree(col1);
130
- vacuum analyze t1;
129
+ create index i_t1_experiment on t1 using btree(col1);
130
+ vacuum analyze t1;
131
131
132
- \033[1m--target-ddl-undo\033[22m (string)
132
+ \033[1m--target-ddl-undo\033[22m (string)
133
133
134
- SQL reverting changes produced by those specified in the
135
- the value of the ` --target-ddl-do` option. Reverting allows
136
- to serialize multiple runs, but it might be not possible
137
- in some cases. 'Undo DDL' example:
134
+ SQL reverting changes produced by those specified in the
135
+ the value of the ` --target-ddl-do` option. Reverting allows
136
+ to serialize multiple runs, but it might be not possible
137
+ in some cases. 'Undo DDL' example:
138
138
139
- drop index i_t1_experiment;
139
+ drop index i_t1_experiment;
140
140
141
- \033[1m--target-config\033[22m (string)
141
+ \033[1m--target-config\033[22m (string)
142
142
143
- Config changes to be applied to postgresql.conf before
144
- workload is applied. Once configuration changes are made,
145
- PostgreSQL is restarted. Example:
143
+ Config changes to be applied to postgresql.conf before
144
+ workload is applied. Once configuration changes are made,
145
+ PostgreSQL is restarted. Example:
146
146
147
- random_page_cost = 1.1
147
+ random_page_cost = 1.1
148
148
149
- \033[1m--artifacts-destination\033[22m (string)
149
+ \033[1m--artifacts-destination\033[22m (string)
150
150
151
- Path to a local ('file://...') or S3 ('s3://...') directory
152
- where Nancy will put all collected results of the run,
153
- including:
151
+ Path to a local ('file://...') or S3 ('s3://...') directory
152
+ where Nancy will put all collected results of the run,
153
+ including:
154
154
155
- * detailed performance report in JSON format
155
+ * detailed performance report in JSON format
156
156
157
- * whole PostgreSQL log, gzipped
157
+ * whole PostgreSQL log, gzipped
158
158
159
- \033[1m--aws-ec2-type\033[22m (string)
159
+ \033[1m--aws-ec2-type\033[22m (string)
160
160
161
- EC2 instance type where the run will be performed. EC2 Spot
162
- instance will be used. WARNING: 'i3-metal' instances are
163
- not currently supported (WIP).
161
+ EC2 instance type where the run will be performed. EC2 Spot
162
+ instance will be used. WARNING: 'i3-metal' instances are
163
+ not currently supported (WIP).
164
164
165
- The option may be used only with ` --run-on aws` .
165
+ The option may be used only with ` --run-on aws` .
166
166
167
- \033[1m--aws-keypair-name\033[22m (string)
167
+ \033[1m--aws-keypair-name\033[22m (string)
168
168
169
- THe name of key pair used on EC2 instance to allow accessing
170
- to it. Must correspond to the value of the ` --aws-ssh-key-path`
171
- option.
169
+ THe name of key pair used on EC2 instance to allow accessing
170
+ to it. Must correspond to the value of the ` --aws-ssh-key-path`
171
+ option.
172
172
173
- The option may be used only with ` --run-on aws` .
173
+ The option may be used only with ` --run-on aws` .
174
174
175
- \033[1m--aws-ssh-key-path\033[22m (string)
175
+ \033[1m--aws-ssh-key-path\033[22m (string)
176
176
177
- Path to SSH key file (usually, has '.pem' extension).
177
+ Path to SSH key file (usually, has '.pem' extension).
178
178
179
- The option may be used only with ` --run-on aws` .
179
+ The option may be used only with ` --run-on aws` .
180
180
181
- \033[1m--s3cfg-path\033[22m
181
+ \033[1m--s3cfg-path\033[22m
182
182
183
- The path the '.s3cfg' configuration file to be used when
184
- accessing files in S3. This file must be local and must
185
- be specified if some options' values are in 's3://***'
186
- format.
183
+ The path the '.s3cfg' configuration file to be used when
184
+ accessing files in S3. This file must be local and must
185
+ be specified if some options' values are in 's3://***'
186
+ format.
187
187
188
- See also: https://github.com/s3tools/s3cmd
188
+ See also: https://github.com/s3tools/s3cmd
189
189
190
190
\033[1mSEE ALSO\033[22m
191
191
192
- 'nancy help'
192
+ 'nancy help'
193
193
194
194
"
195
195
exit ;;
0 commit comments