Non-Java client support for high availability for connections to Db2 for z/OS servers

Sysplex workload balancing functionality on Db2 for z/OS servers provides high availability for client applications that connect directly to a data sharing group. Sysplex workload balancing functionality provides workload balancing and automatic client reroute capability. This support is available for applications that use Java™ clients (JDBC, SQLJ, or pureQuery), or non-Java clients (ODBC, CLI, .NET, OLE DB, PHP, Ruby, or embedded SQL).

A Sysplex is a set of z/OS systems that communicate and cooperate with each other through certain multisystem hardware components and software services to process customer workloads. Db2 for z/OS subsystems on the z/OS systems in a Sysplex can be configured to form a data sharing group. With data sharing, applications that run on more than one Db2 for z/OS subsystem can read from and write to the same set of data concurrently. One or more coupling facilities provide high-speed caching and lock processing for the data sharing group. The Sysplex, together with the Workload Manager (WLM), dynamic virtual IP address (DVIPA), and the Sysplex distributor, allow a client to access a Db2 for z/OS subsystem over TCP/IP with network resilience, and distribute transactions for an application in a balanced manner across members within the data sharing group.

Central to these capabilities is a server list that the data sharing group returns on connection boundaries and optionally on transaction boundaries. This list contains the IP address and WLM weight for each data sharing group member. With this information, a client can distribute transactions in a balanced manner, or identify the member to use when there is a communication failure.

The server list is returned on the first successful connection to the Db2 for z/OS data server. After the client has received the server list, the client directly accesses a data sharing group member based on information in the server list.

Db2 for z/OS provides several methods for clients to access a data sharing group. The access method that is set up for communication with the data sharing group determines whether Sysplex workload balancing is possible. The following table lists the access methods and indicates whether Sysplex workload balancing is possible.

Table 1. Data sharing access methods and Sysplex workload balancing
Data sharing access method1 Description Sysplex workload balancing possible?
Group access A requester uses the group's dynamic virtual IP address (DVIPA) to make an initial connection to the Db2 for z/OS location. A connection to the data sharing group that uses the group IP address and SQL port is always successful if at least one member is started. The server list that is returned by the data sharing group contains:
  • A list of members that are currently active and can do work.
  • The WLM weight for each member.
The group IP address is configured by using the z/OS Sysplex distributor. To clients that are outside the Sysplex, the Sysplex distributor provides a single IP address that represents a Db2 location. In addition to providing fault tolerance, you can configure the Sysplex distributor to provide connection load balancing.
Yes
Group subset access A requester uses a location alias to make an initial connection to one of the members that is represented by the alias. A connection to the data sharing group that uses the group IP address and alias SQL port is successful if at least one member is started, and that member has its TCP/IP listener ready and has the capacity to accept new connections on the alias SQL port. The server list that is returned by the data sharing group contains:
  • A list of members that are currently active, can do work, and have been configured as an alias.
  • The WLM weight for each member.
The requester uses this information to connect to the member or members with the most capacity that are also associated with the location alias. Group subset access is used when requesters are required to take advantage of Sysplex workload balancing among a subset of members of a data sharing group.
Yes
Member-specific access Member-specific access is used when requesters need to access only one member of a data sharing group. For member-specific access, the connection uses the member-specific IP address. For member-specific access to be used, IBM Data Server Driver for JDBC and SQLJ properties enableSysplexWLB and enableConnectionConcentrator must be set to false. No
Note:
  1. For information about data sharing access methods, search the IBM® documentation for the communicating with data sharing groups topic in your specific Db2 for z/OS server version.

Sysplex workload balancing includes automatic client reroute: Automatic client reroute support enables a client to recover from a failure by attempting to reconnect to the database through any available member of a Sysplex. Reconnection to another member is called failover.

Alternate groups are an additional failover mechanism for automatic client rerouting when connectivity to the current group cannot be re-established. A group is a database created in a Sysplex data sharing environment. The database to which your application explicitly connects to is called the primary group.

For Java, CLI, or .NET client applications, failover for automatic client reroute can be seamless or non-seamless. Seamless failover means that when the application successfully reconnects to an alternate server or alternate group, the server does not return an error to the application.

Client affinities is an alternative high availability solution for a direct connection to the Db2 for z/OS server.

Client direct connect support for high availability with a Db2 Connect server: Client direct connect support for high availability requires a Db2 Connect license, but does not require a Db2 Connect server. The client connects directly to z/oS. If you use a Db2 Connect server, but set up your environment for client high availability, you cannot use some of the features that a direct connection to z/OS provides. For example, you cannot use the transaction-level workload balancing or automatic client reroute capability that is provided by the sysplex.