Query Processing at the Interface



next up previous contents
Next: Research Issues Up: THE USER INTERFACE: Previous: Utilities to Support

Query Processing at the Interface

Given the high-level architecture of the system presented in Figure 1, a critical question in the design of this component is the degree to which the processing required to answer a user's query should be performed locally at the client site or remotely at the server site. In particular, procedures that support some of the less expensive visualization and browsing operations could be embedded in the interface module, while other more expensive procedures could be provided by the catalogue component. Hence we plan to investigate a query processing module that translates queries and makes decisions as to how the processing of the query will be distributed between the client and the host. The decisions will based upon a complexity analysis of queries that takes into account such factors as the size of the datasets involved, the local processing power, the processing power of the host, and information transmission rates. To this end, we initially plan to divide (but not necessarily partition) our full set of procedures into two sets, one of which will involve relatively simple procedures that can be run at the interface site. For example, in terms of khoros procedures, we may expect that browsing will be done at the client site and that it would involve, for example, unary operations, such as copying, color map and color band manipulation sharpening and enhancement; binary operations, such as addition, subtraction, multiplication, blend of two images, and logical conjunction, disjunction, etc.; histogram operations, such as profiling, equalization, stretch, and enhancement; geometric operations, such as resizing, zooming in/out, flipping and rotating images; and format conversion, such as stripping and adding header and reorganization of images. Image processing is probably best done at the server site, and should involve matrix operations, such as invert, transpose, factorize an image and calculation of eigenvalues and eigenvectors of an image matrix; filtering, such as edge detection, medium filtering and convolution; morphology, such as erosion, dilation, opening, closing and skeletonization; and transformation, such as FFT and cosine transform. Image analysis is also probably best done at the server site, and might involve texture analysis based on statistical models and structural models; segmentation, such as edge linking, medial axis transform and region growing; and feature extraction, such as region matching and polygonal approximation. Finally, GIS applications might involve the following operations, some of which may be performed at the client site and some of which may be performed at the host site: registration; surface fitting using slope and curvature computation; and visualization employing change of view points.



next up previous contents
Next: Research Issues Up: THE USER INTERFACE: Previous: Utilities to Support



Ron Dolin
Wed Dec 7 23:25:02 PST 1994