Stay in sync - Introducing Teradata Unity 13.10

Unity
Unity is Teradata’s data synchronization and workload routing tool providing Active – Active database availability delivering near real-time RTO/RPO
Teradata Employee

Stay in sync - Introducing Teradata Unity 13.10

Teradata Unity 13.10, the latest enabling technology of the Teradata Analytical Ecosystem was formally announced at PARTNERS Conference 2011.  The product’s focus is to simplify the analytical ecosystem by removing the everyday complexities involved in query management and data synchronization across multiple Teradata systems.  Teradata Unity delivers on this strategy by way of product automation.

Teradata Unity serves as an abstraction layer for users and applications making multiple Teradata systems appear as a single Teradata database instance.  Unity dynamically manages all the traditional activities around query routing and data synchronization creating a single integration layer for the Teradata ecosystem.

Core Components: 

Query Management

Teradata Unity has two query management modes.  The first is Read Override mode.  Read Override is a session based, read-only routing mechanism based on defined routing rules.  This mode supports Named and Preferred routing.  Under the Preferred routing mode, in the event of a system failure Unity will automatically reroute queries to the available system. As such, Teradata Unity is a full replacement for the Teradata Query Director product.  No future enhancements will be applied to Teradata Query Director as Unity will now provide this functionality although Teradata Query Director will continue to be supported through Q2 of 2013.

The second routing mode in Teradata Unity is Read/Write mode.  As the name implies, this mode allows for both reads and writes to be applied through Teradata Unity.  In this mode, Unity will perform a light parsing of the statement to understand which SQL objects are being accessed.  Unity has a data dictionary identifying the location of SQL objects in the various Teradata systems.  Based on this information, the statements will be automatically routed to the appropriate system or systems. 

Consider the following example: An environment has three Teradata systems (A, B, and C) with Sales data existing on systems A and B while HR data exists only on system C.  A statement going through Unity accessing Sales data will be intelligently routed and applied to system A and B, not C.  In Read/Write mode, the users no longer need to worry about defining routing rules or concern themselves with which system they should be querying.  Unity will do this for the user automatically.

Both query management modes, Read Override and Read/Write, are configurable at the table level. 

Data Synchronization

Teradata Unity provides data synchronization though a mechanism called SQL Multicast.  The SQL Multicast function will apply writes to all systems that are under Unity control keeping them all in sync.  This is not change data capture or a table copy!  This is an approach where SQL statements are applied to multiple target systems, based on location of the SQL objects.  With Unity, there is no concept of Primary/Secondary rather all systems are considered peers.  In the event of an outage, Unity will automatically route users and applications to the next available system.  Reads and writes will continue to go to the available system and all writes will be logged in the Unity Recovery Log.  Upon both systems becoming available, Unity will apply all the writes in the Recovery Log in the same order and operation as they were applied to the available system keeping all systems in sync.  The approach makes any outage completely transparent to the user or application.  Failover is handled automatically. 

Unity allows for data synchronization across multiple systems for both planned and unplanned events.  This creates the opportunity to perform rolling upgrades with no interruption to users or applications. 

Finally, Unity will synchronize any changes to a given table with that same table in other Teradata systems under Unity control.  In other words, if the Sales table exists in system A, B and C, a change to the sales table in System A will be automatically applied to Systems B and C as well.  This synchronization includes DDL, DML, and DCL.  

Auto Resubmit

The Auto Resubmit feature of Teradata Unity continues to drive automation and remove complexity from the users.  In the event of an outage or database restart, Unity will automatically recognize where a query has failed and resubmit the remaining portions of the query to the next available system.  The Auto Resubmit feature essentially makes the outage or database restart transparent to the application or user. 

Below is a screenshot of the Unity user interface.  The picture shows the ability to manage each system under Unity control, check the status and take action.  The user can change the state of a given Teradata system by clicking on the following commands:  Freeze, Demote, Halt, or Deactivate.  Once one of those commands is issued, the user can then click the Restore function to bring the systems back in sync. 

The screenshot below shows the Teradata Unity dashboard.  The dashboard details system-level information of the systems under Unity control including version numbers and key configuration settings such as Recovery Log size, estimated allowable downtime and last checkpoint timestamp. The dashboard also displays performance information.  Figure X shows not only the Read/Write mix, but also the distribution of Reads amongst the systems under Unity control.

In addition to the core components described earlier, Teradata Unity 13.10 is fully integrated with Teradata Multi-System Manager (TMSM).  Integration with TMSM enables customers to view Unity system health as well as receive alerts, warnings and information regarding data loads, synchronization, and potential outages. 

For additional information on Unity 13.10, please go to Teradata.com and search for Unity.

Documentation/Collateral

Teradata Unity Data Sheet 

 EB- 6377

Teradata Unity User Guide

 B035-2520-041A

Teradata Unity Release Definition 

 B035-2524-041C

16 REPLIES
Enthusiast

Re: Stay in sync - Introducing Teradata Unity 13.10

Hi Jeff,

I heard that there is a limitation in UNITY in the case of Teradata Unity server failure requires an application reconnect. That is, any in-flight transactions must be rolled back and queries resubmitted. Is that true? Or the Auto Resubmit will over come this limitation? Please confirm, we are going to deploy the ecosystem in next couple of months.

Thanks,
Geeta Kudumula.
Teradata Employee

Re: Stay in sync - Introducing Teradata Unity 13.10

Geeta -

You are correct. In the event of a Unity Server failure, the client sessions will be disconnected. In-flight transactions would be automatically rolled back by the database (with some exceptions where transactions are in auto-commit mode). The connection from the client would need to be re-established and resubmitted. When Unity completes failover to the 2nd Unity sever, it will reconnect to the database and verify which transactions completed.

The Auto Resubmit feature protects against database failures rather than Unity Server failures.

Hope this helps.
Enthusiast

Re: Stay in sync - Introducing Teradata Unity 13.10

Thank you.
Fan

Re: Stay in sync - Introducing Teradata Unity 13.10

Jeff,
Is Teradata working on enhancing unity to deal with load utilities as well, providing a full solution for maintaining a multi system environment without application impact?
Thanks!
Teradata Employee

Re: Stay in sync - Introducing Teradata Unity 13.10

Marty -

Yes, Teradata Unity will be enhanced to support bulk loads in the future. Teradata Unity 13.10 supports TPT Stream, Tpump, BTEQ, JDBC, ODBC, .NET and CLI as part of the Unity Foundation. We will be adding support for the TPT bulk load utilities in phases as a separate "Advanced Data Synchronization” option to the Unity Foundation in future releases.
Enthusiast

Re: Stay in sync - Introducing Teradata Unity 13.10

What is wrong with load balancer that quite mature, proven product and cost effective for balancing the load among “ecosystems”. Synchronization can be accomplished at ETL level.
Teradata Employee

Re: Stay in sync - Introducing Teradata Unity 13.10

I'm assuming by “load balancer”, you are referring to Query Director. Unity will replace Query Director yet it will provide a query management mode (Read Override mode) that offers the same feature functionality as Query Director -- Named and Preferred, session-level, read-only routing. In addition, we have documented the steps to migrate existing Named/Preferred Query Director routing rules to Unity’s Read Override mode. I’d be happy to share that document with you through email. As described in the above article, Unity enhances Teradata’s query management capabilities by providing Intelligent Query Routing or Read/Write mode. In this mode you will be able to route queries based on the location of the SQL object you are trying to access, a much more granular and advanced level of query management. This is a feature we had always had on the roadmap for Query Director and are now able to realize in the context of Unity.
Enthusiast

Re: Stay in sync - Introducing Teradata Unity 13.10

Hi schemanske@,

Do you have any updated info for 14.00 regarding synchronization, Unity? Wondering if TPT Loader is fully integrated in Unity? How about TPT Updater?

Thanks a lot

Enthusiast

Re: Stay in sync - Introducing Teradata Unity 13.10

Hi Jeff,

Does Unity require dedicated hardware or, is there a software only option that could be installed on any system.

Appreciate your response.

-Abraham