Querying TADDM

You can query TADDM connector through the information and code provided here.

When you specify the class type, the TADDM Connector retrieves the items from that type. The TADDM Connector forms an MQL query and the query is run against the TADDM database. MQL is a TADDM invention used for retrieving data from its database. The MQL does not support all SQL features and is useful when you need to limit the number of returned items. The following query is constructed when only the class type of the item is provided.
	SELECT * FROM class-type
If depth is 0, the generated query is modified as shown.
	SELECT guid FROM class-type
MQL also supports complex WHERE clauses and INNER JOIN. In Iterator mode, the TADDM Connector uses these capabilities through the MQL Select field in the Configuration Editor. If you provide a query in this field, it overrides the Class Type parameter. The following example query returns all OperatingSystem-s with name "Windows".
	SELECT * FROM OperatingSystem WHERE OSName == 'Windows'
A complex query can, for example, return the names of all Db2Server-s, the ports of which match the OracleInstance-s and in addition each Db2Server that runs on a ComputerSystem manufactured by IBM®.
	SELECT Db2Server.* FROM Db2Server, OracleInstance 
   WHERE Db2Server.port == OracleInstance.port 
		AND DB2Server.host.manufacturer contains 'IBM'

This query uses both implicit attributes (the $implicit attribute is not used) and an inner join. For more information about the query language, see the TADDM MQL documentation.

The MQL Select parameter supports parameter substitution. The available objects that can be used are:
  • Connector - to access the methods of TADDM Connector
  • config - for connector configuration
  • mc - for metamerge configuration.
In addition, the MQL Select field supports auto-complete capability and the Link Criteria dialog box transfers the condition into the regular MQL statement.
The MQL Select field is dependent on IdML mode. When IdML mode is enabled, an additional filtering feature is turned on. You can specify both class types and attribute names (implicit and explicit) as defined by the unified schema described in the IdML mode section.
	SELECT cdm:Signature FROM cdm:sys\.ComputerSystem 
WHERE cdm-reln:virtualizes.cdm-trg:sys\.ComputerSystem.cdm:NumCPUs == '3'
This query returns the signatures of all virtual computer systems present on a computer system with 3 CPUs.
Note: All class type names are escaped, for example, cdm:sys\.ComputerSystem. This requirement is important because in IBM Security Directory Integrator, the dot indicates a separator between attributes and if not escaped, it is interpreted as the ComputerSystem is a subelement of the sys element.

The Fetch Size parameter indicates the size of the buffer used when reading data from TADDM. By changing the size, you can fine-tune the performance of your IBM Security Directory Integrator solution. For example, if the connector is to read 100 items (with depth 1) from the TADDM server, and the Fetch Size is more than 100, then a single bulk request is performed and all the data is retrieved.