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,24 @@
# name: benchmark/micro/compression/alp/alp_read.benchmark
# description: Scanning a large amount of doubles
# group: [alp]
name Alp Scan
group alp
storage persistent
require parquet
require httpfs
load
DROP TABLE IF EXISTS integers;
PRAGMA force_compression='alp';
CREATE TABLE temperatures (
temperature DOUBLE
);
INSERT INTO temperatures SELECT temp FROM 'https://github.com/duckdb/duckdb-data/releases/download/v1.0/city_temperature.parquet' t(temp), range(28);
checkpoint;
run
select avg(temperature) from temperatures;
result I
56.028391124637494

View File

@@ -0,0 +1,16 @@
# name: benchmark/micro/compression/alp/alp_read_best_case.benchmark
# description: ALP best case scenario is when it founds low precision decimals within a limited absolute range
# group: [alp]
name Alp Scan
group alp
storage persistent
load
DROP TABLE IF EXISTS alp_random_doubles;
PRAGMA force_compression='alp';
create table alp_random_doubles as select round(random(), 1)::DOUBLE as data from range(200000000) tbl(i);
checkpoint;
run
select avg(data) from alp_random_doubles;

View File

@@ -0,0 +1,16 @@
# name: benchmark/micro/compression/alp/alp_read_worst_case.benchmark
# description: ALP slowest scenario is when it founds high precision decimals. Here, ALP achieves no compression and everything is encoded as exception
# group: [alp]
name Alp Scan
group alp
storage persistent
load
DROP TABLE IF EXISTS alp_random_doubles;
PRAGMA force_compression='alp';
create table alp_random_doubles as select random()::DOUBLE as data from range(200000000) tbl(i);
checkpoint;
run
select avg(data) from alp_random_doubles;

View File

@@ -0,0 +1,27 @@
# name: benchmark/micro/compression/alp/alp_store.benchmark
# description: Scanning a large amount of doubles
# group: [alp]
name Alp Insert
group alp
storage persistent
require_reinit
require parquet
require httpfs
load
PRAGMA force_compression='uncompressed';
DROP TABLE IF EXISTS temperatures_uncompressed;
CREATE TABLE temperatures_uncompressed (
temperature DOUBLE
);
INSERT INTO temperatures_uncompressed SELECT temp FROM 'https://github.com/duckdb/duckdb-data/releases/download/v1.0/city_temperature.parquet' t(temp), range(28);
CREATE TABLE temperatures_alp (
temperature DOUBLE
);
PRAGMA force_compression='alp';
checkpoint;
run
INSERT INTO temperatures_alp SELECT * FROM temperatures_uncompressed;
checkpoint;

View File

@@ -0,0 +1,16 @@
# name: benchmark/micro/compression/alp/alp_store_best_case.benchmark
# description: ALP best case scenario is when it founds low precision decimals within a limited absolute range.
# group: [alp]
name Alp Insert
group alp
storage persistent
require_reinit
load
PRAGMA force_compression='alp';
DROP TABLE IF EXISTS alp_random_doubles;
run
create table alp_random_doubles as select round(random(), 1)::DOUBLE as data from range(50000000) tbl(i);
checkpoint;

View File

@@ -0,0 +1,16 @@
# name: benchmark/micro/compression/alp/alp_store_worst_case.benchmark
# description: ALP slowest scenario is when it founds high precision decimals. Here, ALP achieves no compression and everything is encoded as exception
# group: [alp]
name Alp Insert
group alp
storage persistent
require_reinit
load
PRAGMA force_compression='alp';
DROP TABLE IF EXISTS alp_random_doubles;
run
create table alp_random_doubles as select random()::DOUBLE as data from range(50000000) tbl(i);
checkpoint;