Virtual columns
A useful abstraction is to think of certain query building blocks as creating virtual columns in the database. The building block is simply a definition of what to compute when the virtual columns are used in a query. When the query is run, Scuba enriches rows of stored data with additional values that correspond to the virtual columns. Scuba also uses virtual columns to pass intermediate results for multi-pass queries.