1. Field of the Invention
The present invention relates to a system and method for accessing data stored on non-host systems with multiple non-host file systems and, in particular, to a system and method for accessing non-host data via host application programs using record-based access methods.
2. Description of the Related Art
Application programs in the host environment frequently use record-based access methods. For example, the IBM VSE/ESA host operating system uses the record-based access method Virtual Storage Access Method (VSAM) to access data. VSAM does not provide information relating to the internal structure of the data; the application itself must provide this information. Furthermore, host data is stored in EBCDIC (Extended Binary-Coded Decimal Interchange Code) format. EBCDIC is a binary code for alphabetic and numeric characters that IBM has developed for its larger operating systems. In each EBCDIC file, each alphabetic or numeric character is represented by an 8-bit binary number. In contrast to the VSAM data access method, data access methods for non-host file systems use a table row providing information about the structure of the data to be accessed. The application itself does not provide any information relating to the structure of the data to be accessed. Furthermore, data of non-host systems is stored in ASCII format. ASCII is the most common format for text files in computers on the Internet. In an ASCII file, each alphabetic, numeric, or special character is represented by a 7-binary digit number. Therefore, the VSAM access method is not compatible with any access method for non-host systems.
Host systems use a great number of applications, which have been developed over a long period of time. New technologies like Internet technologies or e-business applications are mainly based on UNIX platforms using non-record-based access methods. Therefore, the major growth in the future is not located in the host system environment using proprietary record-based access methods like VSAM, but in the UNIX or Linux environment using non-record-based access methods. In order to protect the investments in the host sector, it is desirable that the host applications can work without any change with data stored on the new platforms.
Furthermore, VSAM data must be transferred from the host environment to the UNIX or Linux environment in a relatively simple way.
It is therefore an object of the present invention to provide a system and method of data access by existing host applications to data stored on non-host systems using non-host access methods without changing the host applications themselves.
It is a further object of the present invention to easily provide data from the host systems to the non-host systems using multiple non-host file systems.
It is a further object of the present invention to store the data in different remote file systems simultaneously.
Finally, it is an object of the present invention to provide synchronisation of data between the host and the non-host system.
These objects are achieved by the features of the independent claims. Further preferred embodiments of the present inventions are laid down in the dependent claims.
The present invention contemplates a system and method for automatic redirection of record-based data access to host files to multiple non-host file systems having non-record-based access comprising a redirector engine, a redirector server and at least one handler. The redirector engine, located on the host side, gets automatic control for each request of a host application (e.g., a read/write request), interprets a property list containing information on whether and how redirection for that request should be processed, makes a redirect decision based on information received from the property list, and establishes a communication with its assigned redirector server. The redirector server, located at a non-host system, handles communication with the redirector engine and the handler, makes data conversion if required and passes control to the handler specified in the property list. The handler component converts the initial request into a request specific to the non-host file system, controls the execution of the request, and returns the result to the redirector engine.
A main advantage of the present invention is that heterogeneous systems using different file systems can work on the same data store without any modification of the host applications themselves. A synchronization of data between host system and non-host systems can be selected very easily by setting the appropriate parameter in the property list. The data can be stored in different file systems or data stores simultaneously. Finally, a host program is able to access data in different file system, in different encoding formats, at the same time in real time.
Embodiments of the present invention will now be described, by a way of example, with reference to the accompanying drawings, in which:
The redirector engine 18 has the following functionalities:
The redirector server 20 has the following functionalities:
The handler 22 has the following functionalities:
In the embodiment shown, the communication between redirector engine 18 and redirector server 20 is established by using the TCP/IP (Transmission Control Protocol/Internet Protocol) protocol.
The redirector 18, 20, 22 handles requests for VSAM data 8 and redirects them to any non-host data store/file system 24 supported by the handler 22 identified in the property list to be described below. Using the redirector 18, 20, 22, existing host applications 12 on IBM VSE/ESA written in any programming language and running in a batch or online environment (e.g., CICS) can be used without any modification.
A preferred embodiment of the property file 1 is the list shown in
The above-explained property list 1 is only a preferred embodiment. The property list 1 may be extended by further parameters.
The host application 12 initiates an open request via an ACB (access control block) containing a filename and a catalogue name (step 40). With both items of information a control block structure is built in the memory of the host for further requests (step 80). The control block structure contains information about the organization and accessing of the file to be accessed. For each open request such a control block structure is built.
After the successful opening of a file, VSAM 10 activates the redirector engine 18 without informing the application 12. Using the information contained in the open request, the redirector engine 18 reads the property list 1 and checks for an entry with the same catalogue and filename parameters to determine whether a redirection should take place at all; a redirection only takes place when the filename and catalogue name of the open request are contained in an entry of the property list 1 (step 100).
The owner parameter is not checked for an open request, only for a read/write request (
The redirector server 20 performs data conversion of the package if required and invokes the handler 22 specified in the parameter list (step 140). Upon being invoked, the handler 22 executes a file system-specific request (e.g., DB2 SQL connect . . . ) corresponding to the VSAM open request using the information contained in the parameter list (step 160). After a successful open, a return message is sent from the handler 22 via the redirector server 20 to the redirector engine 18, giving back control to the host program 12 (step 180).
Upon the completion of execution on the non-host system 6, control is given back to the redirector engine 18, and further execution on the host system 2 depends on the owner specified in the property list 1 (step 125). If the owner specified in the property list 1 is REDIR (step 165), control is given back to the host application 12 without accessing VSAM 10 (step 185). On the other hand, if the owner specified in the property list 1 is VSAM (step 166), normal VSAM processing of the request is continued and the write request is also performed on the VSAM data 8, thereby securing a synchronization between the VSAM data 8 and the non-VSAM data 24 (step 186). Control is then given back to the application program 12 (step 187).
The owner parameter therefore has an important function of allowing use of the redirector engine 18 either as a synchronization mechanism between different file systems or as a simple redirection to other common data stores. With the large number of host applications in various programming languages running on a host system (e.g. IBM VSE/ESA), it is very important to let them run unchanged with data stored on different platforms (e.g., relational databases, flat files) in real time.
In the case of read requests, the original host data structure is rebuilt before the data is returned to the host application 12. The handler 22 is responsible for this step. In the next step the data conversion from ASCII to EBCDIC takes place by redirector server 20 and then the data is sent via the redirector engine 18 to host application 12.
The invention also allows one to migrate host data to another non-host file system 24 by using the redirector as follows. The property list 1 is prepared in such a way that the owner parameter is VSAM. The options parameter in the property list 1 is set to “migrate”. That means that any host application 12 that entirely reads the host file will cause a migration of this data via the specified handler 22. The host application 12 initiates a read request to the host data. The redirector 18 engine is automatically invoked and takes control of the read process. The owner parameter in the property list 1 is in this case VSAM, which means that the read is done by VSAM 10. After the read process is done and host data is in memory, the redirector engine 18 interprets the option parameter, which is migrate. In this case the parameter list created includes the type of request, which is set to write data. The parameter list is sent to the handler 22 via the redirector server 20.
The main advantages of the present invention may be summarized as follows. Unchanged host applications can access via their traditional access methods (record-based access) data residing in different platforms using non-record-based access methods. The redirection decision is made for each individual request. A synchronization of data between host system and non-host systems can be selected very easily by setting the appropriate parameter in the property list. The data can be stored in different file systems or data stores simultaneously. Finally, the host program is able to access data in different file system, in different encoding formats at the same time in real time.
Number | Date | Country | Kind |
---|---|---|---|
01111036 | May 2001 | DE | national |
Number | Name | Date | Kind |
---|---|---|---|
5329619 | Page et al. | Jul 1994 | A |
5379419 | Heffernan et al. | Jan 1995 | A |
5745748 | Ahmad et al. | Apr 1998 | A |
5754830 | Butts et al. | May 1998 | A |
5758125 | Misinai et al. | May 1998 | A |
5819251 | Kremer et al. | Oct 1998 | A |
5867648 | Foth et al. | Feb 1999 | A |
5987523 | Hind et al. | Nov 1999 | A |
6389457 | Lazaridis et al. | May 2002 | B2 |
6496865 | Sumsion et al. | Dec 2002 | B1 |
6530078 | Shmid et al. | Mar 2003 | B1 |
6609126 | Smith et al. | Aug 2003 | B1 |
6678700 | Moore et al. | Jan 2004 | B1 |
6938052 | Mild et al. | Aug 2005 | B2 |
20010051955 | Wong | Dec 2001 | A1 |
20020083120 | Soltis | Jun 2002 | A1 |
20030037202 | Kedem et al. | Feb 2003 | A1 |
Number | Date | Country | |
---|---|---|---|
20020169830 A1 | Nov 2002 | US |