@@ -53,18 +53,32 @@ Currently Supported Features
53
53
54
54
Requirements
55
55
===
56
- To use Nancy CLI you need Linux or MacOS with installed Docker. If you plan
57
- to run experiments in AWS EC2 instances, you also need Docker Machine
58
- (https://docs.docker.com/machine/ ).
56
+ 1 ) To use Nancy CLI you need Linux or MacOS with installed Docker.
57
+
58
+ 2 ) To run on AWS EC2 instances, you also need:
59
+ * AWS CLI https://aws.amazon.com/en/cli/
60
+ * Docker Machine https://docs.docker.com/machine/
61
+ * jq https://stedolan.github.io/jq/
62
+
59
63
60
64
Installation
61
65
===
66
+
67
+ In the minimal configuration, only two steps are needed:
68
+
69
+ 1 ) Install Docker (for Ubuntu/Debian: ` sudo apt-get install docker ` )
70
+ 2 ) Clone this repo and adjust ` $PATH ` :
62
71
``` bash
63
72
git clone https://github.com/startupturbo/nancy
64
73
echo " export PATH=\$ PATH:" $( pwd) " /nancy" >> ~ /.bashrc
65
74
source ~ /.bashrc
66
75
```
67
76
77
+ Additionally, to allow use of AWS EC2 instances:
78
+ 3 ) Follow instructions https://docs.aws.amazon.com/cli/latest/userguide/installing.html
79
+ 4 ) Follow instructions https://docs.docker.com/machine/install-machine/
80
+ 5 ) install jq (for Ubuntu/Debian: ` sudo apt-get install jq ` )
81
+
68
82
Getting started
69
83
===
70
84
Start with these commands:
@@ -73,3 +87,25 @@ nancy help
73
87
nancy run help
74
88
```
75
89
90
+ "Hello World!"
91
+ ===
92
+ ``` bash
93
+ echo " create table hello_world as select i::int4 from generate_series(1, 1000000) _(i);" > ./sample.dump
94
+ bzip2 ./sample.dump
95
+
96
+ # "Clean run": w/o index
97
+ # (seqscan is expected, total time ~150ms, depending on resources)
98
+ nancy run \
99
+ --run-on localhost \
100
+ --workload-custom-sql " select count(1) from hello_world where i between 100000 and 100010;" \
101
+ --db-dump-path file://$( pwd) /sample.dump.bz2 --tmp-path /tmp
102
+
103
+ # Now check how a regular btree index affects performance
104
+ # (expected total time: ~0.05ms)
105
+ nancy run \
106
+ --run-on localhost \
107
+ --workload-custom-sql " select count(1) from hello_world where i between 100000 and 100010;" \
108
+ --db-dump-path file://$( pwd) /sample.dump.bz2 --tmp-path /tmp \
109
+ --target-ddl-do " create index i_hello_world_i on hello_world(i);" \
110
+ --target-ddl-undo " drop index i_hello_world_i;"
111
+ ```
0 commit comments