Closed
Description
What’s the problem you're trying to solve
In #150, In order to enhance our query performance after users send the API request to run our data endpoint to get the result from the data source. We need to provide a Caching (pre-loading) Layer with the duckDB to enhance query performance.
Describe the solution you’d like
Define the tag scope of {% cache %} ... {% endcache %}
to parse the scope of {% cache %} ... {% endcache %}
tag and send the SQL to duckDB.
-- The "cache" scope means the SQL statement will send the query to duckDB cache data source
{% cache %}
select * from order
where type = {{ context.params.type }}
and where exists (
select * from product where price >= {{ context.params.price }}
and order.product_id = product.id
)
{% endcache %}
Additional Context
In the build time, define a CacheTagBuilder
to parse {% cache %} … {% endcache %}
to the AST tree, set the cache metadata name cache.vulcan.com
to make schema parser #151 to work, then keep to the artifact.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
In process