© 2000 RevealNet, Inc.
Net.Data Overview
Net.Data for OS/390 provides the ability to build business-critical Web applications using your DB2 data as well as other enterprise data. You can also build interactive Web sites with data included dynamically from a variety of data sources, such as relational data, file data, and Lotus Notes data. A Net.Data-driven application can get your data to (and from) a worldwide audience.
In addition to connecting to diverse data sources, Net.Data provides for high performance, robust application development function, and exploitation of existing business logic.
Net.Data provides native access to the data you need in your business environment: DB2, as well as Oracle, IMS, and file data. In addition, through ODBC you can access many other relational data sources. Net.Data also optimizes access to DB2 objects such as stored procedures.
Net.Data applications are macro files containing named sections specifying Web page text, HTML, SQL to be executed, programs and scripts to be called, and application control logic.
Net.Data Considerations
Below is a summary of some general considerations and characteristics of Net.Data access to DB2 for OS/390 data:
- Net.Data generally runs alongside a Web server, that is, on the same instance of the operating system under which the Web server is running.
- Net.Data's user interface is made up of regular HTML pages and forms. A Web browser communicates with the Web server usually through HTTP, which in turn invokes Net.Data itself and one or more Net.Data macros. In a three-tier environment, Net.Data invokes DB2 for OS/390 through CAE and/or DB2 Connect and/or DataJoiner software. In a two-tier OS/390 environment, Net.Data communicates with DB2 for OS/390 through RRS or the Call Attach Facility (CAF).
- Net.Data programs are written in Net.Data's interpretive macro language. A Net.Data macro is a mixture of HTML and Net.Data-specific keywords. Simple macros are quick and easy to write.
- Net.Data macros can invoke programs written in other languages such as Perl, REXX and C.
- In a three-tier environment, Net.Data macros can access a variety of data sources such as DB2, Oracle, Sybase, and ODBC. In a two-tier environment, Net.Data for OS/390 can access DB2 for OS/390 and IMS/TM.
- Java client code is not required, although Java applets can be used to display information returned through Net.Data. Typically these applets run in stand-alone mode on the browser.
- Net.Data can issue regular SQL requests to access relational data as well as invoke DB2 stored procedures.
Net.Data Features
- Supports flat files
Net.Data provides support for flat file data and enables you to retrieve, search, and update files.
- Optimized features for the DB2 Family
IBM Net.Data for OS/390 connects to DB2 data sources directly through the DB2 Call Attach Facility (CAF) or the Resource Recovery Services Attachment Facility (RRSAF), which is provided as part of DB2 for OS/390 V5. You can invoke DB2 stored procedures to group application logic for improved performance. Web applications can call DB2 stored procedures and use the results in your Web page.
- Native support for IMS
IBM Net.Data for OS/390 can connect to IMS applications and data.
- Heterogeneous data sources
DRDA allows DRDA-enabled clients to interoperate with DRDA-enabled data sources. As the DB2 Server provides a DRDA AR, your Net.Data application can connect to other DRDA-enabled data sources through DB2. These data sources may reside on other operating system platforms.
- Open Database Connectivity
Net.Data can invoke ODBC drivers through an ODBC Driver Manager in the workstation. For OS/390, Net.Data can call the DB2 CLI provided by DB2 for OS/390 Version 5. The DB2 CLI allows your applications to access DB2 data and DRDA-enabled data sources.
- Java applets and JavaScripts
Net.Data provides Java applet and JavaScript interfaces to improve the ability of the universal Web client to perform client-side processing. For example, you can use a Java applet to create a graphical report, such as a pie chart, from the results of a Net.Data application. Sample Java applets and JavaScripts are available on the Net.Data Web site.
- Advanced macro language features
Net.Data provides a full-featured macro capability that supports sophisticated Web application development. Conditional logic allows for customization of the Net.Data application. HTML variable substitution allows the user to pass information from one Web page to another. Net.Data applications can include files as well as URLs, allowing modularization and the sharing of components with other applications. Functions, both built-in and user-written, allow complex logic to be included in the application. Net.Data provides DB2 cursor simulation to reduce the size of the answer set written to the Web page.
- Extensive back end support
Net.Data supplies a set of DLLs that enable you to write and access system functions as well as functions written in SQL, REXX, and Perl, which can be included in the Net.Data macro file. With the Net.Data API, you can develop the linkage to programs written in C or C++. Net.Data provides an externalized back-end interface to link the DLL created by you. You can also choose to write your own DLLs to supply functions, which in turn can be called by Net.Data applications. With the extensible back-end support you can enable existing application logic.
- Web browser and Web server independence
Net.Data is not restricted to a specific Web browser or Web server.
- High-performance Web application features
Net.Data incorporates various functions and features designed specifically for providing high performance and throughput:
- Integration with Web server APIs
A Web application that uses a Web server API executes as a thread inside the Web server's address space. This thread-based processing is more efficient than invoking the application as a CGI process. The overhead of creating a new thread is less than the cost of creating a new process in a new address space. The overall performance of a Web application using a Web server API is greatly improved. Net.Data Version 2 supports both the ICAPI and GWAPI.
- Managing DB2 connections
Creating a connection to a local DB2 subsystem is time consuming for any application, including a Web application. Reestablishing connections for repeated requests to the same DB2 subsystem limits application throughput. In Net.Data Version 2, Net.Data manages the connections to the local DB2 subsystem. A connection is established and maintained, improving performance by enabling subsequent reuse. By managing the connection, the cost of creating the connection is amortized across all requests made from that thread.
- Net.Data direct requests
Web developers who want to write ad hoc SQL queries or call a single function such as a DB2 stored procedure, REXX program, or Perl function can issue a direct request to the database. A direct request does not have any complex Net.Data application logic that requires a Net.Data macro file and therefore bypasses the Net.Data macro processor. Direct request parameters are passed to the appropriate language environment for processing for improved performance.
- Optimization of the HTML generated by Net.Data
Because data transmitted to the Web browser is reduced, network traffic is reduced.
- Caching
Net.Data work files are cached for improved application performance.
- Scalability
Net.Data takes advantage of the integration of the Web server with the OS/390 Workload Manager. Both the IBM ICSS and DGW can work with the OS/390's Workload Manager (WLM), which provides the functions to define, implement, and monitor system performance against business goals. WLM also decides how many resources should be assigned to work according to policies that you define. In the WLM environment, the tasks of ICSS or DGW can be processed by more than one address space, and ICSS or DGW can be set up to distribute work among this set of WLM address spaces. A single address space is limited in the number of tasks that it can run and the amount of resources (such as virtual storage) available to it. Spreading work over multiple address spaces allows significantly more work to be accepted and processed. Net.Data applications run in a Web server's address space. In a WLM environment you can therefore set up multiple Web servers with Net.Data applications.
- Application development features
Net.Data provides a macro language to support Web application development. Some of the application development features of Net.Data are:
- Return of a single result set from a DB2 stored procedure. Net.Data applications can call DB2 stored procedures, which use static SQL, improving application performance. Net.Data for OS/390 V2, supports the return of a single result set from a DB2 stored procedure.
- Web pages can be built with input from two different code pages. The code page associated with character data can be different from the code page associated with the Net.Data macro file. You can, for example, construct a Web page by integrating database data that is encoded in one code page with HTML tags from a macro that is encoded in another code page. Net.Data would then be configured to:
- Convert SQL statement text and the values of input variables for stored procedure calls from the default file system code page to the default database code page.
- Convert the values of output variables from stored procedure calls and result tables from the default database code page to the default file system code page.
- You can use nested-If logic and WHILE control constructs for additional application development flexibility.
- Comments can be placed anywhere in the macro file.
- The maximum include file size has been increased to 256 KB.
- The maximum function size has been increased to 256 KB.
- Double byte character set (DBCS) is supported in word and string functions.