Skip to content

Google Fusion Tables Could be a Game Changer

fusiontables_logo Google has been very busy lately with many new products recently. Many of them, such as Google Public DNS, Google Chrome OS, and real-time search have received the lion’s share of publicity. I’d like to talk about a little jewel sitting in Google Labs you may not heard of. It’s a shiny little jewel that could become a real game changer and not many people are talking about it yet: Google Fusion Tables.

Google Fusion Tables is a web application that allows you to import, manipulate, and generate reports from large data sets. It is designed to handle much more data than you can put into Google Spreadsheets or versions of Excel earlier than Excel 2007. Some time ago, I started fooling around with it and I managed to import a relatively large data set with nearly 150,000 records without any issues whatsoever. The interface also provides some nice ways to visualize the data.

fusiontables_visualizations

In addition to providing some nifty visualizations, there are also many data tables that have been published for public use. For example, the 2010 Quality of Life Index:

fusiontables_screenshot

So why do I think this could be a game changer? Yesterday, the Google Code Blog announced the Fusion Tables API. With the API it is no longer necessary to use the Fusion Tables web interface to upload, manipulate, and visualize data. Now it can be done programatically, and Fusion Tables can be used to store large data sets in the cloud. The data can be extracted using SQL, which is the gold standard for handling the data stored within databases.

Not long ago, Jesse Stay wrote about the building block web. The Fusion Tables API is a perfect example of a new set of blocks that will integrate very well (and easily) with the building block web. Persistent data storage is an essential component for the building block web, and that is just what Fusion Tables provides.

Of course, it doesn’t come without its limitations. According to the Google Fusion Tables API developer’s guide, the API can send a maximum of 5 requests per second to the Fusion Tables server. Hopefully Google will lift that constraint or increase it at some point. 5 requests per second won’t be enough for the enterprise applications that could potentially be built on top of Fusion Tables.

If you’re a PHP programmer, here’s some PHP code I’ve put together to help get you started:


9 thoughts on “Google Fusion Tables Could be a Game Changer”

  1. Dear Fusion Tables users,
    My name is Jonathan Goldberg and I am an MEng student at MIT at the CS
    department. As part of my thesis, I am trying to evaluate the
    collaboration tools of Fusion Tables. To do so, I have designed this
    survey to help me get the input from experienced Fusion Tables users
    like yourself.

    The survey will not take more than 5 minutes and it closes on 05/08.

    As a gratitude for your help, I will raffle for a $40 gift certificate
    to your favorite online store (Amazon/iTunes/Gilt and etc).

    Here is the link for the survey:
    http://spreadsheets.google.com/viewform?hl=en&f

    Thank you,
    Jonathan

  2. Dear Fusion Tables users,
    My name is Jonathan Goldberg and I am an MEng student at MIT at the CS
    department. As part of my thesis, I am trying to evaluate the
    collaboration tools of Fusion Tables. To do so, I have designed this
    survey to help me get the input from experienced Fusion Tables users
    like yourself.

    The survey will not take more than 5 minutes and it closes on 05/08.

    As a gratitude for your help, I will raffle for a $40 gift certificate
    to your favorite online store (Amazon/iTunes/Gilt and etc).

    Here is the link for the survey:
    http://spreadsheets.google.com

    Thank you,
    Jonathan

  3. Pingback: UI Fancy | Blog | Google Fusion Tables Could be a Game Changer

  4. Hey,
    Thanks for the awesome bit of code!
    I’ve made a derivative of your code, fixing a few issues I encountered and I wanted to share those right quick to help others.

    The main one is regarding the parse_row() method and your regex patterns….
    The pattern as you have it messes up geometry fields containing Polygons or Lines, which is due to the fact you’re separating everything based on commas with no regards to whether they’re contained inside double quotes or not.
    So the trick is to only split the line on commas NOT inside of double quotes, so here’s the method with the corrected regex pattern:

        private function parse_row($row)
        {
            // Split the comma delimted row
            $cells = preg_split(“/,(?=(?:[^”]*”[^”]*”)*(?![^”]*”))/”, $row);
            // Loop over each column and remove ending double-quotes and white-space
            foreach( $cells as $k => $v )
                $cells[$k] = trim($v, ‘”‘);
               
            return $cells;
        }

    Since we’re using a class, I further simplified it by making the GoogleClientLogin() function into an abstract class, avoiding the confusion of having to obtain a token, etc. and keeping it simple.

    The derivative I made can be found at https://gist.github.com/1280261.

    I hope that helps and thanks again!

  5. Pingback: Can I read/write to Google Fusion tables with PHP? | SeekPHP.com

  6. Pingback: Can I read/write to Google Fusion tables with PHP?

Leave a Reply

Your email address will not be published. Required fields are marked *