Wednesday, December 14, 2011

If you are late, just say you are super asynchronous... (HADR)

Well, not everybody is on time and waiting for them can hold up a meeting, important decisions, or completing tasks. The same waiting can happen in an IT environment for various reasons, e.g., a replication or synchronization process taking longer because of network congestion or temporarily overloaded hardware. But what can you do when other tasks are waiting for?

When using DB2 HADR (High Availability Disaster Recovery) some thoughts have to be put into the decision of what synchronization mode to use. Starting with DB2 9.7 FP 5 there are now 4 instead of 3 modes offered:
  • SYNC (synchronous): the transaction log has been written on both the primary and standby
  • NEARSYNC (nearly synchronous): the transaction log has been written on the primary and has been transferred to the standby
  • ASYNC (asynchronous): the transaction log has been written on the primary and is ready to be sent over to the standby
  • SUPERASYNC (super asynchronous): the transaction log has been written on the primay
The SYNC mode needs the most work before a transaction is considered committed the SUPERASYNC mode the least. On the reverse, the SUPERASYNC mode has the most potential for loss of a transaction in the case of a failure. It is the traditional battle between performance and consistency as we have with isolation levels in database systems.

If you want to learn more about HADR for DB2, take a look at the best practices section on developerWorks. In August a new paper on DB2 HADR has been added that focuses on the configuration and tuning of HADR environments. And remember, you are not reading the paper late. You are just super asynchronous with the news...

Friday, December 9, 2011

5 minutes, 60 seconds, and ATS: the Friday learning

It is Friday afternoon and a slow day, time to look up an interesting topic in the DB2 Information Center: ATS.
  • What is ATS? It is the Administrative Task Scheduler.
  • It enables DB2 to automate the execution of tasks.
  • 5 minutes? Every 5 minutes ATS checks for new or updated tasks and executes them if needed.
  • 60 seconds? If the ATS daemon fails to execute a task, it will retry the execution every 60 seconds.
  • Don't overload! If a specific task is still running, ATS won't start another instance of the same task.
  • ADMIN_TASK_STATUS is an administrative view to retrieve status information.
  • SYSTOOLSPACE is the place where task data is stored. It is a user data tablespace.
  • And, last but not least, what is a task...? Tasks need to be encapsulated in user-defined or system-defined procedures. ADMIN_CMD is such a system-defined procedure which can be used to backup a database, run reorg, collect statistics via runstats, etc.
So much as introduction, you can read more details at the linked pages.

Thursday, December 8, 2011

Scaling of memory-related configuration settings for tests of DB2 LUW

In my recent post I wrote about some available workload drivers. Today, I would like to point you to an interesting article on developerWorks: Scaling of DB2 for Linux, UNIX, and Windows memory-related configuration parameters on a test system. In that article the authors describe a way of simulating a production system on a test system by scaling down (or up) some of the memory settings. They describe a constrained and a relaxed approach for either a system with fixed settings or one with flexible settings like when STMM is in use. A Perl script is provided so you can use the approach for your own testing.

Monday, December 5, 2011

WMD: Weapon of mass destruction? No, Workload Multiuser Driver!

When you hear of WMD, for many of you a term other than Workload Multiuser Driver may come up first. But it is the term and hence the acronym the team over at the Sourceforge project working on this add-on to the DB2 Technology Explorer chose. The WMD is a RESTful web service which allows multiple users to concurrently run different workloads against DB2 and WMD can be controlled from the Technology Explorer.

This is of course interesting when you want to showcase certain features of DB2. However, as the WMD is a component of its own and can be downloaded as such, it is also one of the options to set up your own performance or system tests. And this brings me to the question I was recently asked: What free workload drivers do you know of for DB2?

In addition to the WMD there is also a workload driver in the TPoX (Transaction Processing over XML data) benchmark, another Sourceforge project for DB2. It cannot be downloaded separately, but it is documented and can be adapted to your own needs.

What other free workload drivers do you know of, which ones do you prefer?