Minor cleanup

pull/2/head
Oliver Kennedy 2023-06-18 08:39:10 -07:00
parent 347a09da44
commit d4a3ab02bc
Signed by: okennedy
GPG Key ID: 3E5F9B3ABD3FDB60
1 changed files with 10 additions and 9 deletions

View File

@ -149,7 +149,8 @@ title: "Overlay Spreadsheets"
<h3>Goals</h3>
<ul>
<li>Replay edits on a new dataset.</li>
<li>Build a spreadsheet...</li>
<li class="fragment">... that can replay edits on a new dataset.</li>
<li class="fragment">... while supporting "free-form" editing.</li>
</ul>
@ -162,8 +163,8 @@ title: "Overlay Spreadsheets"
<h3>So we built a spreadsheet...</h3>
<ol>
<li>Supporting updates to the Data's Shape</li>
<li>Supporting updates to the Data's Content</li>
<li>Replaying <b>Shape</b> Updates</li>
<li>Replaying <b>Content</b> Updates</li>
</ol>
<aside class="notes">
@ -211,9 +212,9 @@ title: "Overlay Spreadsheets"
<h3>Coping with Big Data</h3>
<ol>
<li class="fragment">Naive spreadsheets</li>
<li class="fragment">Classical Spreadsheets (Excel, Google Sheets, etc...)</li>
<li class="fragment">DataSpread (Bendre et. al.; ICDE 2018)</li>
<li class="fragment">Ignorance</li>
<li class="fragment">Ignore the Problem (This Talk)</li>
</ol>
<aside class="notes">
@ -334,12 +335,12 @@ title: "Overlay Spreadsheets"
$$H[n] = G[n] + H[n-1]$$
</div>
<div class="fragment" style="margin-top: 10px;">
<div class="fragment" data-fragment-index="1" style="margin-top: 10px;">
$$H[n] = sum(G[0:n])$$
</div>
<p class="fragment" style="margin-top: 50px">Many common patterns have an <br/>equivalent closed-form representation.</p>
<p class="fragment" data-fragment-index="1" style="margin-top: 50px">Many common patterns have an <br/>equivalent closed-form representation.</p>
<aside class="notes">
So at least for common patterns, we can rewrite them into simple closed-form aggregates that can be sent directly to a SQL engine (like Spark in Vizier).
@ -354,14 +355,14 @@ title: "Overlay Spreadsheets"
$$H[n] = G[n] + H[n-2]$$
</div>
<div class="fragment" style="margin-top: 10px;">
<div class="fragment" data-fragment-index="1" style="margin-top: 10px;">
<pre><code class="sql">
SELECT G + lag(H, 2) AS H OVER (ORDER BY row) FROM ...
</code></pre>
</div>
<p class="fragment" style="margin-top: 50px">Window queries work for the rest.</p>
<p class="fragment" data-fragment-index="1" style="margin-top: 50px">Window queries work for the rest.</p>
<aside class="notes">
And while we don't have a formal proof, we're pretty certain that any patterns that we can't get a closed form for, we can express as a window query.