Skip to content
Branch: master
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
..
Failed to load latest commit information.
hello-world
voltkv
voter
README.md

README.md

The Hello World, Voter and VoltKV examples included here are intended to be used with example projects shipped with the main distribution. You will need to have a server running with the appropriate catalog or ddl loaded for these examples to work.

Hello World

First, follow the instructions in the VoltDB kit's doc/tutorials/helloworld folder to start the database and load the schema.

Then, go to hello-world folder, go into the preferred example folder:

  • async (for using low-level async call API)
  • sync (for using low-level sync call API)
  • driver (for using high-level Go database/sql API)

Run the following command to start the go helloworld client.
This requires no arguments and connects to localhost.

go run hello_world.go

Voter

First, follow the instructions in the VoltDB kit's examples/voter folder to start the database and load the schema.

Then, go to voter folder, run following command to build go voter client.

go build github.com/VoltDB/voltdb-client-go/examples/voter

The voter client has following arguments:

  $./voter -h
  Usage of ./voter:
  -contestants int
    	Number of contestants in the voting contest (from 1 to 10). (default 6)
  -displayinterval duration
    	Interval for performance feedback, in seconds. (default 5s)
  -duration duration
    	Benchmark duration, in seconds. (default 2m0s)
  -goroutines int
    	Number of concurrent goroutines synchronously calling procedures. (default 40)
  -maxvotes int
    	Maximum number of votes cast per voter. (default 2)
  -runtype value
    	Type of the client calling procedures.
  -servers string
    	Comma separated list of the form server[:port] to connect to. (default "localhost:21212")
  -statsfile string
    	Filename to write raw summary statistics to.
  -warmup duration
    	Benchmark duration, in seconds. (default 5s)

A reasonable default invocation that connects to localhost using sql API is:

./voter --runtype=sql

VoltKV

First, follow the instructions in the VoltDB kit's examples/voltkv folder to start the database and load the schema.

Then, go to voltkv folder, run following command to build go voltkv client.

go build github.com/VoltDB/voltdb-client-go/examples/voltkv

The voltkv client has following arguments:

Usage of ./voltkv:
-displayinterval duration
    Interval for performance feedback, in seconds. (default 5s)
-duration duration
    Benchmark duration, in seconds. (default 2m0s)
-entropy int
    Number of values considered for each value byte. (default 127)
-getputratio float
    Fraction of ops that are gets (vs puts). (default 0.9)
-goroutines int
    Number of concurrent goroutines synchronously calling procedures. (default 40)
-keysize int
    Size of keys in bytes. (default 32)
-maxvaluesize int
    Maximum value size in bytes. (default 1024)
-minvaluesize int
    Minimum value size in bytes. (default 1024)
-poolsize int
    Number of keys to preload. (default 100000)
-preload
    Whether to preload a specified number of keys and values. (default true)
-runtype value
    Type of the client calling procedures.
-servers string
    Comma separated list of the form server[:port] to connect to. (default "localhost:21212")
-usecompression
    Compress values on the client side.
-warmup duration
    Benchmark duration, in seconds. (default 5s)

A reasonable default invocation that connects to localhost using sql API is:

./voltkv --runtype=sql  
You can’t perform that action at this time.