should be it

This commit is contained in:
2025-10-24 19:21:19 -05:00
parent a4b23fc57c
commit f09560c7b1
14047 changed files with 3161551 additions and 1 deletions

View File

@@ -0,0 +1,19 @@
# name: benchmark/micro/compression/dictionary/dictionary_read.benchmark
# description: Scanning strings at ~4.3x compression
# group: [dictionary]
name Dictionary Compression Scan
group dictionary
storage persistent
load
DROP TABLE IF EXISTS test;
PRAGMA force_compression='dict_fsst';
CREATE TABLE test AS SELECT (100 + (i%1000))::VARCHAR AS i FROM range(0, 200_000_000) tbl(i);
checkpoint;
run
select avg(i::INT) from test;
result I
599.500000

View File

@@ -0,0 +1,24 @@
# name: benchmark/micro/compression/dictionary/dictionary_read_best_case.benchmark
# description: Scanning strings at best case compression of only 2 unique values
# group: [dictionary]
name Dictionary Compression Scan
group dictionary
storage persistent v1.3.0
load
DROP TABLE IF EXISTS test;
PRAGMA force_compression='dict_fsst';
CREATE TABLE test AS SELECT (100 + (i%2))::VARCHAR AS i FROM range(0, 200) tbl(i);
checkpoint;
assert I
select compression from pragma_storage_info('test') where segment_type in ('VARCHAR')
----
DICT_FSST
run
select avg(i::INT) from test;
result I
100.500000

View File

@@ -0,0 +1,16 @@
# name: benchmark/micro/compression/dictionary/dictionary_read_worst_case.benchmark
# description: Scanning data that is uncompressible with dictionary encoding
# group: [dictionary]
name Dictionary Compression Scan
group aggregate
storage persistent
load
DROP TABLE IF EXISTS test;
PRAGMA force_compression='dict_fsst';
CREATE TABLE test AS SELECT i::VARCHAR AS i FROM range(0, 200_000_000) tbl(i);
checkpoint;
run
select avg(i::INT) from test;

View File

@@ -0,0 +1,16 @@
# name: benchmark/micro/compression/dictionary/dictionary_read_worst_case_with_null.benchmark
# description: Scanning data that is uncompressible with dictionary encoding
# group: [dictionary]
name Dictionary Compression Scan
group aggregate
storage persistent
load
DROP TABLE IF EXISTS test;
PRAGMA force_compression='dict_fsst';
CREATE TABLE test AS SELECT if((i % 200) = 0, NULL, i::VARCHAR) AS i FROM range(0, 200_000_000) tbl(i);
checkpoint;
run
select avg(i::INT) from test;

View File

@@ -0,0 +1,17 @@
# name: benchmark/micro/compression/dictionary/dictionary_store.benchmark
# description: Storing strings compressed at ~4.3x compression
# group: [dictionary]
name Dictionary Compression Write
group aggregate
storage persistent
require_reinit
load
PRAGMA force_compression='dict_fsst';
DROP TABLE IF EXISTS test;
run
CREATE TABLE test AS SELECT (100 + (i%1000))::VARCHAR AS i FROM range(0, 100_000_000) tbl(i);
checkpoint;

View File

@@ -0,0 +1,16 @@
# name: benchmark/micro/compression/dictionary/dictionary_store_worst_case.benchmark
# description: Storing a column containing only unique strings.
# group: [dictionary]
name Dictionary Compression Write
group dictionary
storage persistent
require_reinit
load
PRAGMA force_compression='dict_fsst';
DROP TABLE IF EXISTS test;
run
CREATE TABLE test AS SELECT i::VARCHAR AS i FROM range(0, 50_000_000) tbl(i);
checkpoint;

View File

@@ -0,0 +1,16 @@
# name: benchmark/micro/compression/dictionary/dictionary_store_worst_case_with_null.benchmark
# description: Storing a column containing only unique strings.
# group: [dictionary]
name Dictionary Compression Write
group dictionary
storage persistent
require_reinit
load
PRAGMA force_compression='dictionary';
DROP TABLE IF EXISTS test;
run
CREATE TABLE test AS SELECT if((i % 200) = 0, NULL, i::VARCHAR) AS i FROM range(0, 50_000_000) tbl(i);
checkpoint;