From c230255d6970a47c629b987a0a4fedc41f7f5d62 Mon Sep 17 00:00:00 2001 From: Christopher Swenson Date: Tue, 20 Aug 2024 15:03:11 -0700 Subject: [PATCH] Add parameters blog post --- scripts/index.ts | 50 ++--- .../flights_base.png | Bin 0 -> 78781 bytes .../flights_cleaned.png | Bin 0 -> 43094 bytes .../flights_raw.png | Bin 0 -> 54889 bytes .../index.malloynb | 206 ++++++++++++++++++ src/blog_posts.json | 7 + 6 files changed, 238 insertions(+), 25 deletions(-) create mode 100644 src/blog/2024-08-20-introducing-parameters/flights_base.png create mode 100644 src/blog/2024-08-20-introducing-parameters/flights_cleaned.png create mode 100644 src/blog/2024-08-20-introducing-parameters/flights_raw.png create mode 100644 src/blog/2024-08-20-introducing-parameters/index.malloynb diff --git a/scripts/index.ts b/scripts/index.ts index 19e4a361..0889d6fa 100644 --- a/scripts/index.ts +++ b/scripts/index.ts @@ -106,13 +106,13 @@ async function compileDoc(file: string, footers: Record): Promis const templatedMarkdown = template({ ...DEFAULT_CONTEXT }); - const { - renderedDocument, - errors, - searchSegments, - frontmatter, - links, - hashes + const { + renderedDocument, + errors, + searchSegments, + frontmatter, + links, + hashes } = await renderDoc( templatedMarkdown, shortPath @@ -187,11 +187,11 @@ let BLOG_POSTS: BlogPostInfo[] = []; function buildBlogIndex() { const blogPostsRaw = JSON.parse(fs.readFileSync(BLOG_LIST_PATH, "utf8")) as BlogPostInfoRaw[]; - BLOG_POSTS = blogPostsRaw.map(post => ({ - ...post, + BLOG_POSTS = blogPostsRaw.map(post => ({ + ...post, published: new Date( - parseInt(post.published.slice(0, 4)), - parseInt(post.published.slice(5, 7)) - 1, + parseInt(post.published.slice(0, 4)), + parseInt(post.published.slice(5, 7)) - 1, parseInt(post.published.slice(8, 10)) ) })); @@ -333,8 +333,8 @@ function handleStaticFile(file: string) { } function validateLinks( - links: Record, - docs: string[], + links: Record, + docs: string[], hashes?: Record ): DocsError[] { const linkErrors: DocsError[] = []; @@ -361,20 +361,20 @@ function validateLinks( const exists = existsNB; const linkWithExtension = linkWithoutExtension + ".malloynb"; if (!exists) { - linkErrors.push({ - path: file.substring(DOCS_ROOT_PATH.length), + linkErrors.push({ + path: file.substring(DOCS_ROOT_PATH.length), message: `Link '${originalLink}' is invalid.`, position, }); } else if (linkHasExtension && style === 'html') { - linkErrors.push({ - path: file.substring(DOCS_ROOT_PATH.length), + linkErrors.push({ + path: file.substring(DOCS_ROOT_PATH.length), message: `HTML Link '${originalLink}' should not end with file extension.`, position }); } else if (style === 'md' && !linkWithoutHash.endsWith(".malloynb")) { - linkErrors.push({ - path: file.substring(DOCS_ROOT_PATH.length), + linkErrors.push({ + path: file.substring(DOCS_ROOT_PATH.length), message: `Markdown Link '${originalLink}' should end with .malloynb`, position }); @@ -392,8 +392,8 @@ function validateLinks( } if (link.link.startsWith("/")) { if(!ABSOLUTE_LINK_EXCEPTIONS.includes(link.link)) { - linkErrors.push({ - path: file.substring(DOCS_ROOT_PATH.length), + linkErrors.push({ + path: file.substring(DOCS_ROOT_PATH.length), message: `HTML Link '${link.link}' is invalid (absolute links can't be followed in dev environments)`, position: link.position }); @@ -420,7 +420,7 @@ function nextPost(blogShortPath: string) { const current = BLOG_POSTS.findIndex(post => post.path + "/index.malloynb" === blogShortPath.slice("/blog".length)); if (current !== -1 && current - 1 >= 0) { return `${DEFAULT_CONTEXT.site.baseurl}/blog/${BLOG_POSTS[current - 1].path}`; - } + } } function blogTitle(blogShortPath: string) { @@ -441,7 +441,7 @@ function previoustPost(blogShortPath: string) { const current = BLOG_POSTS.findIndex(post => post.path + "/index.malloynb" === blogShortPath.slice("/blog".length)); if (current !== -1 && current + 1 < BLOG_POSTS.length) { return `${DEFAULT_CONTEXT.site.baseurl}/blog/${BLOG_POSTS[current + 1].path}`; - } + } } (async () => { @@ -484,7 +484,7 @@ function previoustPost(blogShortPath: string) { if (fs.existsSync(fullPath)) { handleStaticFile(fullPath); log(`Static file ${file} updated.`); - } else { + } else if (fs.existsSync(path.join(OUT_PATH, file))) { fs.unlinkSync(path.join(OUT_PATH, file)); log(`Static file ${file} deleted. Removed.`); } @@ -514,4 +514,4 @@ function previoustPost(blogShortPath: string) { } if (anyErrors) exit(1); } -})(); \ No newline at end of file +})(); diff --git a/src/blog/2024-08-20-introducing-parameters/flights_base.png b/src/blog/2024-08-20-introducing-parameters/flights_base.png new file mode 100644 index 0000000000000000000000000000000000000000..e7e80068f476a4e773c22207de13822b4531bc03 GIT binary patch literal 78781 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 literal 0 HcmV?d00001 diff --git a/src/blog/2024-08-20-introducing-parameters/flights_cleaned.png b/src/blog/2024-08-20-introducing-parameters/flights_cleaned.png new file mode 100644 index 0000000000000000000000000000000000000000..e2324da3078100e4e59565bdb6d9a8b26506c3bb GIT binary patch literal 43094 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

lQ}~VOn)r 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 XHRZjcfJ5(91|aZs^>bP0l+XkK?vkkz literal 0 HcmV?d00001 diff --git a/src/blog/2024-08-20-introducing-parameters/flights_raw.png b/src/blog/2024-08-20-introducing-parameters/flights_raw.png new file mode 100644 index 0000000000000000000000000000000000000000..c526da319c8944a43f348e2a93881c3712e41c22 GIT binary patch literal 54889 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 Il8^oV4~iWo+W-In literal 0 HcmV?d00001 diff --git a/src/blog/2024-08-20-introducing-parameters/index.malloynb b/src/blog/2024-08-20-introducing-parameters/index.malloynb new file mode 100644 index 00000000..a2e833d0 --- /dev/null +++ b/src/blog/2024-08-20-introducing-parameters/index.malloynb @@ -0,0 +1,206 @@ +>>>markdown +# Introducing Parameters + +One Step Closer to Malloy as an "API to Data" + +_August 20, 2024 by Christopher Swenson_ + +One useful way of thinking about a Malloy model is to treat it as an _API to data_—that is, an abstraction layer that provides a curated collection of ways of interacting with an underlying data set. Since the early days of Malloy, the language has had features that enable this kind of abstraction. With the introduction of source parameters, we're taking a step closer to a fully-realized vision of Malloy as a comprehensive tool for creating APIs to data. + +One early bundle of features for model curation is the field limiting and renaming syntax: `accept:`, `except:`, and `rename:`. These allow a model creator to hide fields that are distracting or irrelevant and clarify confusing field names in order to create a clean, well-curated source. + +Let's look at the raw `flights` table from the point of view of a model creator interested in empowering analysis of flights involving some basic characteristics like flight distance and number of flights, measured against carrier and location, over time. +>>>malloy +source: flights_raw is duckdb.table('../../documentation/data/flights.parquet') +>>>markdown +![flights_raw schema](./flights_raw.png) + +The signal-to-noise ratio here is not great for most kinds of analysis. Let's use `accept:`, `except:`, and `rename:` to improve this. +>>>malloy +source: flights_cleaned is flights_raw extend { + except: + taxi_in, taxi_out, flight_time, diverted, arr_time, + arr_delay, dep_delay, cancelled, tail_num, flight_num + + rename: + origin_airport_code is origin + destination_airport_code is destination + flight_id is id2 + departure_time is dep_time + distance_miles is distance +} +>>>markdown +![flights_cleaned schema](./flights_cleaned.png) + +This is a little bit more manageable. Now we add new dimensions, measures, and views to extend the capabilities of our API. +>>>malloy +source: flights_base is flights_cleaned extend { + dimension: distance_miles_bucket is round(distance_miles, -3) + + measure: flight_count is count() + measure: total_distance_miles is distance_miles.sum() + + view: by_distance_bucket is distance_miles_bucket + flight_count + view: by_carrier is carrier + flight_count + view: by_origin_airport_code is origin_airport_code + flight_count + + # line_chart + view: over_time is { group_by: departure_time.month } + flight_count + view: carriers_over_time is carrier + flight_count + { nest: over_time } +} +>>>markdown +![flights_base schema](./flights_base.png) + +This is starting to look like a comprehensive API for the kinds of analysis we're interested in. +>>>malloy +#(docs) size=large +run: flights_base -> carriers_over_time +>>>markdown +With a data model like this, we can do all kinds of useful analysis, but it's all fairly static. The API is missing some things that are important for complex, dynamic, exploratory analysis. For one, it's missing filtering capabilities. Of course you can add filters on a case-by-case basis to individual queries, but the API itself lacks any form of standard way of filtering the data. + +Let's suppose it's common practice to perform different kinds of analysis on flights of different tiers according to their distance. +>>>malloy +source: flights_dist is flights_base extend { + dimension: distance_category is distance_miles ? + pick "short" when < 500 + pick "medium" when < 1000 + else "long" +} +>>>markdown +In order to perform our normal analysis for different distance tiers, we might write the following: + +```malloy +run: flights_dist extend { + where: distance_category = "short" +} -> over_time + +run: flights_dist extend { + where: distance_category = "medium" +} -> over_time +``` + +This, however, is cumbersome, and moreover it is not clear to a user of the `flights_dist` source that this is an imporant part of the intended style of analysis. + +This is where parameters start to shine. Here, we define the `flights` source to have a parameter called `distance`, which should be "short", "medium", or "long," and automatically sets up a starting point for analysis that takes into account the intent to include only flights in that distance category. + +*Note that because parameters are still experimental, the `##! experimental.parameters` compiler flag is required to enable the feature, and the syntax and behavior is subject to change.* +>>>malloy +##! experimental.parameters + +source: flights(distance::string) is flights_dist extend { + where: distance_category = distance +} + +run: flights(distance is "short") -> over_time +#(docs) size=large +run: flights(distance is "long") -> over_time +>>>markdown +This kind of "filtering as part of the API" behavior is especially important when filters need to be pushed down into joins in order to maintain query efficiency. + +Parameters are in the early stage of their development, so they just scratch the surface of their full potential. For a thorough description of their current capabilities, see the [Parameter Experiemnt documentation](../../documentation/experiments/parameters.malloynb). + +## What's Next + +Here are things we are imagining for the future of parameters. We'd love your feedback, which you can send our way via [Slack](https://docs.malloydata.dev/slack) or [the dedicated GitHub discussion](https://github.com/malloydata/malloy/discussions/1409). + +### Parameters Everywhere + +Today only sources can have parameters, but we plan to support a fully parameterized Malloy, with dimensions, measures, views, and queries being parameterizable as well. + +```malloy +source: my_source(param::string) is ... { + dimension: my_dimension(param::number) is ... + measure: my_measure(param::number) is ... + view: my_view(param::boolean) is ... +} +query: my_query(param::date) is ... +``` + +### Dimensions, Measures, and Views as Parameter Arguments + +Today, parameter arguments can only have constant values, but we see a lot of potential for more complex analytical patterns if we support passing in dimensions, measures, and views as well. + +```malloy +source: flights is ... { + view: group_and_aggregate( + grp::dimension, + agg::measure + ) is { + group_by: grp + aggregate: agg + } + + view: by_carrier(metrics::view) is carrier + metrics +} + +run: flights -> group_and_aggregate( + grp is carrier + agg is flight_count +) + +run: flights -> by_carrier(metrics is { + aggregate: flight_count + aggregate: total_distance_miles +}) +``` + +### Abstract Dimensions, Measures, and Views + +Many kinds of computation are applicable to many different sources in many different instances. "Abstract" dimensions, measures, and views would allow to define such computations outside of a source so they could be used in any source. + +```malloy +view: top_10( + value::dimension + by::measure +) is { + group_by: value + aggregate: by + order_by: by desc + limit: 10 +} + +run: flights -> top_10(value is carrier, by is flight_count) +``` + +### Malloy Runtime API Integration + +To enable graphically-driven interactions with parameterized sources (and eventually queries and views), we intend to expand the Malloy Runtime API to allow parameterized queries to be instantiated with constant values safely without risk of SQL (or Malloy) injection. The exact API for this has not been determined, but something like the following is expected. + +```ts +const runtime = new Runtime(...); +const query = runtime.loadModel(` + source: my_source is ... extend { + view: my_view(param::string) is ... + } +`) + .loadExploreByName("my_source") + .loadQueryByName("my_view") + .runWithParameters({ + "param": "Parameter Value" + }) +``` + +### SQL-Native-Typed Parameters + +We plan for parameters to be allowed to have SQL-native types. + +```malloy +source: my_source(uuid::"uuid") is ... +run: my_source(uuid is "3f2b8d3b-c12c-417d-b7a0-f14e5d52a275"::"uuid") +``` + +### Annotation Support + +We plan for parameters (and their arguments) to be annotatable, like other definitions in Malloy. + +```malloy +source: flights( + # unit=miles + distance::number +) is ... + +run: flights( + # precision=10 + distance::number +) -> { ... } +``` \ No newline at end of file diff --git a/src/blog_posts.json b/src/blog_posts.json index c74567ca..400007bb 100644 --- a/src/blog_posts.json +++ b/src/blog_posts.json @@ -1,4 +1,11 @@ [ + { + "title": "Introducing Parameters", + "path": "/2024-08-20-introducing-parameters", + "subtitle": "One Step Closer to Malloy as an \"API to Data\"", + "author": "Christopher Swenson", + "published": "2024-08-20" + }, { "title": "Dataviz is Hierarchical", "path": "/2024-02-29-hierarchical-viz",