@@ -119,6 +119,7 @@ jobs:
119119 cloud_user : ${{ secrets.BENCHMARK_CLOUD_USER }}
120120 cloud_password : ${{ secrets.BENCHMARK_CLOUD_PASSWORD }}
121121 cloud_gateway : ${{ secrets.BENCHMARK_CLOUD_GATEWAY }}
122+ database : load
122123 - name : clean
123124 if : always()
124125 continue-on-error : true
@@ -136,10 +137,11 @@ jobs:
136137 strategy :
137138 matrix :
138139 include :
139- - { dataset: hits, size: Small }
140- - { dataset: hits, size: Large }
141- - { dataset: tpch, size: Small }
142- - { dataset: tpch, size: Large }
140+ - { dataset: hits, size: Small, database: clickbench }
141+ - { dataset: hits, size: Large, database: clickbench }
142+ - { dataset: tpch, size: Small, database: tpch }
143+ - { dataset: tpch, size: Large, database: tpch }
144+ - { dataset: tpch1000, size: Large, database: tpch_1000 }
143145 fail-fast : true
144146 max-parallel : 1
145147 steps :
@@ -167,6 +169,7 @@ jobs:
167169 cloud_user : ${{ secrets.BENCHMARK_CLOUD_USER }}
168170 cloud_password : ${{ secrets.BENCHMARK_CLOUD_PASSWORD }}
169171 cloud_gateway : ${{ secrets.BENCHMARK_CLOUD_GATEWAY }}
172+ database : ${{ matrix.database }}
170173 - name : clean
171174 if : always()
172175 continue-on-error : true
@@ -233,6 +236,7 @@ jobs:
233236 - " tpch"
234237 - " hits"
235238 - " load"
239+ - " tpch1000"
236240 # - "internal"
237241 steps :
238242 - uses : actions/checkout@v4
@@ -245,6 +249,20 @@ jobs:
245249 path : benchmark/clickbench/results
246250 pattern : benchmark-${{ matrix.dataset }}-*
247251 merge-multiple : true
252+ - name : Prepare results directory
253+ working-directory : benchmark/clickbench
254+ run : |
255+ shopt -s nullglob
256+ for result in results/*.json; do
257+ dataset=$(echo $result | sed -E 's/.*result-(\w+)-.*\.json/\1/')
258+ mkdir -p results/${dataset}/
259+ mv $result results/${dataset}/$(basename $result)
260+ done
261+ for ndjson in results/*.ndjson; do
262+ dataset=$(echo $ndjson | sed -E 's/.*result-(\w+)-.*\.ndjson/\1/')
263+ mkdir -p results/${dataset}/
264+ mv $ndjson results/${dataset}/$(basename $ndjson)
265+ done
248266 - name : Generate report and upload to R2
249267 working-directory : benchmark/clickbench
250268 env :
@@ -253,12 +271,6 @@ jobs:
253271 AWS_DEFAULT_REGION : auto
254272 AWS_ENDPOINT_URL : ${{ secrets.R2_ENDPOINT_URL }}
255273 run : |
256- for result in results/*.json; do
257- dataset=$(echo $result | sed -E 's/.*result-(\w+)-.*\.json/\1/')
258- mkdir -p results/${dataset}/
259- mv $result results/${dataset}/$(basename $result)
260- done
261-
262274 aws s3 sync s3://benchmark/clickbench/release/${{ matrix.dataset }}/$(date --date='-1 month' -u +%Y)/$(date --date='-1 month' -u +%m)/ ./results/${{ matrix.dataset }}/
263275 aws s3 sync s3://benchmark/clickbench/release/${{ matrix.dataset }}/$(date -u +%Y)/$(date -u +%m)/ ./results/${{ matrix.dataset }}/
264276 ./update_results.py --dataset ${{ matrix.dataset }} --release ${{ inputs.source_id }}
@@ -271,3 +283,20 @@ jobs:
271283 done
272284
273285 aws s3 cp ./results/${{ matrix.dataset }}.html s3://benchmark/clickbench/release/${{ matrix.dataset }}.html --no-progress --checksum-algorithm=CRC32
286+ - name : Upload NDJSON archives to R2
287+ working-directory : benchmark/clickbench
288+ env :
289+ AWS_ACCESS_KEY_ID : ${{ secrets.R2_ACCESS_KEY_ID }}
290+ AWS_SECRET_ACCESS_KEY : ${{ secrets.R2_SECRET_ACCESS_KEY }}
291+ AWS_DEFAULT_REGION : auto
292+ AWS_ENDPOINT_URL : ${{ secrets.R2_ENDPOINT_URL }}
293+ DATASET : ${{ matrix.dataset }}
294+ run : |
295+ shopt -s nullglob
296+ MONTH=$(date -u +%Y-%m)
297+ ARCHIVE_PREFIX="s3://benchmark/results/${DATASET}/${MONTH}/"
298+ IMPORT_PREFIX="s3://benchmark/results/import/"
299+ for file in ./results/${DATASET}/*.ndjson; do
300+ aws s3 cp $file "${ARCHIVE_PREFIX}$(basename $file)" --no-progress --checksum-algorithm=CRC32
301+ aws s3 cp $file "${IMPORT_PREFIX}$(basename $file)" --no-progress --checksum-algorithm=CRC32
302+ done
0 commit comments