SlideShare a Scribd company logo
1 of 29
W W W. S R I N I M F. CO M
Copyright 2014
IBM MQ FOR ZOS
Basics
Copyright 2014
 MQ Series is a middleware software that implements
messaging and queuing.
 Messaging - - programs communicate by sending data
in messages rather than by calling each other directly.
 Queuing - messages are put on queues in
storage, eliminating the need for programs to be
logically connected.
Details
Copyright 2014
 Initially, IBM’s version of MQSeries ran only on
mainframe (CICS/ESA, IMS/ESA, and eventually VSE).
 Today it runs more than 35 platforms
MQ Series Objects
Copyright 2014
Queue Manager
A queue manager is that part of an MQSeries product
that provides the messaging and queuing services to
application programs, through the Message Queue
Interface (MQI) program calls.
It controls access to queues and serves as transaction
(syncpoint) coordinator for all queue operations.
QUEUES
Copyright 2014
MQSeries defines four types of queues. A queue instance is fully
qualified by its queue manager and queue name.
Local Queue - an actual queue for which storage is allocated.
Remote Queue - a definition of a queue on a different queue manager
(acts somewhat like a pointer)
Alias Queue - another name for a local or remote queue. Typically
used to switch queue destinations without modifying program code
Model Queue - a template whose properties are copied when creating
a new dynamic local queue (“ create queue xxx “like” queue yyy).
Triggers And Local Queues
Copyright 2014
 Local queues can generate events (messages) under
certain conditions (like queue full).
 These “event” messages can be used to “trigger” the
execution of a program.
 These events are called trigger messages. The queue
on which they are put is called an Initiation Queue.
Trigger Monitor
Copyright 2014
 Process defines an application to an MQSeries queue
manager. A process definition object is used for
defining applications to be started by a trigger
monitor.
 A trigger monitor is a program that listens on an
initiation queue and executes commands named in
Process definitions
Tip
Copyright 2014
 Both CICS and MQSeries were developed at Hursley
Laboratory in the United Kingdom
Channels
Copyright 2014
 A channel provides a communication path between Queue
Managers. There are two types of channels - Message
Channels and MQI channels (also called Client channels).
 Message channels - provide a communication path
between two queue managers on the same, or
different, platforms.
 A message channel can transmit messages in one direction
only. If two-way communication is required between two
queue managers, two message channels are required.
Channel Types
Copyright 2014
There are six types of message channels:
Sender - initiates connection to Receiver
Server - Accepts request to start from requester, then becomes Sender
Receiver - Passive; waits for initiation sequence form Sender
Requester - Active at start, then becomes Receiver
Cluster-sender (used amongst Cluster Queue Managers)
Cluster-receiver –As above
The Sender side of the session is the “transaction coordinator”. Message
channels implement a protocol that includes a commitment protocol.
Channels recover from failure by agreement: they must agree on the last
committed unit of work .(This is the reason channels are oneway)
MQI Channels
Copyright 2014
 MQI channels - connect an MQSeries client to a queue
manager on a server machine (where a queue manager
is defined). Used for transfer of MQI calls and
responses only and is bi-directional.
Flow of Messages
Copyright 2014
Flow of Messages
Copyright 2014
Details-Flow
Copyright 2014
1. Transmission Queue is a local queue.
2. Remote Queues “name” a transmission queue, and a
remote Queue Manager (QM2) and q local queue on QM2
3. App opens queue that is defined as a remote queue
4. App puts to queue
5. Queue manager places message on transmission queue
6. Message Channel Agent reads message and sends to
remote MCA.
7. Remote MCA gives message to Queue Manager QM1
8. QM1 puts message to target queue.
Messages
Copyright 2014
A message any arbitrary data that one program wants
to send to another. This data is called the application
data.
A message needs to include other information, such as
its destination and possibly a return address. This type
of data is called the message descriptor
Messages
Copyright 2014
A message any arbitrary data that one program
wants to send to another. This data is called the
application data.
A message needs to include other information, such
as its destination and possibly a return address. This
type of data is called the message descriptor.
There are four types of messages:
A request message is used by one program to ask
another program for something (usually data). A
request message needs a reply.
Messages contd…
Copyright 2014
A reply message is used in response to a request
message.
A one-way message, as you would expect, doesn’t need
a reply, though it can carry data.
A report message is used when something unexpected
occurs. For example, if the data in a reply message is not
usable, the receiving program might issue a report
message.
Message Contd…
Copyright 2014
Most useful report messages are generated by the Queue
Manager. For example, Delivery confirmation.
Messages can have a “time-to-live”, called Expiry. A
message that has not been delivered before its
expiration is removed (not given to an app)
What to do with undeliverable messages? Each queue
manager can have a dead-letter queue.
Messages Contd…
Copyright 2014
Messages can be individually designated persistent or non-persistent
(persistent messages are logged to enable recovery)
Message Correlater - select which message to get from queue
Message Priority - retrieve messages in different order of put
Segmented Messages - allows ending of VERY LARGE messages (> 100
MB). A message can contain a “reply to” address (the name of a Queue
Manager and Queue). This tells the receiving application where any
response should be sent. Messages are added and removed from queues in
Units of Work. The smallest Unit of Work is one message.
Units of work are atomic. When an app reads a message from a queue, a
message “appears” to have been removed, but in fact, it is still in storage
until the app “commits” the unit of work.
Transaction Support
Copyright 2014
 Unit of recovery - a piece of work that changes data
from one point of consistency to another.
 Syncpoint - A point of consistency (also called a or
commit point). It is a moment at which all the
recoverable data that an application program accesses
is consistent.
Process
Copyright 2014
Process contd…
Copyright 2014
 Applications are responsible for delimiting the beginning
and end of a transaction. How can messaging be
coordinated with a data base update?
 MQSeries is XA compliant and can operate with other XA
compliant systems as either a transaction manager
(coordinator) or resource manager (particpant).
Some examples: Sybase, DB2, Oracle.
MQ Series Logging
Copyright 2014
All operations that affect the “state” of the Queue
Manager and its objects are logged to a log file.
 What is “state”?
Object definitions (queue
manager, queues, processes, channels, etc)
Queue content (messages)
 What about message channel state?
Message channel states are logged separately by each
channel.
Logging and Recovery
Copyright 2014
 Circular – log records are written sequentially across several
files, then “wrap” back to the first file.
 Linear - log records are written sequentially across files. New
files are allocated as current files fill. No automatic reuse of file
space!
 Problem: Length (in time) of longest running
transaction vs amount of writes to log determines size
of log needed.
Tips…
Copyright 2014
 Circular logging is easy to manage, but is fatal if log is
damaged (hard to backup circular logs!).
 Linear logging is hard to maintain but provides for
archiving of previous logs (still a problem if “current”
log is damaged).
MQ Interfaces
Copyright 2014
 MQCONN – Connect to queue manager
 MQDISC – Disconnect from queue manager
 MQOPEN – Open object
 MQCLOSE – Close object
 MQPUT – Put message
 MQPUT1 – Put one message
 MQGET – Get message
 MQBEGIN – Begin unit of work
 MQCMIT – Commit
 MQBACK – Back out
 MQINQ – Inquire about object attributes
 MQSET – Set object attributes
Benefits
Copyright 2014
Interoperabilty - across dissimilar networks
between different computing environments
Asynchrony - Eliminates the time dependency
between applications (both apps must be alive AND
have a session in synchronous models).
Fewer Network Sessions - Only Queue Mangers
need to communicate using network sessions.
Administered Objects - Improves manageability of
BIG systems -Can monitor the state of a queue to
determine if apps are doing what they should:
Benefits …
Copyright 2014
Does any process have queue open for reading or writing?
Has a high water mark been reached?
How many messages have been added and removed in a
measured interval?
Message Persistence == Assured Delivery
Queues in stable storage retain messages even if applications
fail.
Even memory-only queues persist if at least the Queue Manager
stays up.
Transaction Support - Queue operations are just like reads and
writes in a database transaction!
Can we combine queue operations AND database operations
atomically? (YES!)
Copyright 2014
THANK YOU

More Related Content

What's hot

ALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARMALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARMIBM
 
Introduction of ISPF
Introduction of ISPFIntroduction of ISPF
Introduction of ISPFAnil Bharti
 
CICS basics overview session-1
CICS basics overview session-1CICS basics overview session-1
CICS basics overview session-1Srinimf-Slides
 
Db2 and storage management (mullins)
Db2 and storage management (mullins)Db2 and storage management (mullins)
Db2 and storage management (mullins)Craig Mullins
 
DB2 for z/OS and DASD-based Disaster Recovery - Blowing away the myths
DB2 for z/OS and DASD-based Disaster Recovery - Blowing away the mythsDB2 for z/OS and DASD-based Disaster Recovery - Blowing away the myths
DB2 for z/OS and DASD-based Disaster Recovery - Blowing away the mythsFlorence Dubois
 
RACF - The Basics (v1.2)
RACF - The Basics (v1.2)RACF - The Basics (v1.2)
RACF - The Basics (v1.2)Rui Miguel Feio
 
A First Look at the DB2 10 DSNZPARM Changes
A First Look at the DB2 10 DSNZPARM ChangesA First Look at the DB2 10 DSNZPARM Changes
A First Look at the DB2 10 DSNZPARM ChangesWillie Favero
 
Mainframe JCL Part - 1
Mainframe JCL Part - 1Mainframe JCL Part - 1
Mainframe JCL Part - 1janaki ram
 
Parallel Sysplex Implement2
Parallel Sysplex Implement2Parallel Sysplex Implement2
Parallel Sysplex Implement2ggddggddggdd
 
DB2 for z/OS Real Storage Monitoring, Control and Planning
DB2 for z/OS Real Storage Monitoring, Control and PlanningDB2 for z/OS Real Storage Monitoring, Control and Planning
DB2 for z/OS Real Storage Monitoring, Control and PlanningJohn Campbell
 
IBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration BasicsIBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration BasicsIBM
 
IBM MQ Overview (IBM Message Queue)
IBM MQ Overview (IBM Message Queue)IBM MQ Overview (IBM Message Queue)
IBM MQ Overview (IBM Message Queue)Juarez Junior
 
IBM MQ Online Tutorials
IBM MQ Online TutorialsIBM MQ Online Tutorials
IBM MQ Online TutorialsBigClasses.com
 
IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction ejlp12
 
DB2 Interview Questions - Part 1
DB2 Interview Questions - Part 1DB2 Interview Questions - Part 1
DB2 Interview Questions - Part 1ReKruiTIn.com
 
Datasets and catalogs
Datasets and catalogs Datasets and catalogs
Datasets and catalogs Roma Vyas
 
IMS DC Self Study Complete Tutorial
IMS DC Self Study Complete TutorialIMS DC Self Study Complete Tutorial
IMS DC Self Study Complete TutorialSrinimf-Slides
 

What's hot (20)

ALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARMALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARM
 
Introduction of ISPF
Introduction of ISPFIntroduction of ISPF
Introduction of ISPF
 
Tso and ispf
Tso and ispfTso and ispf
Tso and ispf
 
CICS basics overview session-1
CICS basics overview session-1CICS basics overview session-1
CICS basics overview session-1
 
Smpe
SmpeSmpe
Smpe
 
Db2 and storage management (mullins)
Db2 and storage management (mullins)Db2 and storage management (mullins)
Db2 and storage management (mullins)
 
DB2 for z/OS and DASD-based Disaster Recovery - Blowing away the myths
DB2 for z/OS and DASD-based Disaster Recovery - Blowing away the mythsDB2 for z/OS and DASD-based Disaster Recovery - Blowing away the myths
DB2 for z/OS and DASD-based Disaster Recovery - Blowing away the myths
 
RACF - The Basics (v1.2)
RACF - The Basics (v1.2)RACF - The Basics (v1.2)
RACF - The Basics (v1.2)
 
Mainframe - OPC
Mainframe -  OPCMainframe -  OPC
Mainframe - OPC
 
A First Look at the DB2 10 DSNZPARM Changes
A First Look at the DB2 10 DSNZPARM ChangesA First Look at the DB2 10 DSNZPARM Changes
A First Look at the DB2 10 DSNZPARM Changes
 
Mainframe JCL Part - 1
Mainframe JCL Part - 1Mainframe JCL Part - 1
Mainframe JCL Part - 1
 
Parallel Sysplex Implement2
Parallel Sysplex Implement2Parallel Sysplex Implement2
Parallel Sysplex Implement2
 
DB2 for z/OS Real Storage Monitoring, Control and Planning
DB2 for z/OS Real Storage Monitoring, Control and PlanningDB2 for z/OS Real Storage Monitoring, Control and Planning
DB2 for z/OS Real Storage Monitoring, Control and Planning
 
IBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration BasicsIBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration Basics
 
IBM MQ Overview (IBM Message Queue)
IBM MQ Overview (IBM Message Queue)IBM MQ Overview (IBM Message Queue)
IBM MQ Overview (IBM Message Queue)
 
IBM MQ Online Tutorials
IBM MQ Online TutorialsIBM MQ Online Tutorials
IBM MQ Online Tutorials
 
IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction
 
DB2 Interview Questions - Part 1
DB2 Interview Questions - Part 1DB2 Interview Questions - Part 1
DB2 Interview Questions - Part 1
 
Datasets and catalogs
Datasets and catalogs Datasets and catalogs
Datasets and catalogs
 
IMS DC Self Study Complete Tutorial
IMS DC Self Study Complete TutorialIMS DC Self Study Complete Tutorial
IMS DC Self Study Complete Tutorial
 

Viewers also liked

End to-end scheduling with ibm tivoli workload scheduler version 8.2 sg246624
End to-end scheduling with ibm tivoli workload scheduler version 8.2 sg246624End to-end scheduling with ibm tivoli workload scheduler version 8.2 sg246624
End to-end scheduling with ibm tivoli workload scheduler version 8.2 sg246624Banking at Ho Chi Minh city
 
Mainframe refresher-part-1
Mainframe refresher-part-1Mainframe refresher-part-1
Mainframe refresher-part-1vishwas17
 
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...Banking at Ho Chi Minh city
 
DB2 Systems Programming Tools of the Trade NA07B03
DB2 Systems Programming Tools of the Trade NA07B03DB2 Systems Programming Tools of the Trade NA07B03
DB2 Systems Programming Tools of the Trade NA07B03Linda Hagedorn
 
TWS zcentric Proof of Technology (from 2013 European Tour)
TWS zcentric Proof of Technology (from 2013 European Tour)TWS zcentric Proof of Technology (from 2013 European Tour)
TWS zcentric Proof of Technology (from 2013 European Tour)Nico Chillemi
 
CA ACF2™ and CA Top Secret® Part 1: The Road Leading to r16 and Capabilities ...
CA ACF2™ and CA Top Secret® Part 1: The Road Leading to r16 and Capabilities ...CA ACF2™ and CA Top Secret® Part 1: The Road Leading to r16 and Capabilities ...
CA ACF2™ and CA Top Secret® Part 1: The Road Leading to r16 and Capabilities ...CA Technologies
 
Db2 zos-sharing
Db2 zos-sharingDb2 zos-sharing
Db2 zos-sharingwetwind55
 
How To Master PACBASE For Mainframe In Only Seven Days
How To Master PACBASE For Mainframe In Only Seven DaysHow To Master PACBASE For Mainframe In Only Seven Days
How To Master PACBASE For Mainframe In Only Seven DaysSrinimf-Slides
 
FlashCopy and DB2 for z/OS
FlashCopy and DB2 for z/OSFlashCopy and DB2 for z/OS
FlashCopy and DB2 for z/OSFlorence Dubois
 
White Paper, The Basics Of Data Security
White Paper, The Basics Of Data SecurityWhite Paper, The Basics Of Data Security
White Paper, The Basics Of Data SecurityDan O'Dea
 

Viewers also liked (18)

Mvs commands
Mvs commandsMvs commands
Mvs commands
 
End to-end scheduling with ibm tivoli workload scheduler version 8.2 sg246624
End to-end scheduling with ibm tivoli workload scheduler version 8.2 sg246624End to-end scheduling with ibm tivoli workload scheduler version 8.2 sg246624
End to-end scheduling with ibm tivoli workload scheduler version 8.2 sg246624
 
Mainframe interview
Mainframe interviewMainframe interview
Mainframe interview
 
100 sql queries
100 sql queries100 sql queries
100 sql queries
 
OPC PPT
OPC PPTOPC PPT
OPC PPT
 
Mainframe refresher-part-1
Mainframe refresher-part-1Mainframe refresher-part-1
Mainframe refresher-part-1
 
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
 
IBM MobileFirst Platform v7.0 Pot Intro v0.1
IBM MobileFirst Platform v7.0 Pot Intro v0.1IBM MobileFirst Platform v7.0 Pot Intro v0.1
IBM MobileFirst Platform v7.0 Pot Intro v0.1
 
Mainframe OPC
Mainframe OPCMainframe OPC
Mainframe OPC
 
DB2 Systems Programming Tools of the Trade NA07B03
DB2 Systems Programming Tools of the Trade NA07B03DB2 Systems Programming Tools of the Trade NA07B03
DB2 Systems Programming Tools of the Trade NA07B03
 
Summary session 5
Summary session 5Summary session 5
Summary session 5
 
TWS zcentric Proof of Technology (from 2013 European Tour)
TWS zcentric Proof of Technology (from 2013 European Tour)TWS zcentric Proof of Technology (from 2013 European Tour)
TWS zcentric Proof of Technology (from 2013 European Tour)
 
CA ACF2™ and CA Top Secret® Part 1: The Road Leading to r16 and Capabilities ...
CA ACF2™ and CA Top Secret® Part 1: The Road Leading to r16 and Capabilities ...CA ACF2™ and CA Top Secret® Part 1: The Road Leading to r16 and Capabilities ...
CA ACF2™ and CA Top Secret® Part 1: The Road Leading to r16 and Capabilities ...
 
Db2 zos-sharing
Db2 zos-sharingDb2 zos-sharing
Db2 zos-sharing
 
How To Master PACBASE For Mainframe In Only Seven Days
How To Master PACBASE For Mainframe In Only Seven DaysHow To Master PACBASE For Mainframe In Only Seven Days
How To Master PACBASE For Mainframe In Only Seven Days
 
FlashCopy and DB2 for z/OS
FlashCopy and DB2 for z/OSFlashCopy and DB2 for z/OS
FlashCopy and DB2 for z/OS
 
White Paper, The Basics Of Data Security
White Paper, The Basics Of Data SecurityWhite Paper, The Basics Of Data Security
White Paper, The Basics Of Data Security
 
IMSDB - DBRC
IMSDB - DBRCIMSDB - DBRC
IMSDB - DBRC
 

Similar to IBM MQ Series For ZOS

Message Queuing (MSMQ)
Message Queuing (MSMQ)Message Queuing (MSMQ)
Message Queuing (MSMQ)Senior Dev
 
IBM Managing Workload Scalability with MQ Clusters
IBM Managing Workload Scalability with MQ ClustersIBM Managing Workload Scalability with MQ Clusters
IBM Managing Workload Scalability with MQ ClustersIBM Systems UKI
 
Message Queues a basic overview
Message Queues a basic overviewMessage Queues a basic overview
Message Queues a basic overviewGeshan Manandhar
 
[@NaukriEngineering] Messaging Queues
[@NaukriEngineering] Messaging Queues[@NaukriEngineering] Messaging Queues
[@NaukriEngineering] Messaging QueuesNaukri.com
 
2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software conceptsPrajakta Rane
 
Mule enterprise service introduction
Mule enterprise service introductionMule enterprise service introduction
Mule enterprise service introductionSon Nguyen
 
Message Queue (MQ) Testing
Message Queue (MQ) TestingMessage Queue (MQ) Testing
Message Queue (MQ) TestingUjjwal Gupta
 

Similar to IBM MQ Series For ZOS (20)

On MQ Series & JMS
On MQ Series & JMSOn MQ Series & JMS
On MQ Series & JMS
 
Red book mq
Red book mqRed book mq
Red book mq
 
Message Queuing (MSMQ)
Message Queuing (MSMQ)Message Queuing (MSMQ)
Message Queuing (MSMQ)
 
Ibm mq
Ibm mqIbm mq
Ibm mq
 
Componenets of osb12c
Componenets of osb12cComponenets of osb12c
Componenets of osb12c
 
Mule
MuleMule
Mule
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Mule esb
Mule esbMule esb
Mule esb
 
Mule esb
Mule esbMule esb
Mule esb
 
WebSphere MQ introduction
WebSphere MQ introductionWebSphere MQ introduction
WebSphere MQ introduction
 
IBM Managing Workload Scalability with MQ Clusters
IBM Managing Workload Scalability with MQ ClustersIBM Managing Workload Scalability with MQ Clusters
IBM Managing Workload Scalability with MQ Clusters
 
Message Queues a basic overview
Message Queues a basic overviewMessage Queues a basic overview
Message Queues a basic overview
 
Resume
ResumeResume
Resume
 
[@NaukriEngineering] Messaging Queues
[@NaukriEngineering] Messaging Queues[@NaukriEngineering] Messaging Queues
[@NaukriEngineering] Messaging Queues
 
componenets of osb12c
componenets of osb12ccomponenets of osb12c
componenets of osb12c
 
20240
2024020240
20240
 
2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts
 
Mq Lecture
Mq LectureMq Lecture
Mq Lecture
 
Mule enterprise service introduction
Mule enterprise service introductionMule enterprise service introduction
Mule enterprise service introduction
 
Message Queue (MQ) Testing
Message Queue (MQ) TestingMessage Queue (MQ) Testing
Message Queue (MQ) Testing
 

More from Srinimf-Slides

software-life-cycle.pptx
software-life-cycle.pptxsoftware-life-cycle.pptx
software-life-cycle.pptxSrinimf-Slides
 
Python Tutorial Questions part-1
Python Tutorial Questions part-1Python Tutorial Questions part-1
Python Tutorial Questions part-1Srinimf-Slides
 
Cics testing and debugging-session 7
Cics testing and debugging-session 7Cics testing and debugging-session 7
Cics testing and debugging-session 7Srinimf-Slides
 
CICS error and exception handling-recovery and restart-session 6
CICS error and exception handling-recovery and restart-session 6CICS error and exception handling-recovery and restart-session 6
CICS error and exception handling-recovery and restart-session 6Srinimf-Slides
 
Cics program, interval and task control commands-session 5
Cics program, interval and task control commands-session 5Cics program, interval and task control commands-session 5
Cics program, interval and task control commands-session 5Srinimf-Slides
 
Cics data access-session 4
Cics data access-session 4Cics data access-session 4
Cics data access-session 4Srinimf-Slides
 
CICS basic mapping support - session 3
CICS basic mapping support - session 3CICS basic mapping support - session 3
CICS basic mapping support - session 3Srinimf-Slides
 
Cics application programming - session 2
Cics   application programming - session 2Cics   application programming - session 2
Cics application programming - session 2Srinimf-Slides
 
The best Teradata RDBMS introduction a quick refresher
The best Teradata RDBMS introduction a quick refresherThe best Teradata RDBMS introduction a quick refresher
The best Teradata RDBMS introduction a quick refresherSrinimf-Slides
 
The best ETL questions in a nut shell
The best ETL questions in a nut shellThe best ETL questions in a nut shell
The best ETL questions in a nut shellSrinimf-Slides
 
The Easytrieve Presention by Srinimf
The Easytrieve Presention by SrinimfThe Easytrieve Presention by Srinimf
The Easytrieve Presention by SrinimfSrinimf-Slides
 
Writing command macro in stratus cobol
Writing command macro in stratus cobolWriting command macro in stratus cobol
Writing command macro in stratus cobolSrinimf-Slides
 
PLI Presentation for Mainframe Programmers
PLI Presentation for Mainframe ProgrammersPLI Presentation for Mainframe Programmers
PLI Presentation for Mainframe ProgrammersSrinimf-Slides
 
PL/SQL Interview Questions
PL/SQL Interview QuestionsPL/SQL Interview Questions
PL/SQL Interview QuestionsSrinimf-Slides
 
Oracle PLSQL Step By Step Guide
Oracle PLSQL Step By Step GuideOracle PLSQL Step By Step Guide
Oracle PLSQL Step By Step GuideSrinimf-Slides
 

More from Srinimf-Slides (20)

software-life-cycle.pptx
software-life-cycle.pptxsoftware-life-cycle.pptx
software-life-cycle.pptx
 
Python Tutorial Questions part-1
Python Tutorial Questions part-1Python Tutorial Questions part-1
Python Tutorial Questions part-1
 
Cics testing and debugging-session 7
Cics testing and debugging-session 7Cics testing and debugging-session 7
Cics testing and debugging-session 7
 
CICS error and exception handling-recovery and restart-session 6
CICS error and exception handling-recovery and restart-session 6CICS error and exception handling-recovery and restart-session 6
CICS error and exception handling-recovery and restart-session 6
 
Cics program, interval and task control commands-session 5
Cics program, interval and task control commands-session 5Cics program, interval and task control commands-session 5
Cics program, interval and task control commands-session 5
 
Cics data access-session 4
Cics data access-session 4Cics data access-session 4
Cics data access-session 4
 
CICS basic mapping support - session 3
CICS basic mapping support - session 3CICS basic mapping support - session 3
CICS basic mapping support - session 3
 
Cics application programming - session 2
Cics   application programming - session 2Cics   application programming - session 2
Cics application programming - session 2
 
The best Teradata RDBMS introduction a quick refresher
The best Teradata RDBMS introduction a quick refresherThe best Teradata RDBMS introduction a quick refresher
The best Teradata RDBMS introduction a quick refresher
 
The best ETL questions in a nut shell
The best ETL questions in a nut shellThe best ETL questions in a nut shell
The best ETL questions in a nut shell
 
The Easytrieve Presention by Srinimf
The Easytrieve Presention by SrinimfThe Easytrieve Presention by Srinimf
The Easytrieve Presention by Srinimf
 
Writing command macro in stratus cobol
Writing command macro in stratus cobolWriting command macro in stratus cobol
Writing command macro in stratus cobol
 
PLI Presentation for Mainframe Programmers
PLI Presentation for Mainframe ProgrammersPLI Presentation for Mainframe Programmers
PLI Presentation for Mainframe Programmers
 
PL/SQL Interview Questions
PL/SQL Interview QuestionsPL/SQL Interview Questions
PL/SQL Interview Questions
 
Macro teradata
Macro teradataMacro teradata
Macro teradata
 
DB2-SQL Part-2
DB2-SQL Part-2DB2-SQL Part-2
DB2-SQL Part-2
 
DB2 SQL-Part-1
DB2 SQL-Part-1DB2 SQL-Part-1
DB2 SQL-Part-1
 
Teradata - Utilities
Teradata - UtilitiesTeradata - Utilities
Teradata - Utilities
 
Oracle PLSQL Step By Step Guide
Oracle PLSQL Step By Step GuideOracle PLSQL Step By Step Guide
Oracle PLSQL Step By Step Guide
 
Hirarchical vs RDBMS
Hirarchical vs RDBMSHirarchical vs RDBMS
Hirarchical vs RDBMS
 

Recently uploaded

Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxJiesonDelaCerna
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
MICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptxMICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptxabhijeetpadhi001
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 
Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...jaredbarbolino94
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 

Recently uploaded (20)

Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
MICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptxMICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptx
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 
Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...
 
ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 

IBM MQ Series For ZOS

  • 1. W W W. S R I N I M F. CO M Copyright 2014 IBM MQ FOR ZOS
  • 2. Basics Copyright 2014  MQ Series is a middleware software that implements messaging and queuing.  Messaging - - programs communicate by sending data in messages rather than by calling each other directly.  Queuing - messages are put on queues in storage, eliminating the need for programs to be logically connected.
  • 3. Details Copyright 2014  Initially, IBM’s version of MQSeries ran only on mainframe (CICS/ESA, IMS/ESA, and eventually VSE).  Today it runs more than 35 platforms
  • 4. MQ Series Objects Copyright 2014 Queue Manager A queue manager is that part of an MQSeries product that provides the messaging and queuing services to application programs, through the Message Queue Interface (MQI) program calls. It controls access to queues and serves as transaction (syncpoint) coordinator for all queue operations.
  • 5. QUEUES Copyright 2014 MQSeries defines four types of queues. A queue instance is fully qualified by its queue manager and queue name. Local Queue - an actual queue for which storage is allocated. Remote Queue - a definition of a queue on a different queue manager (acts somewhat like a pointer) Alias Queue - another name for a local or remote queue. Typically used to switch queue destinations without modifying program code Model Queue - a template whose properties are copied when creating a new dynamic local queue (“ create queue xxx “like” queue yyy).
  • 6. Triggers And Local Queues Copyright 2014  Local queues can generate events (messages) under certain conditions (like queue full).  These “event” messages can be used to “trigger” the execution of a program.  These events are called trigger messages. The queue on which they are put is called an Initiation Queue.
  • 7. Trigger Monitor Copyright 2014  Process defines an application to an MQSeries queue manager. A process definition object is used for defining applications to be started by a trigger monitor.  A trigger monitor is a program that listens on an initiation queue and executes commands named in Process definitions
  • 8. Tip Copyright 2014  Both CICS and MQSeries were developed at Hursley Laboratory in the United Kingdom
  • 9. Channels Copyright 2014  A channel provides a communication path between Queue Managers. There are two types of channels - Message Channels and MQI channels (also called Client channels).  Message channels - provide a communication path between two queue managers on the same, or different, platforms.  A message channel can transmit messages in one direction only. If two-way communication is required between two queue managers, two message channels are required.
  • 10. Channel Types Copyright 2014 There are six types of message channels: Sender - initiates connection to Receiver Server - Accepts request to start from requester, then becomes Sender Receiver - Passive; waits for initiation sequence form Sender Requester - Active at start, then becomes Receiver Cluster-sender (used amongst Cluster Queue Managers) Cluster-receiver –As above The Sender side of the session is the “transaction coordinator”. Message channels implement a protocol that includes a commitment protocol. Channels recover from failure by agreement: they must agree on the last committed unit of work .(This is the reason channels are oneway)
  • 11. MQI Channels Copyright 2014  MQI channels - connect an MQSeries client to a queue manager on a server machine (where a queue manager is defined). Used for transfer of MQI calls and responses only and is bi-directional.
  • 14. Details-Flow Copyright 2014 1. Transmission Queue is a local queue. 2. Remote Queues “name” a transmission queue, and a remote Queue Manager (QM2) and q local queue on QM2 3. App opens queue that is defined as a remote queue 4. App puts to queue 5. Queue manager places message on transmission queue 6. Message Channel Agent reads message and sends to remote MCA. 7. Remote MCA gives message to Queue Manager QM1 8. QM1 puts message to target queue.
  • 15. Messages Copyright 2014 A message any arbitrary data that one program wants to send to another. This data is called the application data. A message needs to include other information, such as its destination and possibly a return address. This type of data is called the message descriptor
  • 16. Messages Copyright 2014 A message any arbitrary data that one program wants to send to another. This data is called the application data. A message needs to include other information, such as its destination and possibly a return address. This type of data is called the message descriptor. There are four types of messages: A request message is used by one program to ask another program for something (usually data). A request message needs a reply.
  • 17. Messages contd… Copyright 2014 A reply message is used in response to a request message. A one-way message, as you would expect, doesn’t need a reply, though it can carry data. A report message is used when something unexpected occurs. For example, if the data in a reply message is not usable, the receiving program might issue a report message.
  • 18. Message Contd… Copyright 2014 Most useful report messages are generated by the Queue Manager. For example, Delivery confirmation. Messages can have a “time-to-live”, called Expiry. A message that has not been delivered before its expiration is removed (not given to an app) What to do with undeliverable messages? Each queue manager can have a dead-letter queue.
  • 19. Messages Contd… Copyright 2014 Messages can be individually designated persistent or non-persistent (persistent messages are logged to enable recovery) Message Correlater - select which message to get from queue Message Priority - retrieve messages in different order of put Segmented Messages - allows ending of VERY LARGE messages (> 100 MB). A message can contain a “reply to” address (the name of a Queue Manager and Queue). This tells the receiving application where any response should be sent. Messages are added and removed from queues in Units of Work. The smallest Unit of Work is one message. Units of work are atomic. When an app reads a message from a queue, a message “appears” to have been removed, but in fact, it is still in storage until the app “commits” the unit of work.
  • 20. Transaction Support Copyright 2014  Unit of recovery - a piece of work that changes data from one point of consistency to another.  Syncpoint - A point of consistency (also called a or commit point). It is a moment at which all the recoverable data that an application program accesses is consistent.
  • 22. Process contd… Copyright 2014  Applications are responsible for delimiting the beginning and end of a transaction. How can messaging be coordinated with a data base update?  MQSeries is XA compliant and can operate with other XA compliant systems as either a transaction manager (coordinator) or resource manager (particpant). Some examples: Sybase, DB2, Oracle.
  • 23. MQ Series Logging Copyright 2014 All operations that affect the “state” of the Queue Manager and its objects are logged to a log file.  What is “state”? Object definitions (queue manager, queues, processes, channels, etc) Queue content (messages)  What about message channel state? Message channel states are logged separately by each channel.
  • 24. Logging and Recovery Copyright 2014  Circular – log records are written sequentially across several files, then “wrap” back to the first file.  Linear - log records are written sequentially across files. New files are allocated as current files fill. No automatic reuse of file space!  Problem: Length (in time) of longest running transaction vs amount of writes to log determines size of log needed.
  • 25. Tips… Copyright 2014  Circular logging is easy to manage, but is fatal if log is damaged (hard to backup circular logs!).  Linear logging is hard to maintain but provides for archiving of previous logs (still a problem if “current” log is damaged).
  • 26. MQ Interfaces Copyright 2014  MQCONN – Connect to queue manager  MQDISC – Disconnect from queue manager  MQOPEN – Open object  MQCLOSE – Close object  MQPUT – Put message  MQPUT1 – Put one message  MQGET – Get message  MQBEGIN – Begin unit of work  MQCMIT – Commit  MQBACK – Back out  MQINQ – Inquire about object attributes  MQSET – Set object attributes
  • 27. Benefits Copyright 2014 Interoperabilty - across dissimilar networks between different computing environments Asynchrony - Eliminates the time dependency between applications (both apps must be alive AND have a session in synchronous models). Fewer Network Sessions - Only Queue Mangers need to communicate using network sessions. Administered Objects - Improves manageability of BIG systems -Can monitor the state of a queue to determine if apps are doing what they should:
  • 28. Benefits … Copyright 2014 Does any process have queue open for reading or writing? Has a high water mark been reached? How many messages have been added and removed in a measured interval? Message Persistence == Assured Delivery Queues in stable storage retain messages even if applications fail. Even memory-only queues persist if at least the Queue Manager stays up. Transaction Support - Queue operations are just like reads and writes in a database transaction! Can we combine queue operations AND database operations atomically? (YES!)