That sounds great Gavin!

Looking forward to where this leads.

Regards,

On 06.02.2022 02:25, Gavin Ray wrote:
In case anyone is interested, I have finished the "next leg" of the GraphQL
implementation. Now the "DataFetcher" functions (what I would call a
"resolver")
are auto-generated as well.

This makes the GraphQL API actually queryable/executable, rather than what
I'd
shown before which was hand-running RelNode expressions from parsed queries.

Using an in-memory HSQLDB, and selecting a single table I get an average
execution time of ~2ms. This is on my high-end laptop though.

Just trying to establish a lower-bound and understand the weight of
Calcite's
code generation + query planning and parsing before seeing if it's even
worth
continuing.

So far, signs point to "Yes!" =)

Code for the benchmark is here:
https://gist.github.com/GavinRay97/05538fb9ce3b25aa94fe6dd9afe484cc

Iteration 1: 2.099 ±(99.9%) 0.034 ms/op
Iteration 2: 2.138 ±(99.9%) 0.086 ms/op
Iteration 3: 2.131 ±(99.9%) 0.037 ms/op
Iteration 4: 2.163 ±(99.9%) 0.039 ms/op
Iteration 5: 2.202 ±(99.9%) 0.037 ms/op

N = 11659
   mean =      2.146 ±(99.9%) 0.023 ms/op

benchmark summary:
Benchmark                                         Mode    Cnt   Score
  Error
query                                            sample  11659  2.146 ±
0.023
query:query·p0.00                        sample          1.939
ms/op
query:query·p0.50                        sample          2.056
ms/op
query:query·p0.90                        sample          2.281
ms/op
query:query·p0.95                        sample          2.404
ms/op
query:query·p0.99                        sample          3.016
ms/op
query:query·p0.999                       sample         10.896
ms/op
query:query·p0.9999                      sample         48.382
ms/op
query:query·p1.00                        sample         55.181
ms/op



--
Eugen Stan

+40770 941 271  / https://www.netdava.com
begin:vcard
fn:Eugen Stan
n:Stan;Eugen
email;internet:[email protected]
tel;cell:+40720898747
x-mozilla-html:FALSE
url:https://www.netdava.com
version:2.1
end:vcard

Reply via email to