Write a Blog >>
SPLASH 2017
Sun 22 - Fri 27 October 2017 Vancouver, Canada
Wed 25 Oct 2017 11:15 - 11:37 at Regency C - Performance Chair(s): Kathryn S McKinley

With more and more web scripting languages on offer, programmers have access to increasing language support for web scraping tasks. However, in our experiences collaborating with data scientists, we learned that two issues still plague long-running scraping scripts: i) When a network or website goes down mid-scrape, recovery sometimes requires restarting from the beginning, which users find frustratingly slow. ii) Websites do not offer atomic snapshots of their databases; they update their content so frequently that output data is cluttered with slight variations of the same information — \emph{e.g.}, a tweet from profile 1 that is retweeted on profile 2 and scraped from both profiles, once with 52 responses then later with 53 responses.

We introduce the \emph{skip block}, a language construct that addresses both of these disparate problems. Programmers write lightweight annotations to indicate when the current object can be considered equivalent to a previously scraped object and direct the program to skip over the scraping actions in the block. The construct is hierarchical, so programs can skip over long or short script segments, allowing adaptive reuse of prior work. After network and server failures, skip blocks accelerate failure recovery by 7.9x on average. Even scripts that do not encounter failures benefit; because sites display redundant objects, skipping over them accelerates scraping by up to 2.1x. For longitudinal scraping tasks that aim to fetch only new objects, the second run exhibits an average speedup of 5.2x. Our small user study reveals that programmers can quickly produce skip block annotations.

Wed 25 Oct

Displayed time zone: Tijuana, Baja California change

10:30 - 12:00
PerformanceOOPSLA at Regency C
Chair(s): Kathryn S McKinley Google
10:30
22m
Talk
A Volatile-by-Default JVM for Server Applications
OOPSLA
Lun Liu University of California at Los Angeles, USA, Todd Millstein University of California, Los Angeles, Madan Musuvathi Microsoft Research
DOI
10:52
22m
Talk
Static Placement of Computation on Heterogeneous Devices
OOPSLA
Gabriel Poesia Federal University of Minas Gerais, Brazil, Breno Campos Ferreira Guimarães Federal University of Minas Gerais, Brazil, Fabrício Ferracioli LG Electronics, Brazil, Fernando Magno Quintão Pereira UFMG
DOI
11:15
22m
Talk
Skip Blocks: Reusing Execution History to Accelerate Web Scripts
OOPSLA
Sarah E. Chasins University of California, Berkeley, Rastislav Bodík University of Washington
DOI
11:37
22m
Talk
Virtual Machine Warmup Blows Hot and Cold
OOPSLA
Edd Barrett King's College London, Carl Friedrich Bolz-Tereick , Rebecca Killick Department of Mathematics and Statistics, University of Lancaster, Sarah Mount King's College London, Laurence Tratt King's College London
DOI