Skip to content

Releases: johnedquinn/partiql-lang-jvm

v1-iondb-example

21 Nov 20:08
Compare
Choose a tag to compare

Adds an example implementation of a database of Ion files to explain how to use PartiQL's APIs

v1-plus-optimization

14 Nov 21:55
Compare
Choose a tag to compare

Description

Performance benchmarks for the newly optimized plus operator and the older minus operator.

Results

Benchmark                               Mode  Cnt  Score    Error  Units
PartiQLBenchmark.minusIntDynamicStatic  avgt   20  0.150 ±  0.005  us/op
PartiQLBenchmark.minusIntStatic         avgt   20  0.010 ±  0.001  us/op
PartiQLBenchmark.plusIntDynamicStatic   avgt   20  0.081 ±  0.005  us/op
PartiQLBenchmark.plusIntStatic          avgt   20  0.010 ±  0.001  us/op

Related

See partiql#1647.

v1-scan-table

11 Nov 20:58
Compare
Choose a tag to compare

Description

This is an experimental implementation of a SQL-style scan operator.


Benchmarking

Tables

  1. T1 = 20 columns x 100,000 rows (7.9 MB)
  2. T2 = 100 columns x 100,000 rows (39 MB)
  3. T3 = 1,000 columns x 100,000 rows (393 MB)
  4. T4 = 20 columns x 1,000,000 rows (79 MB)
  5. T5 = 1,000 columns x 1,000,000 rows (3.8 GB)
  6. T6 = 20 columns x 50,000,000 rows (3.8 GB)

Queries & Results

Query Table(s) Baseline (ms) Optimized (ms) Speedup
SELECT t."col200", t."col500", t."col900" FROM columnar.t5 AS t T5 92439 21733 4.3
SELECT t."col200", t."col500", t."col900" FROM columnar.t3 AS t T3 9313 2346 4.0
SELECT t."col200", t."col500", t."col900" FROM columnar.t5 AS t WHERE t."col100" > 50 AND t."col750" < 400 T5 62608 949 66.0
SELECT t."col200", t."col500", t."col900" FROM columnar.t5 AS t WHERE t."col200" > 50 AND t."col900" < 400 OR t."col500" > 999900 T5 62076 910 68.2
SELECT t."col200", t."col500", t."col900" FROM columnar.t5 AS t WHERE (t."col200" % 10000) = 0 T5 66298 793 83.6
SELECT t."col200", t."col500", t."col900" FROM columnar.t3 AS t WHERE t."col100" > 50 AND t."col750" < 400 T3 6471 225 28.8
SELECT t."col5", t."col10", t."col15" FROM columnar.t1 AS t T1 2219 2152 1.0
SELECT t."col5", t."col10", t."col15" FROM columnar.t4 AS t T4 22502 21024 1.1
SELECT t."col5", t."col10", t."col15" FROM columnar.t1 AS t WHERE t."col1" < 100 OR t."col1" > 99900 T1 318 154 2.1
SELECT t."col5", t."col10", t."col15" FROM columnar.t4 AS t WHERE t."col1" < 100 OR t."col1" > 999900 T4 1465 273 5.4
SELECT t."col5", t."col10", t."col15" FROM columnar.t4 AS t WHERE (t."col5" % 10) = 0 T4 4450 2359 1.9
SELECT t."col5", t."col10", t."col15" FROM columnar.t4 AS t WHERE (t."col5" % 100) = 0 T4 2223 490 4.5
SELECT t."col5", t."col10", t."col15" FROM columnar.t6 AS t WHERE (t."col15" % 1000000) = 0 T6 58206 7848 7.4
AVERAGE 27698.5 4450.66667 21.4

v0.12.1-create-value

02 Apr 20:52
Compare
Choose a tag to compare

Holds an experimental DDL syntax: CREATE VALUE.

Details:

  • Adds support for SHOW CATALOGS, SHOW CURRENT CATALOG, and SHOW CURRENT SCHEMA
  • Adds support for showing tables, schemas, values.
  • Adds support for setting catalog/schema
  • Adds support for creating values and tables
  • Adds support for querying values/tables

v0.12.1-create-function

29 Mar 19:24
Compare
Choose a tag to compare

Adds syntactical support for CREATE FUNCTION. Since this isn't a priority yet, I'm tagging this to avoid Git's garbage collector. I'll resurface these changes in the future.

See partiql#1180.

v0.10.0-arrow

29 Mar 18:59
b832e2e
Compare
Choose a tag to compare

This code shows how we can use Apache Arrow to produce a vectorized model of execution within PartiQL. This implementation is a personal experiment.