SlideShare a Scribd company logo
1 of 28
Write a brief report (one or two paragraphs) that (1)
define middleware in your own words, (2) describe the daily or
weekly activity that you do that uses middleware, (3) name the
software you use to do the activity, and (4) as specifically as
possible, state what middleware software the activity uses and
justifies your explanation.
Your goal is to convince me with your report that you
understand what middleware is and what role it plays in the
delivery of modern software applications.
Resources that you can use to help you answer this questions
are
1. Middleware Concepts (This video mentioned three vendors of
middleware such as Oracle, SAP, and IBM with Web Sphere).
2. The New Middleware (This is in a pdf file that I attached on
this assignment.
3. Internet. You can use the web to help you understand what
software the term middleware encompasses. Also don’t forget to
cite your information from the web.
TH VV
U S I N G M I D D L E -
W A R E , C U S T O M E R S
C A N D E P L O Y C O S T -
E F F E C T I V E A N D
H I G H L Y
F U N C T I O N A L
C L I E N T / S E R V E R
A P P L I C A T I O N S
O N C E T H E Y W O R K
O U T T H E K I N K S .
BY RICH FINKELSTEIN
B
roadly speaking, middleware
ties application components
together. This definition en-
c o m p a s s e s too many prod-
ucts to cover in one article,
so instead I'll look at signifi-
cant products that can be used to manage
cross-platform connectivity in a database
environment. Within this context, mid-
dleware products provide several impor-
tant functions, including:
• d a t a a c c e s s to h e t e r o g e n e o u s data-
bases;
• g a t e w a y s to r e m o t e mainframe data-
bases;
• appficafion partitioning across multiple
hardware platforms; and
• distributed updates across a homoge-
neous or h e t e r o g e n e o u s set of relational
databases.
M a n y m i d d l e w a r e p r o d u c t s have ap-
p e a r e d o v e r the l a s t s e v e r a l y e a r s t h a t
have attempted to solve the various prob-
l e m s a s s o c i a t e d with a c c e s s i n g and up-
dating databases over local and wide area
n e t w o r k s (LANs and WANs). F o r the
most part, p r o g r e s s in deploying produc-
tion applications that utilize middleware
has been slow - - much slower than what
you m i g h t first think. C u s t o m e r refer-
e n c e s for m i d d l e w a r e p r o d u c t s are still
few and far between. M o s t applications
that use middleware s e e m to have a rela-
tively simple application profile; that is,
low v o l u m e s of read-only t r a n s a c t i o n s .
However, in some cases, middleware has
b e e n u s e d Successfully to s u p p o r t very
large, mission-critical systems. Develop-
ing t h e s e types of systems usually takes
a substantial amount of time, resources,
and c o m m i t m e n t ; in o t h e r w o r d s , you
m u s t have a h i g h tolerance for b u g s and
p e r f o r m a n c e p r o b l e m s t h a t h a v e to b e
w o r k e d out of t h e m i d d l e w a r e software
methodically.
Products that were introduced several
years ago to address the simpler problems
of m i d d l e w a r e , s u c h as s i m p l e d a t a ex-
traction or update of mainframe-based re-
lational d a t a b a s e s , have r e a c h e d a level
of performance and stability that m a k e s
t h e m g o o d c h o i c e s for i m p l e m e n t i n g a
wide variety of c l i e n t / s e r v e r applications.
Transaction monitors and c e r t . i n r e m o t e
p r o c e d u r e call (RPC) m e c h a n i s m s have
also proved to be very useful for a b r o a d
set of applications. T h u s , w h e r e a s mid-
d l e w a r e m u s t still b e given t i m e to ma-
ture, t h e r e are many cost-effective prod-
ucts available today that work well.
Connecting to Heterogeneous
Data
Al1 S Q L b a s e d d a t a b a s e s e r v e r s c o m e
with client program libraries that include
an a p p l i c a t i o n p r o g r a m m i n g i n t e r f a c e
(API), and a set of network libraries that
let client application p r o g r a m s attach to
SQL database s e r v e r s using various net-
work protocols. On the server side of the
network, a companion program called the
network listener waits for and g r a b s mes-
s a g e s f r o m t h e c l i e n t a p p l i c a t i o n a n d
h a n d s t h e m off to the d a t a b a s e s e r v e r .
T h e listener then r o u t e s data e x t r a c t i o n
result sets or other m e s s a g e s b a c k to the
client.
m m m n l m m m
Rich Finkelstein is president of Performance
Computing Inc., a database technology con-
sulting company based in Chicago.
FEBRUARY 1995 D~MS
102 $ I G M O D R e c o r d , V o l . 2 4 , N o . 4, D e c e m
b e r 1!)93
SIGMOD Record, Vol. 24, No. 4, December 1995 10:3
applications and a wide breadth of ap-
plication servers. Already, organizations
are h a m m e r i n g vendors for links to Lo-
tus Notes, imaging database.,;, and text-
p r o c e s s i n g databases. OLE can poten-
tially provide this mechanism. For now,
OLE appears to be not only Microsoft's
direction within its own product line, but
also the direction of most of the c l i e n t /
server industry.
Gateways to Mainframe
D a t a b a s e s
It is no surprise that the most mature
middleware products on the market are
designed to c o n n e c t workstation appli-
cations to critical mainframe databases
such as DB2. Despite the excitement sur-
rounding c l i e n t / s e r v e r and PC comput-
ing, most corporate data still resides on
mainframes. T h e r e are several reasons
for the slow migration off mainframes.
Mainframes are still m o r e reliable and
have more mature and well-defined data
integrity a n d security m e c h a n i s m s . An
enormous a m o u n t of investment money
and knowledge is associated with main-
frame applications, and it takes time and
substantial resources to understand the
nature of these mainframe applications,
much less reengineer them for minicom-
puters and PCs. Mainframe applications
are tightly linked among themselves and
to shared databases, making it difficult to
migrate one application without affecting
many others.
Database gateways, such as those pro-
vided by Micro Decisionware Inc.'s (MDI)
Database Gateway (recently acquired by
Sybase) and Information Builder Inc.'s
(IBI) E n t e r p r i s e Data Access ( E D A ) /
SQL, are designed to promote gradual mi-
gration from traditional dumb-terminal/
mainframe database e n v i r o n m e n t s into
a client/server architecture. While many
a p p l i c a t i o n s a r e still m o r e t h a n ade-
quately serviced by traditional architec-
tures, new b u s i n e s s requirements often
m a n d a t e the i n t r o d u c t i o n of PC work-
stations. U s i n g gateways, an organiza-
tion has the option of keeping the data-
base server exclusively on the mainframe
platform, or u s i n g a c o m b i n a t i o n of In-
tel, Unix, and m a i n f r a m e d a t a b a s e s to
process an application. Each database
can contain a logical partition of an en-
tire database, or it can contain data that
has been replicated from the mainframe
database. Moving data to Intel- or Unix-
based platforms tends to improve acces-
sibility and performance, but also com-
plicates application d e v e l o p m e n t a n d
administration.
Database gateways sit b e t w e e n the
c l i e n t application and the target main-
frame database. Their primary functions
are to: t r a n s l a t e LAN protocol packets
into WAN packets (for example, IPX/
SPX into APPC); translate client-gener-
ated SQL commands into commands that
are understood by the target database;
and extract data from the target database
and r e t u r n it to the r e q u e s t i n g applica-
tion.
Based upon most surveys, MDI Data-
base Gateway is the most popular gate-
way of this type. You can install the net-
work and SQL c o n v e r s i o n functions as
OS/2 or Unix servers, or on individual
OS/2 workstations. A server-based data-
base g a t e w a y acts as a c o n c e n t r a t o r ,
which provides gateway services for sev-
eral workstations in a workgroup. Server
solutions are more cost-effective and off-
load communications work from the work-
station.
IBI's EDA/SQL has an advantage over
MDI Database Gateway in that you can
install it on Windows workstations, Unix
servers, or on the mainframe. Organiza-
tions often deploy IBI's gateway on the
mainframe to eliminate the need for an
intermediary Unix or OS/2 server.
T h e m a i n f r a m e c o m p o n e n t of MDI
Database Gateway i n c l u d e s a DB2 ac-
c e s s m o d u l e that c a n e x t r a c t data di-
rectly from a DB2 database. T h e r e are
also facilities called remote stored pro-
cedures, which c o n s i s t of user-written
CICS p r o g r a m s t h a t a c c e s s non-DB2
databases such as IMS, CA-IDMS, and
VSAM. Remote stored p r o c e d u r e s let
customers customize and tune access to
nonrelational data sources, and are pow-
erful m e c h a n i s m s for a t t a c h i n g n e w
client/server applications to legacy data-
bases. S y h a s e / M D I also licenses a set
of gateway modules from Trinzic Corp.,
called InfuHub, which can access a num-
ber of different mainframe data sources,
i n c l u d i n g IMS a n d VSAM files. How-
ever, InfoHub has a relatively small mar-
ket p r e s e n c e and it is difficult to j u d g e
the performance and stability levels of
these modules.
IBI's E D A / S Q L also offers gateway
modules that access many different types
of data sources. EDA/SQL has a longer
history when it comes to accessing non-
relational databases - - especially IBM's
mainstay IMS databases. Because of this,
EDA/SQL is often chosen for IMS gate-
way access, but performance tends to be-
come a problem as queries grow in com-
plexity and volume. IBI likes to advertise
its ability to join any amount of data from
any type of data source, but you should
take this claim with a grain of salt. Un-
less the queries are trivial, performance
will be so poor that this approach simply
becomes impractical. As with MDI Data-
b a s e Gateway, E D A / S Q L c u s t o m e r s
have the option to build their own CICS
database access programs that are func-
tionally similar to MDI's remote stored
procedures.
MDI D a t a b a s e G a t e w a y is u s u a l l y
chosen over EDA/SQL because of per-
formance, its ability to service a larger
n u m b e r of c o n c u r r e n t u s e r s , a n d its
b u l k - t r a n s f e r c a p a b i l i t i e s . E D A / S Q L
tends to be the choice when transaction
v o l u m e is l i g h t a n d c u s t o m e r s m u s t
quickly implement a mainframe gateway
to a nonrelational DBMS such as IMS,
but they do not have the time to write a
more customized and efficient CICS pro-
gram. In addition, some customers may
choose EDA/SQL b e c a u s e it does not
r e q u i r e an i n t e r m e d i a t e Unix or O S / 2
server, thereby simplifying the environ-
ment and allowing quick deployment of
a prototype or simple production appli-
cation.
D o n ' t F o r g e t a b o u t D R D A
IBM's Distributed Relational Database
Architecture (DRDA) offers an interest-
i n g a l t e r n a t i v e to d a t a b a s e gateways.
T h e DRDA specification s t a n d a r d i z e s
the network protocol formats (APPC and
T C P / I P ) , SQL syntax, and data repre-
sentation format used to link IBM's re-
lational d a t a b a s e s . T h i s allows I B M ' s
DB2 databases on OS/2, RS/6000, A S /
400, and MVS to share data without the
need for intermediary gateways. DRDA
tightly integrates the various DB2 plat-
forms and provides a high degree of re-
liability and performance. Many compa-
n i e s have i m p l e m e n t e d critical o n l i n e
transaction-processing applications us-
ing DRDA. Usually, these applications
are some mix of OS/2 workstations with
D B 2 / O S 2 a n d D B 2 / M V S m a i n f r a m e
databases.
A d d i n g V a l u e to D a t a b a s e
G a t e w a y s
Several middleware products work in
c o n j u n c t i o n with and add value to the
MDI and E D A / S Q L gateways. One of
t h e b e t t e r - k n o w n p r o d u c t s is T r i n z i c
Corp.'s In foPump. InfoPump is a data ac-
cess m a n a g e m e n t tool that lets organi-
zations schedule periodic data extracts
from a variety of data sources, and then
direct the output of these r e q u e s t s to a
local database server such as Oracle or
Sybase. InfoPump includes a scripting
language that developers use to specify
the data sources, data targets, and data
extract schedule. It connects to a main-
frame database via E D A / S Q L or MDI
Database Gateway, or to local database
servers via direct drivers. Unlike MDI
Database Gateway and EDA/SQL, Info-
Pump is still relatively new in the mar-
ket; and it is difficult to gauge its perfor-
mance capacity. Customer reports vary,
so you m i g h t b e n e f i t from c u s t o m e r
checks or in-house b e n c h m a r k s before
signing on to the product.
InterViso, from Data Integration Inc.,
is attempting to go far beyond the data-
integration capabilities of most middle-
ware products on the market. InterViso's
104 S I G M O D R e c o r d , V o l . 2 4 , N o . 4, D e c e m
b e r 1.9fl5
objective is to provide complete, trans-
parent access to a set of heterogeneous
d a t a b a s e s - - what is s o m e t i m e s re-
ferred to as a "federated database." To
a c c o m p l i s h this o b j e c t i v e , I n t e r V i s o
translates data types, provides common
n a m e s to s i m i l a r f i e l d s in d i f f e r e n t
databases, supports data encoding, man-
ages data that is replicated among sev-
eral databases, provides a single view of
records that are fragmented across mul-
tiple d a t a b a s e s , optimizes d i s t r i b u t e d
( m u l t i d a t a b a s e ) queries, and p e r m i t s
h e t e r o g e n e o u s updates without sacri-
ficing security, transaction-management
support, or t h e local autonomy of each
database.
T h e key to InterViso is its Data Dic-
tionary/Directory (DD/D), which stores
a complete description of all databases
in the environment. DBAs are then free
to define federated data "views," which
can include data from one or more het-
erogeneous databases. InterViso's "con-
troller" uses the D D / D to map views to
underlying physical tables and then op-
timizes any queries that span more than
one database. T h e controller also con-
trols multisite updates using a specially
designed COMMIT protocol, which allows
transactions to continue even if a node
is unavailable. T h e Database Manage-
m e n t S y s t e m Interface (DBMSI) con-
verts fields with similar meaning but dif-
f e r e n t d a t a t y p e s i n t o f i e l d s w i t h a
common data type. InterViso can handle
even very difficult situations where one
field may have a numeric data type while
another field with a similar meaning has
a character data type. InterViso will con-
vert the numeric data type to a character
field so that the values stored in the two
fields can be merged together.
Data I n t e g r a t i o n Inc. claims that In-
terViso can support fragmented tables
(tables that are horizontally or vertically
partitioned) and replicated data auto-
matically. Considering the complexity of
the problem, you might want to approach
this claim with some skepticism. How-
ever, if the product works as claimed, it
can be tremendously useful when you're
implementing decision-support databases
or migrating applications from mainframe
databases. I would recommend that any
customer considering InterViso should
spend some time interviewing customer
references and prototyping with the prod-
uct in order to understand the functional
and performance limitations of InterViso's
distributed query and update capabilities.
Even if it does not have all the capabili-
ties you require, it may be adequate for
solving many types of distributed appli-
cation problems.
Partitioning Application Logic
Application partitioning - - splitting ap-
plication logic across multiple platforms - -
is now in vogue. However, application par-
titioning is not new to client/server pro-
cessing. Stored procedures, which Sybase
promoted heavily when it first introduced
its SQL Server database, are good exam-
ples of simple application partitioning.
T h e r e are t i m e s w h e n a p p l i c a t i o n
logic must be deployed on the server,
and either the logic is too complicated
for stored procedures or the server does
not offer stored procedures. One of the
benefits of stored procedures and appli-
cation partitioning is that they help min-
imize n e t w o r k traffic by m o v i n g t h e
database access application logic onto
I I Y o u s h o u l d n o t
u n d e r t a k e t h e t a s k o f
a p p l i c a t i o n p a r t i t i o n -
i n g w i t h o u t s o m e
f o r e t h o u g h t . P a r t i -
t i o n e d a p p l i c a t i o n s
a r e m o r e d i f f i c u l t t o
d e s i g n a n d m a i n t a i n .
the server. Application partitioning also
offloads work from workstations, which
are often overtaxed. One of the problems
with c l i e n t / s e r v e r p r o c e s s i n g is that
workstations are often incapable of sup-
porting complex application processing.
One way to get m o r e life out of work-
stations is to move processing logic to
the server. It is far more economical to
upgrade one server (if necessary) than
to u p g r a d e h u n d r e d s or t h o u s a n d s of
workstations.
You should not undertake the task of
application partitioning without some
forethought. Partitioned applications are
more difficult to design and maintain. An
application that is split up into several
pieces is more complex and has more po-
tential points of failure. You must design
partitioning into the program at its in-
ception so that logical points exist from
which to divide the application. T h i s is
exactly the situation that exists today
when developers design and program ap-
plications that implement stored proce-
dures: Overly partitioned applications can
result in unnecessary network traffic and
unstable systems.
RPC
Solution
s
Products that support RPCs offer a
straightforward way to partition applica-
tion logic without programming complex
network communication protocols. This
category of products includes companies
such as NobleNet Inc., Netwise Inc., and
NetWeave Corp. GVilmington, Del.). As
with most products in the middleware cat-
egory, R.PC products have enjoyed only
limited use until recently, although de-
mand is growing as c l i e n t / s e r v e r appli-
cations scale up in complexity. There is
typically very little reason to implement
RPCs in simple workgroup environments
(which represent the lion's share of the
c l i e n t / s e r v e r applications in production
at this time).
A good example of the use of RPCs is
an application that my company recently
helped develop. This application consisted
of a local FoxPro database that needed to
c o n n e c t to a remote Informix database
whenever a customer wanted to retrieve
data that was unavailable in the FoxPro
database. Because FoxPro was r u n n i n g
u n d e r DOS in this case, we wrote a cus-
tomized network protocol that sent a Fox-
Pro-initiated SQL r e q u e s t over to the
server. On the server, an extract program
received the request, extracted the data
from Informix, and sent the data back to
the workstation.
U n d e r DOS, we wrote the n e t w o r k
c o m m u n i c a t i o n layer that s e n t the re-
quests and returned the data packets. But
under Windows, you can take advantage
of a product such as NobleNet, which an-
alyzes the client and server application
programs and automatically generates the
client and server networking communi-
cation programs (called "stubs"). This
saves a considerable amount of time, and
does not require specialized network com-
munications expertise. Most developers
who can write a C program can use No-
bleNet to partition an application across a
network.
Netwise recently i n t r o d u c e d Trans-
Access Application/Integrator Worksta-
tion (A/IW), which lets developers define
the communications interface using a GUI
specification tool. GUI definition is pre-
sumably easier to use and maintain than
generated C language code.
Several vendors have introduced appli-
cation development tools that they claim
can partition applications across multiple
heterogeneous sites easily and dynami-
cally. Foremost among this class of prod-
ucts are Dynasty and Forte. Unfortunately,
the vendors are so far unable to provide
evidence that their products can really per-
form these tasks efficiently and reliably.
Because the products are so new, most
customers seem to be making little or no
use of application partitioning within their
deployed production applications. These
products may prove to be worthwhile, but
I hesitate to recommend them because of
the lack of proof of concept.
Transaction Managers in a
Distributed Environment
As client/server applications grow in size,
importance, and complexity, there is a
FEBRUARY 1995 DBMS
S I G M O D R e c o r d , V o l . 2 4 , N o . 4, D e c e m b e r
1 9 9 5 1 0 5
corresponding need for greater reliabil-
ity, security, availability, and performance.
On mainframes, transaction m a n a g e r s
(TMs) - - also called t e l e p r o c e s s i n g
m o n i t o r s (TPs) - - such as CICS and
IMS/DC (or IMS/TM) have always held
a position of great importance. TMs help
ensure predictable response time, guar-
antee that transactions are completed suc-
cessfully, allow messaging among appli-
cations, and support a very granular level
of security. Security officers using TMs
can define which users can access which
transactions. It is also possible to define
which terminals can be used to execute
specific transactions.
TMs on Unix and Intel platforms have
not achieved as strong an e n d o r s e m e n t
in client/server environments as in main-
frame e n v i r o n m e n t s , b u t t h i s s h o u l d
c h a n g e over the next several years as
client/server matures and is better able
to support high-volume distributed appli-
cations in a cost-effective manner.
Novell's Tuxedo and IBM's CICS are
two of the most popular TMs on the mar-
ket today. Tuxedo supports several Unix
platforms, but the most popular are Sun,
Hewlett-Packard, and RS/6000. CICS runs
on OS/2, RS/6000, a n d t h e AS/400, as
well as on IBM mainframes. Currently,
TMs do not support Windows NT or Nov-
ell NetWare. NoveU has stated that it in-
tends to port Tuxedo to Intel platforms,
b u t it may take some time. NetWare is
simply incapable of supporting a TM re-
liably, and it is unlikely, for competitive
r e a s o n s , that Novell is g o i n g to be in
much of a hurry to support Windows NT.
TMs, like other middleware products,
receive requests from an application pro-
gram and route the requests to a server
application, which updates the target data-
base. TMs provide specific capabilities for
managing large distributed applications.
Tuxedo g u a r a n t e e s that the application
request is delivered to the target database
server platform by utilizing disk-based
message queues that are not lost in case
of system failure. Tuxedo also provides
built-in logging to recover transactions
that were in the process of updating but
were not completed at the time of system
failure. It can also support heterogeneous
database updates with a two-phase com-
mit protocol, although I have not seen this
feature in any production application at
this time.
Up until now, writing Tuxedo code has
b e e n cumbersome. However, newer ap-
plication development tools such as JY-
ACC's JAM 6 have high-level language
support for Tuxedo that is much easier to
write and maintain, JAM 6 automatically
generates the client and server stubs that
interface with Tuxedo and the target data-
base server. A word of caution: JAM 6 is
a new product and has not been widely de-
ployed, but the architecture merits a look.
IBM's CICS has enjoyed widespread
popularity, primarily because it provides
reliable connectivity across IBM's hard-
ware and database platforms. Organiza-
tions commonly use CICS as the means
of linking OS/2-based applications to main-
frame DB2 and IMS databases. In my own
consulting practices, I have noticed that
when large institutions need to deploy crit-
ical applications that access mainframe
data, they usually tuna to CICS and OS/2.
A large number of developers are familiar
with the CICS API because of its long-term
use on the mainframe. This makes CICS
more accessible to large organizations that
have developed a substantial CICS knowl-
edgebase over the last 20 years.
Both Tuxedo and CICS offer viable so-
lutions for companies that demand system
integrity and cannot tolerate the large in-
tegrity holes that exist in current client/
server software and hardware products.
My primary concern with Tuxedo is the
fact that it is now owned by Novell. In the
past, Novell has shown little interest in
Tuxedo because of its own obvious preoc-
cupation with NetWare. UnixWare has also
suffered from neglect. In recent months,
however, Novell has shown renewed in-
terest in promoting Tuxedo, possibly be-
cause of its long-term value to Novell's en-
terprise connectivity strategy.
IBM's CICS is firmly entrenched in the
market, and it is a good choice for IBM plat-
forms. Until recently, IBM and Hewlett-
Packard were cooperating in using the
Encina TM as the core technology for both
IBM's RS/6000 CICS system and Hewlett-
Packard's forthcoming TM. However, when
IBM purchased Encina, Hewlett-Packard
backed out of the Encina agreement, and
the future of the CICS and Encina non-IBM
operating platforms is unclear.
Another c o n c e r n with CICS for RS/
6000 is that it implements a layered archi-
tecture that consists of Encina technology
as well as other connectivity layers. This
layering t e n d s to impact performance,
and some customers report that t h e RS/
6000 version of CICS is just too slow. IBM
may decide to merge all of the code or
use the 0 S / 2 CICS codebase for future
releases of CICS on IBM and Unix plat-
forms. W h a t e v e r h a p p e n s c o n c e r n i n g
CICS on Unix, CICS will probably con-
tinue to do well because of its maturity
and proven capabilities.
T h e F u t u r e o f M i d d l e w a r e
Two years ago, I wrote an article for DBMS
on middleware ("Making C o n n e c t i o n s
Across the Enterprise," January 1993) and
there is certainly a lot more to talk about
today than there was then. Interestingly
enough, while products with great-looking
features continue to pour into the market,
the adoption of m i d d l e w a r e has b e e n
rather slow. I believe that most organiza-
tions are still getting their feet wet with
client/server and they are stiI1 trying to es-
tablish a firmly grounded knowledgebase.
infrastructure, and migration plan before
moving ahead with client/se~'er. During
this waiting period, client/server technob
ogy - - including middleware technol-
ogy - - will have a chance to mature.
The best strategy at this time is to rely
mainly on proven middleware products
and gradually add more technology as in-
house knowledge grows. Several solid
products, such as MDI Database Gatew W,
EDA/SQL, CICS, and Tuxedo, have been
a r o u n d for s o m e time a n d have had a
chance to find comfortable positions in d i s
tributed client/server applications. Other
products, such as InfoPump and RPC pro-
grams, have also enjoyed a good amount
of success. As middleware gradually be,
comes more mainstream, customers will
he able to deploy cost-effective and highly
functional client/server applications. •
• Data Integration Inc., 11965 Venice Blvd.,
Ste. 305, Los Angeles, CA 90066:310-313-
9150 or fax 310-313-9151.
• Dynasty Technologies Inc.. 500 Technology
Dr., Ste. 100, Naperville, IL 60563: 708-355-
8300 or fax 708-355-9345.
• Fortd Software Inc., 1800 Harrison St.. 15th
FI., Oakland, CA 94612; 510-869-3400 or fax
510-834-1508.
• IBM Corp. Old Orchard Rd.. Armonk, NY
10504; 800-342-6672 or 914-765-1900.
• Information Builders Inc., 1250 Broadway.
30th FI., New York, NY 10001-3782: 800-969-
4636, 212-736-4433, or fax 212-268-7470.
• Intersolv Inc. (Q+E), 3200 Tower Oaks
Blvd., Rockville, M D 20852; 800-547.4000 or
fax 301-984-3047.
• JYACC Inc., 116 John St.. 20th FI., New
York, NY 10038; 800-458-3313.212-267-7722.
or fax 212-608-6753,
• Microsoft Corp., One Microsoft Way, Red-
mond, WA 98052; 800-426-9400, 206.882-
8080, or fax 206-883-8101.
• Netwise Inc., 2477 55th St.. Boulder, CO
80301;800-733-7722, 303-442-8280, or fax
303-442,3798.
• NobleNet Inc., 337 Turnpike Rd.. Southboro
Technology Park, Southboro, MA 01772: 508-
460-8222 or fax 508-460-3456.
• Novell Inc., 122 East 1700 South, Provo. UT
84606; 800-453-1267, 801-429-7000, or fax
801-429-5155.
• Oracle Corp., 500 Oracle Parkway, Red-
wood Shores, CA 94065; 800-633-0596.415-
506-7000, or fax 415-506-7200.
• PageAhead Software Corp., 2125 Western
Ave., Ste. 301, Seattle, WA 98121: 800-967-
9671,206-441-0340, or fax 206-441.9876.
• Sybase Inc., 6475 Christie Ave.. Emeryville.
CA 94608; 800-879-2273, 510-922-3500, or
fax 510-658-9441.
• Trinzic Corp., 101 University Ave.. Palo Alto.
CA 94301; 800-845-2466, 415-328-9595, or
fax 415-321-7728.
• Visigenic Software, 951 Mariners Island
Blvd., Ste, 460, San Mateo, CA 94404:415-
286-1900 or fax 415-286.2464.
FEBRUARY 1995 D B M S
106 S I G M O D R e c o r d , V o l . 2 4 , N o . 4, D e c e m
b e r 1~)!)7)
Write a brief report (one or two paragraphs) that (1) define middl.docx

More Related Content

Similar to Write a brief report (one or two paragraphs) that (1) define middl.docx

Tools of noc
Tools of nocTools of noc
Tools of noc
munawarul
 
Database project edi
Database project ediDatabase project edi
Database project edi
Rey Jefferson
 

Similar to Write a brief report (one or two paragraphs) that (1) define middl.docx (20)

Building an analytical platform
Building an analytical platformBuilding an analytical platform
Building an analytical platform
 
IIS 5/6 Install and Lockdown v3
IIS 5/6 Install and Lockdown v3IIS 5/6 Install and Lockdown v3
IIS 5/6 Install and Lockdown v3
 
resume
resumeresume
resume
 
4AA4-1812ENW
4AA4-1812ENW4AA4-1812ENW
4AA4-1812ENW
 
Symphony Driver Essay
Symphony Driver EssaySymphony Driver Essay
Symphony Driver Essay
 
IRJET- Secured Hadoop Environment
IRJET- Secured Hadoop EnvironmentIRJET- Secured Hadoop Environment
IRJET- Secured Hadoop Environment
 
Data Center Interconnects: An Overview
Data Center Interconnects: An OverviewData Center Interconnects: An Overview
Data Center Interconnects: An Overview
 
Tools of noc
Tools of nocTools of noc
Tools of noc
 
Data center-terminology photostory-
Data center-terminology photostory-Data center-terminology photostory-
Data center-terminology photostory-
 
Data center terminology photostory
Data center terminology photostoryData center terminology photostory
Data center terminology photostory
 
THE SURVEY ON REFERENCE MODEL FOR OPEN STORAGE SYSTEMS INTERCONNECTION MASS S...
THE SURVEY ON REFERENCE MODEL FOR OPEN STORAGE SYSTEMS INTERCONNECTION MASS S...THE SURVEY ON REFERENCE MODEL FOR OPEN STORAGE SYSTEMS INTERCONNECTION MASS S...
THE SURVEY ON REFERENCE MODEL FOR OPEN STORAGE SYSTEMS INTERCONNECTION MASS S...
 
HOW-CLOUD-IMPLEMENTATION-CAN-ENSURE-MAXIMUM-ROI.pdf
HOW-CLOUD-IMPLEMENTATION-CAN-ENSURE-MAXIMUM-ROI.pdfHOW-CLOUD-IMPLEMENTATION-CAN-ENSURE-MAXIMUM-ROI.pdf
HOW-CLOUD-IMPLEMENTATION-CAN-ENSURE-MAXIMUM-ROI.pdf
 
Internship msc cs
Internship msc csInternship msc cs
Internship msc cs
 
Thought Leader Interview: Dr. William Turner on the Software-Defined Future ...
Thought Leader Interview:  Dr. William Turner on the Software-Defined Future ...Thought Leader Interview:  Dr. William Turner on the Software-Defined Future ...
Thought Leader Interview: Dr. William Turner on the Software-Defined Future ...
 
Thought Leader Interview: Dr. William Turner on the Software­-Defined Future ...
Thought Leader Interview: Dr. William Turner on the Software­-Defined Future ...Thought Leader Interview: Dr. William Turner on the Software­-Defined Future ...
Thought Leader Interview: Dr. William Turner on the Software­-Defined Future ...
 
JIT Borawan Cloud computing part 2
JIT Borawan Cloud computing part 2JIT Borawan Cloud computing part 2
JIT Borawan Cloud computing part 2
 
How to Migrate Without Downtime
How to Migrate Without DowntimeHow to Migrate Without Downtime
How to Migrate Without Downtime
 
TOLL MANAGEMENT SYSTEM
TOLL MANAGEMENT SYSTEMTOLL MANAGEMENT SYSTEM
TOLL MANAGEMENT SYSTEM
 
Toll management system (1) (1)
Toll management system (1) (1)Toll management system (1) (1)
Toll management system (1) (1)
 
Database project edi
Database project ediDatabase project edi
Database project edi
 

More from ericbrooks84875

Fundamentals of Risk and InsuranceEmmEtt J. Vaughan • .docx
Fundamentals of Risk and InsuranceEmmEtt J. Vaughan   •   .docxFundamentals of Risk and InsuranceEmmEtt J. Vaughan   •   .docx
Fundamentals of Risk and InsuranceEmmEtt J. Vaughan • .docx
ericbrooks84875
 
Fungi reproduce ___________________________ by fragmentation, buddin.docx
Fungi reproduce ___________________________ by fragmentation, buddin.docxFungi reproduce ___________________________ by fragmentation, buddin.docx
Fungi reproduce ___________________________ by fragmentation, buddin.docx
ericbrooks84875
 
Full-Circle LearningMyLab™ Learning Full Circle for Mar.docx
Full-Circle LearningMyLab™ Learning Full Circle for Mar.docxFull-Circle LearningMyLab™ Learning Full Circle for Mar.docx
Full-Circle LearningMyLab™ Learning Full Circle for Mar.docx
ericbrooks84875
 
Functional Behavior Assessment ExampleStudent NameInes SalazarD.docx
Functional Behavior Assessment ExampleStudent NameInes SalazarD.docxFunctional Behavior Assessment ExampleStudent NameInes SalazarD.docx
Functional Behavior Assessment ExampleStudent NameInes SalazarD.docx
ericbrooks84875
 
Functional Requirements Document TemplateVersionDescription .docx
Functional Requirements Document TemplateVersionDescription .docxFunctional Requirements Document TemplateVersionDescription .docx
Functional Requirements Document TemplateVersionDescription .docx
ericbrooks84875
 
FS-3FORD MOTOR COMPANY AND SUBSIDIARIESCONSOLIDATED INCO.docx
FS-3FORD MOTOR COMPANY AND SUBSIDIARIESCONSOLIDATED INCO.docxFS-3FORD MOTOR COMPANY AND SUBSIDIARIESCONSOLIDATED INCO.docx
FS-3FORD MOTOR COMPANY AND SUBSIDIARIESCONSOLIDATED INCO.docx
ericbrooks84875
 

More from ericbrooks84875 (20)

Fundamentals of Risk and InsuranceEmmEtt J. Vaughan • .docx
Fundamentals of Risk and InsuranceEmmEtt J. Vaughan   •   .docxFundamentals of Risk and InsuranceEmmEtt J. Vaughan   •   .docx
Fundamentals of Risk and InsuranceEmmEtt J. Vaughan • .docx
 
Fungi reproduce ___________________________ by fragmentation, buddin.docx
Fungi reproduce ___________________________ by fragmentation, buddin.docxFungi reproduce ___________________________ by fragmentation, buddin.docx
Fungi reproduce ___________________________ by fragmentation, buddin.docx
 
Full-Circle LearningMyLab™ Learning Full Circle for Mar.docx
Full-Circle LearningMyLab™ Learning Full Circle for Mar.docxFull-Circle LearningMyLab™ Learning Full Circle for Mar.docx
Full-Circle LearningMyLab™ Learning Full Circle for Mar.docx
 
Functional Behavior Assessment ExampleStudent NameInes SalazarD.docx
Functional Behavior Assessment ExampleStudent NameInes SalazarD.docxFunctional Behavior Assessment ExampleStudent NameInes SalazarD.docx
Functional Behavior Assessment ExampleStudent NameInes SalazarD.docx
 
Functional Requirements Document TemplateVersionDescription .docx
Functional Requirements Document TemplateVersionDescription .docxFunctional Requirements Document TemplateVersionDescription .docx
Functional Requirements Document TemplateVersionDescription .docx
 
Fully answer any ONE of the following essay questions1.  Is the.docx
Fully answer any ONE of the following essay questions1.  Is the.docxFully answer any ONE of the following essay questions1.  Is the.docx
Fully answer any ONE of the following essay questions1.  Is the.docx
 
Fully answer any ONE of the following essay questions1.  Is t.docx
Fully answer any ONE of the following essay questions1.  Is t.docxFully answer any ONE of the following essay questions1.  Is t.docx
Fully answer any ONE of the following essay questions1.  Is t.docx
 
From the weeks chapter reading, we learn from the authors that,.docx
From the weeks chapter reading, we learn from the authors that,.docxFrom the weeks chapter reading, we learn from the authors that,.docx
From the weeks chapter reading, we learn from the authors that,.docx
 
FTER watching the videos and reviewing the other materials in this.docx
FTER watching the videos and reviewing the other materials in this.docxFTER watching the videos and reviewing the other materials in this.docx
FTER watching the videos and reviewing the other materials in this.docx
 
fter completing the reading this week, we reflect on a few key conce.docx
fter completing the reading this week, we reflect on a few key conce.docxfter completing the reading this week, we reflect on a few key conce.docx
fter completing the reading this week, we reflect on a few key conce.docx
 
FS-3FORD MOTOR COMPANY AND SUBSIDIARIESCONSOLIDATED INCO.docx
FS-3FORD MOTOR COMPANY AND SUBSIDIARIESCONSOLIDATED INCO.docxFS-3FORD MOTOR COMPANY AND SUBSIDIARIESCONSOLIDATED INCO.docx
FS-3FORD MOTOR COMPANY AND SUBSIDIARIESCONSOLIDATED INCO.docx
 
Fromm’s concept of the syndrome of decay included three personality .docx
Fromm’s concept of the syndrome of decay included three personality .docxFromm’s concept of the syndrome of decay included three personality .docx
Fromm’s concept of the syndrome of decay included three personality .docx
 
From your readings in Chapter 4, choose one of the organizational sy.docx
From your readings in Chapter 4, choose one of the organizational sy.docxFrom your readings in Chapter 4, choose one of the organizational sy.docx
From your readings in Chapter 4, choose one of the organizational sy.docx
 
From your daily briefs, Kaiser Health News Morning Briefing or P.docx
From your daily briefs, Kaiser Health News Morning Briefing or P.docxFrom your daily briefs, Kaiser Health News Morning Briefing or P.docx
From your daily briefs, Kaiser Health News Morning Briefing or P.docx
 
From the perspective of the public safety field youre in, aspire to.docx
From the perspective of the public safety field youre in, aspire to.docxFrom the perspective of the public safety field youre in, aspire to.docx
From the perspective of the public safety field youre in, aspire to.docx
 
From the following terms Orthodox Judaism, Hassidic Judaism.  Brief.docx
From the following terms Orthodox Judaism, Hassidic Judaism.  Brief.docxFrom the following terms Orthodox Judaism, Hassidic Judaism.  Brief.docx
From the following terms Orthodox Judaism, Hassidic Judaism.  Brief.docx
 
From the end of Chapter 14, complete Discussion Question 3 What are.docx
From the end of Chapter 14, complete Discussion Question 3 What are.docxFrom the end of Chapter 14, complete Discussion Question 3 What are.docx
From the end of Chapter 14, complete Discussion Question 3 What are.docx
 
From the e-Activity, take a position on this statement People that .docx
From the e-Activity, take a position on this statement People that .docxFrom the e-Activity, take a position on this statement People that .docx
From the e-Activity, take a position on this statement People that .docx
 
From Chapter Seven How does horizontal growth differ from v.docx
From Chapter Seven How does horizontal growth differ from v.docxFrom Chapter Seven How does horizontal growth differ from v.docx
From Chapter Seven How does horizontal growth differ from v.docx
 
From the e-Activity, determine the fundamental differences between t.docx
From the e-Activity, determine the fundamental differences between t.docxFrom the e-Activity, determine the fundamental differences between t.docx
From the e-Activity, determine the fundamental differences between t.docx
 

Recently uploaded

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 

Recently uploaded (20)

Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 

Write a brief report (one or two paragraphs) that (1) define middl.docx

  • 1. Write a brief report (one or two paragraphs) that (1) define middleware in your own words, (2) describe the daily or weekly activity that you do that uses middleware, (3) name the software you use to do the activity, and (4) as specifically as possible, state what middleware software the activity uses and justifies your explanation. Your goal is to convince me with your report that you understand what middleware is and what role it plays in the delivery of modern software applications. Resources that you can use to help you answer this questions are 1. Middleware Concepts (This video mentioned three vendors of middleware such as Oracle, SAP, and IBM with Web Sphere). 2. The New Middleware (This is in a pdf file that I attached on this assignment. 3. Internet. You can use the web to help you understand what software the term middleware encompasses. Also don’t forget to cite your information from the web. TH VV U S I N G M I D D L E - W A R E , C U S T O M E R S C A N D E P L O Y C O S T -
  • 2. E F F E C T I V E A N D H I G H L Y F U N C T I O N A L C L I E N T / S E R V E R A P P L I C A T I O N S O N C E T H E Y W O R K O U T T H E K I N K S . BY RICH FINKELSTEIN B roadly speaking, middleware ties application components together. This definition en- c o m p a s s e s too many prod- ucts to cover in one article, so instead I'll look at signifi- cant products that can be used to manage cross-platform connectivity in a database environment. Within this context, mid- dleware products provide several impor- tant functions, including: • d a t a a c c e s s to h e t e r o g e n e o u s data- bases; • g a t e w a y s to r e m o t e mainframe data- bases; • appficafion partitioning across multiple
  • 3. hardware platforms; and • distributed updates across a homoge- neous or h e t e r o g e n e o u s set of relational databases. M a n y m i d d l e w a r e p r o d u c t s have ap- p e a r e d o v e r the l a s t s e v e r a l y e a r s t h a t have attempted to solve the various prob- l e m s a s s o c i a t e d with a c c e s s i n g and up- dating databases over local and wide area n e t w o r k s (LANs and WANs). F o r the most part, p r o g r e s s in deploying produc- tion applications that utilize middleware has been slow - - much slower than what you m i g h t first think. C u s t o m e r refer- e n c e s for m i d d l e w a r e p r o d u c t s are still few and far between. M o s t applications that use middleware s e e m to have a rela- tively simple application profile; that is, low v o l u m e s of read-only t r a n s a c t i o n s . However, in some cases, middleware has b e e n u s e d Successfully to s u p p o r t very large, mission-critical systems. Develop- ing t h e s e types of systems usually takes a substantial amount of time, resources, and c o m m i t m e n t ; in o t h e r w o r d s , you m u s t have a h i g h tolerance for b u g s and p e r f o r m a n c e p r o b l e m s t h a t h a v e to b e w o r k e d out of t h e m i d d l e w a r e software methodically. Products that were introduced several years ago to address the simpler problems of m i d d l e w a r e , s u c h as s i m p l e d a t a ex- traction or update of mainframe-based re-
  • 4. lational d a t a b a s e s , have r e a c h e d a level of performance and stability that m a k e s t h e m g o o d c h o i c e s for i m p l e m e n t i n g a wide variety of c l i e n t / s e r v e r applications. Transaction monitors and c e r t . i n r e m o t e p r o c e d u r e call (RPC) m e c h a n i s m s have also proved to be very useful for a b r o a d set of applications. T h u s , w h e r e a s mid- d l e w a r e m u s t still b e given t i m e to ma- ture, t h e r e are many cost-effective prod- ucts available today that work well. Connecting to Heterogeneous Data Al1 S Q L b a s e d d a t a b a s e s e r v e r s c o m e with client program libraries that include an a p p l i c a t i o n p r o g r a m m i n g i n t e r f a c e (API), and a set of network libraries that let client application p r o g r a m s attach to SQL database s e r v e r s using various net- work protocols. On the server side of the network, a companion program called the network listener waits for and g r a b s mes- s a g e s f r o m t h e c l i e n t a p p l i c a t i o n a n d h a n d s t h e m off to the d a t a b a s e s e r v e r . T h e listener then r o u t e s data e x t r a c t i o n result sets or other m e s s a g e s b a c k to the client. m m m n l m m m Rich Finkelstein is president of Performance Computing Inc., a database technology con- sulting company based in Chicago. FEBRUARY 1995 D~MS
  • 5. 102 $ I G M O D R e c o r d , V o l . 2 4 , N o . 4, D e c e m b e r 1!)93 SIGMOD Record, Vol. 24, No. 4, December 1995 10:3 applications and a wide breadth of ap- plication servers. Already, organizations are h a m m e r i n g vendors for links to Lo- tus Notes, imaging database.,;, and text- p r o c e s s i n g databases. OLE can poten- tially provide this mechanism. For now, OLE appears to be not only Microsoft's direction within its own product line, but also the direction of most of the c l i e n t / server industry. Gateways to Mainframe D a t a b a s e s It is no surprise that the most mature middleware products on the market are designed to c o n n e c t workstation appli- cations to critical mainframe databases such as DB2. Despite the excitement sur- rounding c l i e n t / s e r v e r and PC comput- ing, most corporate data still resides on mainframes. T h e r e are several reasons for the slow migration off mainframes. Mainframes are still m o r e reliable and have more mature and well-defined data integrity a n d security m e c h a n i s m s . An enormous a m o u n t of investment money
  • 6. and knowledge is associated with main- frame applications, and it takes time and substantial resources to understand the nature of these mainframe applications, much less reengineer them for minicom- puters and PCs. Mainframe applications are tightly linked among themselves and to shared databases, making it difficult to migrate one application without affecting many others. Database gateways, such as those pro- vided by Micro Decisionware Inc.'s (MDI) Database Gateway (recently acquired by Sybase) and Information Builder Inc.'s (IBI) E n t e r p r i s e Data Access ( E D A ) / SQL, are designed to promote gradual mi- gration from traditional dumb-terminal/ mainframe database e n v i r o n m e n t s into a client/server architecture. While many a p p l i c a t i o n s a r e still m o r e t h a n ade- quately serviced by traditional architec- tures, new b u s i n e s s requirements often m a n d a t e the i n t r o d u c t i o n of PC work- stations. U s i n g gateways, an organiza- tion has the option of keeping the data- base server exclusively on the mainframe platform, or u s i n g a c o m b i n a t i o n of In- tel, Unix, and m a i n f r a m e d a t a b a s e s to process an application. Each database can contain a logical partition of an en- tire database, or it can contain data that has been replicated from the mainframe database. Moving data to Intel- or Unix- based platforms tends to improve acces- sibility and performance, but also com-
  • 7. plicates application d e v e l o p m e n t a n d administration. Database gateways sit b e t w e e n the c l i e n t application and the target main- frame database. Their primary functions are to: t r a n s l a t e LAN protocol packets into WAN packets (for example, IPX/ SPX into APPC); translate client-gener- ated SQL commands into commands that are understood by the target database; and extract data from the target database and r e t u r n it to the r e q u e s t i n g applica- tion. Based upon most surveys, MDI Data- base Gateway is the most popular gate- way of this type. You can install the net- work and SQL c o n v e r s i o n functions as OS/2 or Unix servers, or on individual OS/2 workstations. A server-based data- base g a t e w a y acts as a c o n c e n t r a t o r , which provides gateway services for sev- eral workstations in a workgroup. Server solutions are more cost-effective and off- load communications work from the work- station. IBI's EDA/SQL has an advantage over MDI Database Gateway in that you can install it on Windows workstations, Unix servers, or on the mainframe. Organiza- tions often deploy IBI's gateway on the mainframe to eliminate the need for an intermediary Unix or OS/2 server.
  • 8. T h e m a i n f r a m e c o m p o n e n t of MDI Database Gateway i n c l u d e s a DB2 ac- c e s s m o d u l e that c a n e x t r a c t data di- rectly from a DB2 database. T h e r e are also facilities called remote stored pro- cedures, which c o n s i s t of user-written CICS p r o g r a m s t h a t a c c e s s non-DB2 databases such as IMS, CA-IDMS, and VSAM. Remote stored p r o c e d u r e s let customers customize and tune access to nonrelational data sources, and are pow- erful m e c h a n i s m s for a t t a c h i n g n e w client/server applications to legacy data- bases. S y h a s e / M D I also licenses a set of gateway modules from Trinzic Corp., called InfuHub, which can access a num- ber of different mainframe data sources, i n c l u d i n g IMS a n d VSAM files. How- ever, InfoHub has a relatively small mar- ket p r e s e n c e and it is difficult to j u d g e the performance and stability levels of these modules. IBI's E D A / S Q L also offers gateway modules that access many different types of data sources. EDA/SQL has a longer history when it comes to accessing non- relational databases - - especially IBM's mainstay IMS databases. Because of this, EDA/SQL is often chosen for IMS gate- way access, but performance tends to be- come a problem as queries grow in com- plexity and volume. IBI likes to advertise its ability to join any amount of data from any type of data source, but you should
  • 9. take this claim with a grain of salt. Un- less the queries are trivial, performance will be so poor that this approach simply becomes impractical. As with MDI Data- b a s e Gateway, E D A / S Q L c u s t o m e r s have the option to build their own CICS database access programs that are func- tionally similar to MDI's remote stored procedures. MDI D a t a b a s e G a t e w a y is u s u a l l y chosen over EDA/SQL because of per- formance, its ability to service a larger n u m b e r of c o n c u r r e n t u s e r s , a n d its b u l k - t r a n s f e r c a p a b i l i t i e s . E D A / S Q L tends to be the choice when transaction v o l u m e is l i g h t a n d c u s t o m e r s m u s t quickly implement a mainframe gateway to a nonrelational DBMS such as IMS, but they do not have the time to write a more customized and efficient CICS pro- gram. In addition, some customers may choose EDA/SQL b e c a u s e it does not r e q u i r e an i n t e r m e d i a t e Unix or O S / 2 server, thereby simplifying the environ- ment and allowing quick deployment of a prototype or simple production appli- cation. D o n ' t F o r g e t a b o u t D R D A IBM's Distributed Relational Database Architecture (DRDA) offers an interest- i n g a l t e r n a t i v e to d a t a b a s e gateways. T h e DRDA specification s t a n d a r d i z e s the network protocol formats (APPC and
  • 10. T C P / I P ) , SQL syntax, and data repre- sentation format used to link IBM's re- lational d a t a b a s e s . T h i s allows I B M ' s DB2 databases on OS/2, RS/6000, A S / 400, and MVS to share data without the need for intermediary gateways. DRDA tightly integrates the various DB2 plat- forms and provides a high degree of re- liability and performance. Many compa- n i e s have i m p l e m e n t e d critical o n l i n e transaction-processing applications us- ing DRDA. Usually, these applications are some mix of OS/2 workstations with D B 2 / O S 2 a n d D B 2 / M V S m a i n f r a m e databases. A d d i n g V a l u e to D a t a b a s e G a t e w a y s Several middleware products work in c o n j u n c t i o n with and add value to the MDI and E D A / S Q L gateways. One of t h e b e t t e r - k n o w n p r o d u c t s is T r i n z i c Corp.'s In foPump. InfoPump is a data ac- cess m a n a g e m e n t tool that lets organi- zations schedule periodic data extracts from a variety of data sources, and then direct the output of these r e q u e s t s to a local database server such as Oracle or Sybase. InfoPump includes a scripting language that developers use to specify the data sources, data targets, and data extract schedule. It connects to a main- frame database via E D A / S Q L or MDI Database Gateway, or to local database servers via direct drivers. Unlike MDI Database Gateway and EDA/SQL, Info-
  • 11. Pump is still relatively new in the mar- ket; and it is difficult to gauge its perfor- mance capacity. Customer reports vary, so you m i g h t b e n e f i t from c u s t o m e r checks or in-house b e n c h m a r k s before signing on to the product. InterViso, from Data Integration Inc., is attempting to go far beyond the data- integration capabilities of most middle- ware products on the market. InterViso's 104 S I G M O D R e c o r d , V o l . 2 4 , N o . 4, D e c e m b e r 1.9fl5 objective is to provide complete, trans- parent access to a set of heterogeneous d a t a b a s e s - - what is s o m e t i m e s re- ferred to as a "federated database." To a c c o m p l i s h this o b j e c t i v e , I n t e r V i s o translates data types, provides common n a m e s to s i m i l a r f i e l d s in d i f f e r e n t databases, supports data encoding, man- ages data that is replicated among sev- eral databases, provides a single view of records that are fragmented across mul- tiple d a t a b a s e s , optimizes d i s t r i b u t e d ( m u l t i d a t a b a s e ) queries, and p e r m i t s h e t e r o g e n e o u s updates without sacri- ficing security, transaction-management support, or t h e local autonomy of each database. T h e key to InterViso is its Data Dic-
  • 12. tionary/Directory (DD/D), which stores a complete description of all databases in the environment. DBAs are then free to define federated data "views," which can include data from one or more het- erogeneous databases. InterViso's "con- troller" uses the D D / D to map views to underlying physical tables and then op- timizes any queries that span more than one database. T h e controller also con- trols multisite updates using a specially designed COMMIT protocol, which allows transactions to continue even if a node is unavailable. T h e Database Manage- m e n t S y s t e m Interface (DBMSI) con- verts fields with similar meaning but dif- f e r e n t d a t a t y p e s i n t o f i e l d s w i t h a common data type. InterViso can handle even very difficult situations where one field may have a numeric data type while another field with a similar meaning has a character data type. InterViso will con- vert the numeric data type to a character field so that the values stored in the two fields can be merged together. Data I n t e g r a t i o n Inc. claims that In- terViso can support fragmented tables (tables that are horizontally or vertically partitioned) and replicated data auto- matically. Considering the complexity of the problem, you might want to approach this claim with some skepticism. How- ever, if the product works as claimed, it can be tremendously useful when you're implementing decision-support databases
  • 13. or migrating applications from mainframe databases. I would recommend that any customer considering InterViso should spend some time interviewing customer references and prototyping with the prod- uct in order to understand the functional and performance limitations of InterViso's distributed query and update capabilities. Even if it does not have all the capabili- ties you require, it may be adequate for solving many types of distributed appli- cation problems. Partitioning Application Logic Application partitioning - - splitting ap- plication logic across multiple platforms - - is now in vogue. However, application par- titioning is not new to client/server pro- cessing. Stored procedures, which Sybase promoted heavily when it first introduced its SQL Server database, are good exam- ples of simple application partitioning. T h e r e are t i m e s w h e n a p p l i c a t i o n logic must be deployed on the server, and either the logic is too complicated for stored procedures or the server does not offer stored procedures. One of the benefits of stored procedures and appli- cation partitioning is that they help min- imize n e t w o r k traffic by m o v i n g t h e database access application logic onto I I Y o u s h o u l d n o t
  • 14. u n d e r t a k e t h e t a s k o f a p p l i c a t i o n p a r t i t i o n - i n g w i t h o u t s o m e f o r e t h o u g h t . P a r t i - t i o n e d a p p l i c a t i o n s a r e m o r e d i f f i c u l t t o d e s i g n a n d m a i n t a i n . the server. Application partitioning also offloads work from workstations, which are often overtaxed. One of the problems with c l i e n t / s e r v e r p r o c e s s i n g is that workstations are often incapable of sup- porting complex application processing. One way to get m o r e life out of work- stations is to move processing logic to the server. It is far more economical to upgrade one server (if necessary) than to u p g r a d e h u n d r e d s or t h o u s a n d s of workstations. You should not undertake the task of application partitioning without some forethought. Partitioned applications are more difficult to design and maintain. An application that is split up into several pieces is more complex and has more po- tential points of failure. You must design partitioning into the program at its in- ception so that logical points exist from
  • 15. which to divide the application. T h i s is exactly the situation that exists today when developers design and program ap- plications that implement stored proce- dures: Overly partitioned applications can result in unnecessary network traffic and unstable systems. RPC Solution s Products that support RPCs offer a straightforward way to partition applica- tion logic without programming complex network communication protocols. This category of products includes companies such as NobleNet Inc., Netwise Inc., and NetWeave Corp. GVilmington, Del.). As with most products in the middleware cat- egory, R.PC products have enjoyed only limited use until recently, although de- mand is growing as c l i e n t / s e r v e r appli- cations scale up in complexity. There is typically very little reason to implement
  • 16. RPCs in simple workgroup environments (which represent the lion's share of the c l i e n t / s e r v e r applications in production at this time). A good example of the use of RPCs is an application that my company recently helped develop. This application consisted of a local FoxPro database that needed to c o n n e c t to a remote Informix database whenever a customer wanted to retrieve data that was unavailable in the FoxPro database. Because FoxPro was r u n n i n g u n d e r DOS in this case, we wrote a cus- tomized network protocol that sent a Fox- Pro-initiated SQL r e q u e s t over to the server. On the server, an extract program received the request, extracted the data from Informix, and sent the data back to the workstation. U n d e r DOS, we wrote the n e t w o r k c o m m u n i c a t i o n layer that s e n t the re- quests and returned the data packets. But under Windows, you can take advantage
  • 17. of a product such as NobleNet, which an- alyzes the client and server application programs and automatically generates the client and server networking communi- cation programs (called "stubs"). This saves a considerable amount of time, and does not require specialized network com- munications expertise. Most developers who can write a C program can use No- bleNet to partition an application across a network. Netwise recently i n t r o d u c e d Trans- Access Application/Integrator Worksta- tion (A/IW), which lets developers define the communications interface using a GUI specification tool. GUI definition is pre- sumably easier to use and maintain than generated C language code. Several vendors have introduced appli- cation development tools that they claim can partition applications across multiple heterogeneous sites easily and dynami- cally. Foremost among this class of prod-
  • 18. ucts are Dynasty and Forte. Unfortunately, the vendors are so far unable to provide evidence that their products can really per- form these tasks efficiently and reliably. Because the products are so new, most customers seem to be making little or no use of application partitioning within their deployed production applications. These products may prove to be worthwhile, but I hesitate to recommend them because of the lack of proof of concept. Transaction Managers in a Distributed Environment As client/server applications grow in size, importance, and complexity, there is a FEBRUARY 1995 DBMS S I G M O D R e c o r d , V o l . 2 4 , N o . 4, D e c e m b e r 1 9 9 5 1 0 5 corresponding need for greater reliabil-
  • 19. ity, security, availability, and performance. On mainframes, transaction m a n a g e r s (TMs) - - also called t e l e p r o c e s s i n g m o n i t o r s (TPs) - - such as CICS and IMS/DC (or IMS/TM) have always held a position of great importance. TMs help ensure predictable response time, guar- antee that transactions are completed suc- cessfully, allow messaging among appli- cations, and support a very granular level of security. Security officers using TMs can define which users can access which transactions. It is also possible to define which terminals can be used to execute specific transactions. TMs on Unix and Intel platforms have not achieved as strong an e n d o r s e m e n t in client/server environments as in main- frame e n v i r o n m e n t s , b u t t h i s s h o u l d c h a n g e over the next several years as client/server matures and is better able to support high-volume distributed appli- cations in a cost-effective manner.
  • 20. Novell's Tuxedo and IBM's CICS are two of the most popular TMs on the mar- ket today. Tuxedo supports several Unix platforms, but the most popular are Sun, Hewlett-Packard, and RS/6000. CICS runs on OS/2, RS/6000, a n d t h e AS/400, as well as on IBM mainframes. Currently, TMs do not support Windows NT or Nov- ell NetWare. NoveU has stated that it in- tends to port Tuxedo to Intel platforms, b u t it may take some time. NetWare is simply incapable of supporting a TM re- liably, and it is unlikely, for competitive r e a s o n s , that Novell is g o i n g to be in much of a hurry to support Windows NT. TMs, like other middleware products, receive requests from an application pro- gram and route the requests to a server application, which updates the target data- base. TMs provide specific capabilities for managing large distributed applications. Tuxedo g u a r a n t e e s that the application request is delivered to the target database server platform by utilizing disk-based
  • 21. message queues that are not lost in case of system failure. Tuxedo also provides built-in logging to recover transactions that were in the process of updating but were not completed at the time of system failure. It can also support heterogeneous database updates with a two-phase com- mit protocol, although I have not seen this feature in any production application at this time. Up until now, writing Tuxedo code has b e e n cumbersome. However, newer ap- plication development tools such as JY- ACC's JAM 6 have high-level language support for Tuxedo that is much easier to write and maintain, JAM 6 automatically generates the client and server stubs that interface with Tuxedo and the target data- base server. A word of caution: JAM 6 is a new product and has not been widely de- ployed, but the architecture merits a look. IBM's CICS has enjoyed widespread popularity, primarily because it provides
  • 22. reliable connectivity across IBM's hard- ware and database platforms. Organiza- tions commonly use CICS as the means of linking OS/2-based applications to main- frame DB2 and IMS databases. In my own consulting practices, I have noticed that when large institutions need to deploy crit- ical applications that access mainframe data, they usually tuna to CICS and OS/2. A large number of developers are familiar with the CICS API because of its long-term use on the mainframe. This makes CICS more accessible to large organizations that have developed a substantial CICS knowl- edgebase over the last 20 years. Both Tuxedo and CICS offer viable so- lutions for companies that demand system integrity and cannot tolerate the large in- tegrity holes that exist in current client/ server software and hardware products. My primary concern with Tuxedo is the fact that it is now owned by Novell. In the past, Novell has shown little interest in Tuxedo because of its own obvious preoc-
  • 23. cupation with NetWare. UnixWare has also suffered from neglect. In recent months, however, Novell has shown renewed in- terest in promoting Tuxedo, possibly be- cause of its long-term value to Novell's en- terprise connectivity strategy. IBM's CICS is firmly entrenched in the market, and it is a good choice for IBM plat- forms. Until recently, IBM and Hewlett- Packard were cooperating in using the Encina TM as the core technology for both IBM's RS/6000 CICS system and Hewlett- Packard's forthcoming TM. However, when IBM purchased Encina, Hewlett-Packard backed out of the Encina agreement, and the future of the CICS and Encina non-IBM operating platforms is unclear. Another c o n c e r n with CICS for RS/ 6000 is that it implements a layered archi- tecture that consists of Encina technology as well as other connectivity layers. This layering t e n d s to impact performance, and some customers report that t h e RS/
  • 24. 6000 version of CICS is just too slow. IBM may decide to merge all of the code or use the 0 S / 2 CICS codebase for future releases of CICS on IBM and Unix plat- forms. W h a t e v e r h a p p e n s c o n c e r n i n g CICS on Unix, CICS will probably con- tinue to do well because of its maturity and proven capabilities. T h e F u t u r e o f M i d d l e w a r e Two years ago, I wrote an article for DBMS on middleware ("Making C o n n e c t i o n s Across the Enterprise," January 1993) and there is certainly a lot more to talk about today than there was then. Interestingly enough, while products with great-looking features continue to pour into the market, the adoption of m i d d l e w a r e has b e e n rather slow. I believe that most organiza- tions are still getting their feet wet with client/server and they are stiI1 trying to es- tablish a firmly grounded knowledgebase. infrastructure, and migration plan before moving ahead with client/se~'er. During
  • 25. this waiting period, client/server technob ogy - - including middleware technol- ogy - - will have a chance to mature. The best strategy at this time is to rely mainly on proven middleware products and gradually add more technology as in- house knowledge grows. Several solid products, such as MDI Database Gatew W, EDA/SQL, CICS, and Tuxedo, have been a r o u n d for s o m e time a n d have had a chance to find comfortable positions in d i s tributed client/server applications. Other products, such as InfoPump and RPC pro- grams, have also enjoyed a good amount of success. As middleware gradually be, comes more mainstream, customers will he able to deploy cost-effective and highly functional client/server applications. • • Data Integration Inc., 11965 Venice Blvd., Ste. 305, Los Angeles, CA 90066:310-313- 9150 or fax 310-313-9151. • Dynasty Technologies Inc.. 500 Technology Dr., Ste. 100, Naperville, IL 60563: 708-355- 8300 or fax 708-355-9345.
  • 26. • Fortd Software Inc., 1800 Harrison St.. 15th FI., Oakland, CA 94612; 510-869-3400 or fax 510-834-1508. • IBM Corp. Old Orchard Rd.. Armonk, NY 10504; 800-342-6672 or 914-765-1900. • Information Builders Inc., 1250 Broadway. 30th FI., New York, NY 10001-3782: 800-969- 4636, 212-736-4433, or fax 212-268-7470. • Intersolv Inc. (Q+E), 3200 Tower Oaks Blvd., Rockville, M D 20852; 800-547.4000 or fax 301-984-3047. • JYACC Inc., 116 John St.. 20th FI., New York, NY 10038; 800-458-3313.212-267-7722. or fax 212-608-6753, • Microsoft Corp., One Microsoft Way, Red- mond, WA 98052; 800-426-9400, 206.882- 8080, or fax 206-883-8101. • Netwise Inc., 2477 55th St.. Boulder, CO 80301;800-733-7722, 303-442-8280, or fax 303-442,3798. • NobleNet Inc., 337 Turnpike Rd.. Southboro Technology Park, Southboro, MA 01772: 508- 460-8222 or fax 508-460-3456. • Novell Inc., 122 East 1700 South, Provo. UT 84606; 800-453-1267, 801-429-7000, or fax
  • 27. 801-429-5155. • Oracle Corp., 500 Oracle Parkway, Red- wood Shores, CA 94065; 800-633-0596.415- 506-7000, or fax 415-506-7200. • PageAhead Software Corp., 2125 Western Ave., Ste. 301, Seattle, WA 98121: 800-967- 9671,206-441-0340, or fax 206-441.9876. • Sybase Inc., 6475 Christie Ave.. Emeryville. CA 94608; 800-879-2273, 510-922-3500, or fax 510-658-9441. • Trinzic Corp., 101 University Ave.. Palo Alto. CA 94301; 800-845-2466, 415-328-9595, or fax 415-321-7728. • Visigenic Software, 951 Mariners Island Blvd., Ste, 460, San Mateo, CA 94404:415- 286-1900 or fax 415-286.2464. FEBRUARY 1995 D B M S 106 S I G M O D R e c o r d , V o l . 2 4 , N o . 4, D e c e m b e r 1~)!)7)