Inferring Dataflow Properties of User Defined Table Processors

  • Songtao Xia
  • Manuel Fähndrich
  • Francesco Logozzo
Conference paper

DOI: 10.1007/978-3-642-03237-0_4

Part of the Lecture Notes in Computer Science book series (LNCS, volume 5673)
Cite this paper as:
Xia S., Fähndrich M., Logozzo F. (2009) Inferring Dataflow Properties of User Defined Table Processors. In: Palsberg J., Su Z. (eds) Static Analysis. SAS 2009. Lecture Notes in Computer Science, vol 5673. Springer, Berlin, Heidelberg

Abstract

In SCOPE, a SQL style cloud-level data-mining scripting language, table processing capabilities are often provided by user defined .NET methods. The SCOPE compiler can optimize a query plan if it knows certain dataflow relations between the input and output tables, such as column independence, column equality, or that a column’s values are non-null. This paper presents an automated analysis for inferring such relations from implementations of SCOPE table processing methods. Since most table processing methods are written as .NET iterators, our analysis must accurately deal with the resulting state-machine implementing such iterators. Other complications addressed are naming and estimating column numbers, aliasing and escaping, and the inference of universally quantified loop invariants.

We prototyped the analysis as Scooby, a static analyzer for .NET iterators. Scooby is able to discover useful properties for typical SCOPE programs automatically and efficiently.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Songtao Xia
    • 1
  • Manuel Fähndrich
    • 1
  • Francesco Logozzo
    • 1
  1. 1.Microsoft ResearchRedmondUSA

Personalised recommendations