Using the image
Running a container
Run a container with bash:
docker run -it lsilvest/ztsdb bash
In this shell, start an instance of ztsdb:
You can use the quit command to terminate the ztsdb instance at any time:
Running multiple instances
One can start multiple containers to test multiple instances or to simulate real-time append to time-series. To access an instance from outside the container, publish the listen port when running the container:
docker run -it -p 19300:19300 lsilvest/ztsdb bash
Make note of the IP address of the container; Here is one way of getting it:
ip addr show
In this example, we will assume the container's IP address is 172.17.0.2.
In this shell, start a ztsdb instance listening on the published port:
ztsdb -p 19300
Connecting from another ztsdb instance
Other ztsdb instances can be started in the same way as above. Once the ztsdb has been started, a connection can be established as usual from the ztsdb command line:
c1 <- connection("172.17.0.2", 19300)
The append utility generates append messages for a time-series at a specified frequency:
usage: append <ip> <port> <rate> <varname[,name1,name2,...]> <ncols> [max-msgs]
To use it, a time-series must first be created on the ztsdb server instance:
data <- matrix(0, 0, 3, dimnames=list(NULL, c("a","b","c"))) idx <- as.nanotime(NULL) a <<- zts(idx, data)
Then append can be started from another container like this (IP address=172.17.0.2, port=19300, rate=100000 msg/second, time-series' name=a, number of columns=3, continue sending indefinitely):
append 172.17.0.2 19300 100000 a 3
More information on the append utility can be found here.
For more details about starting a ztsdb instance, see the Running ztsdb section.
For more details on using ztsdb, see the Reference section.