Architecting, installing and maintaining your SAS environment

Programmatically navigating BI lineage?

Accepted Solution Solved
Reply
Moderator
Posts: 252
Accepted Solution

Programmatically navigating BI lineage?

SAS 9.4 BI query

 

I have previously written code using METADATA_GETATTR()METADATA_GETASN(), etc, in the "data" space - libraries, tables, etc, so I understand the syntax involved

 

What I'm having trouble with is the BI equivalent, and understanding the BI metadata model(s) - for example:

  • Get all the data sources for a specific dashboard
  • Get all the indicators using a specifc range

I'm unsure if I can't find the right documentation, or the documentation is correct (I'm reading the SAS 9.4 Metadata Model: Reference), but the relationships are more abstract & I'm just not getting it.

 

My ultimate aim is to dump an "audit" of BI relationships to a spreadsheet (as I've done previously with DI relationships).

 

Any assistance appreciated.


Accepted Solutions
Solution
‎03-28-2016 09:43 PM
PROC Star
Posts: 424

Re: Programmatically navigating BI lineage?

Posted in reply to AndrewHowell

Have you had a look at SAS 9.4 Batch Relationship Reporting Tools? If not I would suggest you start by looking at that to see if it gives you what you need. Navigating the complex metadata associations for all the different types of metadata objects (especially using the data step functions) is no small task - depending on your requirements you may also need to reach into report XML etc too.

View solution in original post


All Replies
Solution
‎03-28-2016 09:43 PM
PROC Star
Posts: 424

Re: Programmatically navigating BI lineage?

Posted in reply to AndrewHowell

Have you had a look at SAS 9.4 Batch Relationship Reporting Tools? If not I would suggest you start by looking at that to see if it gives you what you need. Navigating the complex metadata associations for all the different types of metadata objects (especially using the data step functions) is no small task - depending on your requirements you may also need to reach into report XML etc too.

Moderator
Posts: 252

Re: Programmatically navigating BI lineage?

Posted in reply to PaulHomes

Hi Paul - thanks for the reply.

 

I'd already had a look at the System Admin Guide, but I can't readily see the objects I want in the "-types" option.

 

I'm trying to derive the objects associated with particular dashboards - I cannot find any dashboard-related types (indicator, range, indicator data) defined in any documentation (unless they're imbedded as a SubType of another Type, but I can't find it..)

 

Another approach may be to just start drilling down in the "BI" metadata respository, but was hoping that would be a last resort..

 

(See you in Vegas.)

 

Cheers,

Andrew.

PROC Star
Posts: 424

Re: Programmatically navigating BI lineage?

Posted in reply to AndrewHowell

There are 2 types of types in metadata! Smiley Happy I tend to refer to them as model types and public types. As an example the 3 public types Dashboard, Indicator, Range all have the same model type of Transformation. Using the metadata API you would query Transformation objects to find them, and you would filter on the PublicType attribute to narrow it down to objects with the public type you are after. Public types have type-names as well as labels e.g. "Information Map (Relational)" has a TypeName of "InformationMap.Relational". From the examples in the relationship reporting tools doc it looks like you need to use the public type's TypeName for -types e.g. InformationMap, InformationMap.Relational, Dashboard, Indicator, Range, StoredProcess, Report.StoredProcess etc.

 

The metadata server includes metadata about this public type metadata under /System/Types Smiley Happy  We do lots of metadata querying at Metacoda so we built some tools to help us find what we need. There are 2 free ones that you might find useful here:  the 1) Public Types Explorer plug-in makes public type metadata easier to browse - see http://www.metacoda.com/en/products/utility-plug-ins/public-types-explorer/ and http://platformadmin.com/blogs/paul/2014/05/public-types-explorer/  the 2) Metadata Explorer plug-in also lets you switch between searching for model types and public types then browse the attributes and associated objects - see http://platformadmin.com/blogs/paul/2012/08/metacoda-metadata-explorer-plug-in/ and http://www.metacoda.com/en/products/utility-plug-ins/metadata-explorer/

PROC Star
Posts: 424

Re: Programmatically navigating BI lineage?

Posted in reply to PaulHomes

... and when I say "that you might find useful here" I mean in understanding the differences between model types (that make up the bulk of the metadata API docs) and public types (which are more recent and not covered as extensively).  For your original question about lineage, the relationship reporting tools are more likely to get you closer to what you need (and more quickly).

Moderator
Posts: 252

Re: Programmatically navigating BI lineage?

Posted in reply to PaulHomes

Thanks, Paul - I think for what's required, I'll pipe the batch reporting tools and created the relationship table from there.

☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 5 replies
  • 436 views
  • 2 likes
  • 2 in conversation