Mining Google Web Services: Building Applications with the Google API
Overview
All of the chapters so far have considered various ways to obtain data from Google. However, great applications do more than just get data ”a developer crafts them to get the data efficiently , reliably, and quickly. For example, you could use multiple search techniques to compare results. In some cases, this cross tabulation technique produces search results targeted to a specific need. (See the "Conducting an Expansion Search" section of Chapter 1 for an example of using multiple searches to good effect.) Using the correct search to obtain multiple results makes your application more efficient, but not necessarily more reliable. Sometimes using multiple search techniques will fail to obtain every result because the cross tabulation process eliminates good results as well as those you don't need. Crafting an application means knowing what kind of interaction to perform with Google based on your specific needs.
This chapter assumes that you've read one or more of the preceding language-specific chapters (Chapters 5 through 9) and understand the concepts discussed in Chapters 1 through 4. This chapter answers the question of what comes next . You'll discover some of the concerns you need to address to move your application from functional to usable . In most cases, this means making your application efficient, reliable, and fast.
One of the major performance and reliability concerns you have to address is the use of databases in your application. Many of the examples in previous chapters showed how to create a database interface for your application so you can store information offline and therefore improve performance. However, the previous chapters left some questions unanswered, such as when to use database storage techniques to improve overall application performance. Sometimes, offline storage is more of a hindrance than a help.
You'll also learn about some new Google search techniques in this chapter. The reason these searches are important is that they help you look for data on Google in new ways. These searches can make your application more efficient or faster (sometimes both). However, you need to consider what you lose in the process. Sometimes the losses will add up to an effective performance loss and the search-specific sections discuss this issue too.