Skip to content

Instantly share code, notes, and snippets.

@sundy-li
Created February 9, 2022 01:57
Show Gist options
  • Select an option

  • Save sundy-li/b8739b28cc493070392b0602272b5fef to your computer and use it in GitHub Desktop.

Select an option

Save sundy-li/b8739b28cc493070392b0602272b5fef to your computer and use it in GitHub Desktop.

Revisions

  1. sundy-li created this gist Feb 9, 2022.
    38 changes: 38 additions & 0 deletions b.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,38 @@
    #!/bin/bash

    cat << EOF > bench.sql
    SELECT avg(number) FROM numbers_mt(100000000000)
    SELECT sum(number) FROM numbers_mt(100000000000)
    SELECT min(number) FROM numbers_mt(100000000000)
    SELECT max(number) FROM numbers_mt(100000000000)
    SELECT count(number) FROM numbers_mt(100000000000)
    SELECT sum(number+number+number) FROM numbers_mt(100000000000)
    SELECT sum(number) / count(number) FROM numbers_mt(100000000000)
    SELECT sum(number) / count(number), max(number), min(number) FROM numbers_mt(100000000000)
    SELECT number FROM numbers_mt(10000000000) ORDER BY number DESC LIMIT 10
    SELECT max(number), sum(number) FROM numbers_mt(1000000000) GROUP BY number % 3, number % 4, number % 5 LIMIT 10
    EOF


    WARMUP=3
    RUN=10

    export script="hyperfine -w $WARMUP -r $RUN"

    script=""
    function run() {
    port=$1
    result=$2
    script="hyperfine -w $WARMUP -r $RUN"
    while read SQL; do
    s="clickhouse-client --host 127.0.0.1 --port $port --query=\"$SQL\" "
    script="$script '$s'"
    done <<< $(cat bench.sql)

    script="$script --export-markdown $result"
    echo $script | bash -x
    }


    run "9000" "datavalues2.md"
    run "9001" "main.md"