Tuesday 16 December 2014

Integrating on-prem DB2 for z/OS data with Cloud applications via Cloud Integration Service on Bluemix

DB2 for z/OS is the preferred Systems of Record for mission critical enterprise data. With the advent of Cloud paradigm, enterprise customers are looking for ways in which they can easily and securely expose DB2 for z/OS data to emerging Systems of Engagement. This has led to a hybrid cloud model, whereby public cloud offerings such as Bluemix need to access DB2 z/OS data hosted on premises.

With the growing popularity of Bluemix, customers want to quickly expose DB2 z/OS data to Bluemix developers as APIs and allow seamless integration of cloud and on-prem data. IBM Cloud Integration service for Bluemix has made that possible by adding native support for DB2 for z/OS as an enterprise endpoint. With Cloud Integration service on Bluemix, you can not only connect to on prem Db2 z/OS, browse and move data, you can also create REST APIs for DB2 z/OS CRUD operations that can be invoked easily by Bluemix applications.



To allow connectivity to DB2 z/OS running behind a firewall, you need to install and configure an on premise Websphere Cast Iron Secure Connector behind the firewall such that it has direct access to DB2. Secure Connector sets up a tunnel between company's secure network and Bluemix applications. Once you are connected to on-prem DB2 for z/OS using Secure Connector, you can sync data between on premise DB2 and Cloud Database using Data Sync capability. You can also choose to not move any data, but just expose REST APIs for Bluemix users to access DB2 data residing on prem.

You can find step by step instructions to access on-prem DB2 data from Bluemix at https://www.ng.bluemix.net/docs/#services/CloudIntegration/index.html#gettingstartedwithcloudintegation.


Thursday 4 December 2014

Faster problem determination in DB2 Connect applications with Smarter Serviceability

As DB2 Connect 10.5 FP5 goes GA, there are several exciting new capabilities to look forward to. I want to highlight our emphasis on enhancing serviceability of DB2 Connect drivers for faster problem resolution. Adoption of DB2 Connect has proliferated as customers strive to modernize their applications for a distributed environment. Most of these customers run with a complex multi-tiered stack environment with several Application Servers and Databases. When an application failure happens, it is often extremely difficult to pinpoint the cause of the failure due to lack of sufficient diagnostics.

Although DB2 Connect drivers offer rich tracing capability, collection of traces require recycle of Application Servers, which is difficult in production environments. Problem is aggravated if symptom is intermittent and workload is high, leading to longer turnaround time for resolution and frustration for all stakeholders (customer, IBM). To overcome this, DB2 Connect Java driver now offers an online tracing capability, which means that traces can be turned on/off and levels of tracing can be altered without needing to bring down the Application Server/JVM. An efficient polling mechanism is introduced whereby the tracing related properties such as TraceFile and TraceLevel are monitored at periodic intervals – these properties can be dynamically altered and will be picked up during polling. This will alleviate customer's pain point of bringing down application servers just to collect traces in 24X7 production environments.

Another area we addressed was lack of First Failure Data Capture. Again, we rely heavily on traces and there was no way to collect minimal targeted diagnostic information on a failure without needing to turn on traces (which can be heavy weight). With Cancun, we have introduced the capability to collect relevant diagnostics pertaining to specific error scenarios in both Java (JDBC) and non-Java (CLI/ODBC) drivers without turning on traces. When certain exceptions happen (which is configurable by customers), basic diagnostic information on that exception is auto logged in designated directories (which is also configurable). This prevents loss of critical diagnostic data on the first occurrence of the failure and improves the chances of resolution on the first failure itself rather than waiting for a recurrence.

We have embarked on this journey to enhance overall serviceability of DB2 Connect to drive up customer satisfaction and improve overall product experience of all stakeholders (application developers, App Server admins, DBAs, systems programmers, IBM support and dev). There are several serviceability related requirements on our radar for future releases. If you would like to see a particular serviceability feature built into the product in the long term, do drop me a note at pallavipr@in.ibm.com.

Monday 10 November 2014

Consider direct distributed connections to DB2 and trading up to DB2 Connect Unlimited Edition

Top banks, financial services, retail and telecom companies store their mission critical data on  DB2 for z/OS, DB2 LUW and DB2 for i. Distributed workloads accessing DB2 data have proliferated due to the ubiquity of Web and Mobile applications. DB2 Connect provides a portfolio of database drivers offering distributed access to DB2 data through standard interfaces such as JDBC, SQLJ, OLE DB, ADO, ADO.NET, CLI, embedded SQL and scripting Languages such as PhP, Python, Ruby and Perl.

For distributed access to data stored on DB2 for z/OS and DB2 for i, license entitlement to DB2 Connect must be purchased. DB2 Connect is offered in several editions (Enterprise Edition, Application Server Edition, Unlimited Edition). Introduction of Unlimited Edition for both DB2 for z/OS and DB2 for i offers flexibility for direct connections to DB2 servers (without the DB2 Connect Server or Gateway) and transparently handles growth in number of users and applications. More customers anticipate the need for more users accessing DB2 data from Web, Mobile and Cloud anytime, anywhere. DB2 Connect Unlimited Edition license charges are not based on number of users or application servers, rather it is based off the processing capacity of zSeries and iSeries servers. This allows any number of distributed users, applications and workstations to connect. It also allows server side install of DB2 Connect license, instead of replicating the license on potentially hundreds of client workstations or application servers.

We are seeing a pattern whereby the decision to trade up to DB2 Connect Unlimited Edition is taken when customers adopt direct connectivity to DB2 servers (without the DB2 Connect Server or Gateway component). With the advancements in DB2 Connect client drivers around connection management, failover and workload management, more customers are adopting direct distributed connectivity to DB2 instead of going through the DB2 Connect Server or Gateway component. Direct connections to DB2 offers several advantages -

1) Simplification of distributed connectivity by reduction of one layer.
2)  Reduced resource consumption since no resources for DB2 Connect Server machines  (hardware, software) needed. No installation, maintenance, migration of this extra component.
3) Improved availability as point of failure is removed.

4)  Improved response time of distributed applications (especially OLTP applications) due to elimination of extra hop.
 

We encourage you to evaluate simplification of DB2 Connect environment by going direct to DB2 (without Gateway) and upgrading to Unlimited Edition. You will not have to worry about growing number of users and applications who become instantly available without any prior notice from different channels such as Web, Mobile and Cloud.

Modernize legacy COBOL to Java on z/OS

Java has evolved into a viable alternative to COBOL for many DB2 z/OS customers. There is an emerging trend for customers to write new business logic in Java, and in some cases replace COBOL business logic with Java. This offers several advantages -
  • Standard Java APIs (such as JDBC) allows customers to enable applications for diverse mediums such as Web and Cloud.
  • Developers can rapidly build applications by reusing existing business logic rather than bottom up development.
  • Customers can easily attract talent to develop and maintain Java code.
  • Speciality processors on mainframe (zIIP and zAAP) allow offload for Java applications lowering the total cost of ownership.
  • Advances in Java technology on z/OS provides comparable performance, throughput and overall quality of service that are the hallmarks of native COBOL.

Many customers are in the process of running proof-of-concepts to evaluate Java technology choices in the context of their environment. It is an interesting experience to work with customers who are at the leading edge of business transformation. Java presents new opportunities for exploitation of business logic through many channels, but it also comes with a set of challenges that customers must be prepared to handle.

An important aspect we addressed with a couple of large COBOL heavy accounts who opted to use JDBC interfaces was a change in their mindset to be more aware of tuning considerations for DB2 and Java environment. It was a rewarding exercise to build awareness on the fundamental differences between native COBOL that goes through static SQL execution paths in DB2 versus JDBC that goes through dynamic SQL paths. Although static SQL may provide better out-of-box performance, dynamic SQL has tuning options that takes the performance at par with static SQL with all the flexibility of dynamic SQL. A few large accounts who prefer the predictability and security of static SQL are also evaluating SQLJ – which allows Java applications to use static sql with DB2 by binding packages. SQLJ applications do need coding of custom SQLJ syntax. There are several other important considerations such as decision to rewrite COBOL code into Java versus just introducing Java wrappers around COBOL logic (which will be faster to build). There are several smaller considerations such as connectivity options to DB2 (Type 4 vs Type 2) and recommended Java programming model for high performance.

Transformation from COBOL to Java for DB2 on z/OS is an investment – but it can yield returns in the short and long term by exposing core Systems of Records applications to modern Systems of Engagement. Enterprise modernization is maturing from a "nice-to-have" initiative to an essential initiative and what began as a modernization movement in a handful of leading edge adopters is now spreading across the global z/OS customer base. If you are one of those customers sitting on the fence for modernization, time to act is now. IBM taps into its global network of DB2, z/OS, CICS, COBOL and Java integration experts to provide guidance for the success of such legacy modernization projects.