Database Reference
In-Depth Information
your data, you'll end up spending a lot of time compiling, debugging, and
uploading your program, rather than figuring out what data you need.
Despite being somewhat intimidating at first, SQL is also easy to use for
nonprogrammers. Many software engineers are surprised when someone
from marketing comes up with a sophisticated query to figure out why
sales are slumping. However, it is actually quite common for non- or semi-
technical people to be SQL wizards.
Oddly enough, the ones who often have the most difficulty with SQL are
the programmers themselves. SQL is a declarative language; that is, you
declare what results you want, and it is up to the software to figure out
how to get those results. For programmers, this reverses the natural order;
we're used to telling the computer exactly what we want it to do so that
it gives us the results that we want. SQL leaves the method of execution
up to the underlying query engine. This turns out to be advantageous for
BigQuery because it allows the Dremel query engine to perform the analysis
in a different way from traditional relational databases.
It can be surprising that a model we often have trouble understanding would
be accessible to people in other disciplines. But after seeing sales, marketing,
and even pointy-haired managers wielding RIGHT OUTER JOIN s, we
grudgingly have to admit that people who aren't programmers are still quite
intelligent.
BigQuery uses an admittedly nonstandard dialect of SQL. Speaking for all
the engineers who currently work on or ever have worked on BigQuery or
Dremel, if we could go back and change one thing, it probably would be to
stick to something closer to standard SQL. If there was one prediction we
could make about a breaking change in the future, it would be that BigQuery
would deprecate some of the nonstandard quirks, such as a comma for table
union, in favor of more standard SQL. That said, if such a change was made,
there would be lots of advance warning, and the old dialect would continue
to work for a long time after the new dialect was released.
How Fast Is BigQuery?
One of the main limitations of database query performance is the sequential
nature of most query execution. Although most databases can make use
of multiple processors, they often use their available parallelism to run
multiple queries at once, rather than taking advantage of multiple
Search WWH ::




Custom Search