CHAPTER 6

Architecture for Distributed Searches


Before you allow others to search your geospatial data products or collections through the Internet, you may be interested to learn more about exactly what happens when someone performs a remote search. This chapter:

6.1 Search Servers

A search server connects your database to a discovery mechanism such as the GeoConnections Discovery Portal. A search server is a program on a computer that is connected to the Internet. It accepts search queries through the Internet, then queries a database connected to the same local area network (LAN) as its host computer. The database returns the result to the search server, and the search server returns the result to the Internet client that originated the request (e.g. the GeoConnections Discovery Portal).

Figure 7, Search Servers, shows a search server positioned at a data supplier's (i.e. your organization's) web site.



Figure 7 Search Servers

There are special types of servers available specifically to publish geospatial data on the Internet. The kind of search server that you install or create depends on the search protocol that you use. Different protocols have different demands and different advantages and disadvantages.

The search server acts as a "go between" between the Internet and your database. It has two roles to fulfill:

  1. Translator: It must translate between the language spoken in the search request or result over the Internet and the language or mechanism used to query your database where the information about the individual product(s) is actually held.

  2. Search and Result Server: It must pass on the translated query to your database and get the results of the query from the database. For example, the search server may be on a different physical machine than the database (but both are still at your site), and it may communicate with the database via an intranet. The search server must then send the query to your database over the intranet, and then receive the result over the intranet. Typically these roles are filled using a mechanism such as Structured Query Language Network (SQLNet), Visual Basic Script (VBScript), Eiffel Structured Query Language Library (ESQL), or Open Database Connectivity (ODBC). The kind of search server that you install or create depends on the search protocol that you use; different protocols have different demands.

6.2 The Search Process

How the discovery mechanism finds your search server

A discovery mechanism such as the GeoConnections Discovery Portal must know the Internet address (IP address) of your search server and, depending on the search protocol, the database name and the specific port to connect to on your server. All this information is contained in the product registration information (e.g. in the GeoConnections Discovery Portal directory). As a data supplier, you maintain total control over your data product registration and may create, delete or modify your registration at any time using a standard web browser.

What the discovery mechanism sends to your search server

The discovery mechanism must somehow send the search to your remote search server. The search query provides the geographic area the user is interested in, the keywords the user is looking for, the desired time period, and other, more detailed criteria. The exact way in which this happens, and exactly what is sent between the discovery mechanism and your search server, is dictated by the search protocol.

What the search server sends back

After sending a query to your search server, the discovery mechanism expects some kind of response back. Typically, the response includes:

The exact nature of what is sent back by the search server is dictated by the search protocol. Regardless of the protocol, your search server sends back enough information for users to distinguish between, and evaluate, the individual data products that you have made available.

 

<< Previous  |  Home  |  Top of Page  |  Table of Contents  |  Next >>