KET Analytical Servers
KET analytical server is a form of implementation of KET
functionality. The algorithmic basis for servers is the same as for
modules. Servers are different types of executables that can be viewed
as stand-alone applications and also can provide additional
functionality to other applications.
Below we consider three levels of sophistication of an
architecture that can employ one or more servers.
One of simple server based architectures consists of one
server and one application that sends requests to the server. In this
case, the main purpose of using server is to be able to add KET
functionality to applications.
The new application hosting the client will consist of
the old application (which becomes a client), one of KET servers and a
KET interface. The interface may consist of procedural style calls to
server functions or it may use one of KET 4GL interpreters.
An additional motivation to use the architecture shown
above is a multi-platform implementation where client and server may
reside on a different platforms. In this case the interface will consist
of a communication channel and a request interpreter. The latter more
frequently resides on the server platform.
One special type of architecturally simple applications
using KET servers is the case when the client is just a front end for
the server. It is reasonable either when KET functionality covers
all needs except GUI representation or when the main purpose is to
conduct KET-based interactive experiments.
Virtual Databases, Agents, Distributed Applications
When KET interprets uses data, it works under the
paradigm of a "virtual database". It means that neither KET assumes
that input comes from a relational database, nor even existence of data
is taken for granted. Instead, KET input is based on KET requests,
which are transferred to a resource-aware entity providing knowledge how
to get data. This knowledge may be in a particular case related to a
database storage, it may be URL pointing to non-relation sources, and it
may even a command to start data collection (e.g., measurements). In the
latter case (natural for industrial applications) data do not even exist
at the moment of request.
This approach is compatible with "the resource definition
initiative" of W3C organization and allow very convenient description
in terms of frame systems.
There are many possibilities to implement resource
finder. One of ways is to employ KET agents, which are stand-alone
applications capable of working as a KET server as well collecting
information an their own.
One example of this type of architecture is shown in the
The client part of the application (C) communicates with
agents (A) via an interface, which is typically a network. Agents
collect information via another interface (e.g., the Internet) by using
KET servers. They are working not only by the initiative of the client,
but may operate on their own. At the same time, when requests come
form the client they respond correspondingly by using collected
information or going to the search mode if collected information is not
sufficient to satisfy the request.
In this particular example five servers are used: two of
them are agents and three are "strict" servers.
Knowledge Extraction Tools, LLC. 12236 Shady Hollow
Lane. Northridge, CA 91326.