With input from:

Krithika Raghavan, Senior Director, Oracle Fusion Data Intelligence
Rohan Lobo, Consulting Solutions Architect, Oracle Fusion Data Intelligence

Background

Create your own data dictionary to provide object mapping for functional areas, pillars, subject areas, presentation objects, physical objects, and a column level description of tables in Oracle Autonomous Data Warehouse (ADW). 

Introduction

Oracle Fusion Data Intelligence (FDI) is a cloud-native analytics application that features prebuilt analytics, Artificial Intelligence (AI) and Machine Learning (ML) models, which are ready to use, and designed to simplify the process of gaining valuable deep insights from your Oracle Fusion applications to drive better decisions. 

Steps to Create a Data Dictionary in FDI

1. Create a dataset in OAC.

Create Dataset
Create Dataset

2. Select Local Subject Area.

Select Local Subject Area
Select Local Subject Area

3. Click Manual Query.

Query
Manual Query

4. Copy and paste the following query filtered on ERP and click OK.

SELECT

"CONTENT EXPLORER - SUBJECT AREAS"."RELEASE"."RELEASE CODE",

"CONTENT EXPLORER - SUBJECT AREAS"."APPLICATION"."APPLICATION NAME",

"CONTENT EXPLORER - SUBJECT AREAS"."MODULE"."ACTIVE FLAG",

"CONTENT EXPLORER - SUBJECT AREAS"."MODULE"."MODULE NAME",

"CONTENT EXPLORER - SUBJECT AREAS"."SUBJECT AREA"."SUBJECT AREA NAME",

"CONTENT EXPLORER - SUBJECT AREAS"."PRESENTATION TABLE"."PRESENTATION TABLE NAME",

"CONTENT EXPLORER - SUBJECT AREAS"."PRESENTATION COLUMN"."PRESENTATION COLUMN NAME",

"CONTENT EXPLORER - SUBJECT AREAS"."PRESENTATION COLUMN"."PRESENTATION COLUMN DESCRIPTION",

DESCRIPTOR_IDOF("CONTENT EXPLORER - SUBJECT AREAS"."APPLICATION"."APPLICATION NAME") PILLAR,

DESCRIPTOR_IDOF("CONTENT EXPLORER - SUBJECT AREAS"."MODULE"."MODULE NAME") MODULE_CODE,

DESCRIPTOR_IDOF("CONTENT EXPLORER - SUBJECT AREAS"."SUBJECT AREA"."SUBJECT AREA DESCRIPTION") SUBJECTAREA

FROM "CONTENT EXPLORER - SUBJECT AREAS"

WHERE PILLAR='ERP'
Query
Logical Query

5. Save the dataset and create a workbook.

create workbook
Create Workbook

6. Create a canvas with all the columns.

Canvas
Create Canvas

7. Export the data (.csv) and save the file.

Export
Export File
save
Save File

The file is now available in your downloads.

File
Downloads

8. Connect to the OAX_USER schema and import the Custom Metadata file that you previously downloaded.

9. Download the ERP, HCM, SCM, and CX data lineage files from the Oracle Help Center.

ERP
ERP Analytics
Spreadsheet
Data Lineage Spreadsheet

10. Import the downloaded files into the OAX_USER schema.

Import
Import

11. Use the following code to create the CUSTOM_METADATA materialized view:

CREATE MATERIALIZED VIEW "OAX_USER"."CUSTOM_METADATA" ("PILLAR", "APPLICATIONNAME", "MODULENAME", "SUBJECTAREANAME", "PRESENTATIONTABLENAME", "PHYSICALTABLE", "TABLE_NAME", "TABLE_DESCRIPTION", "COLUMN_NAME", "COL_DESCRIPTION", "PK_COLS", "DATA_TYPE", "LENGTH")

DEFAULT COLLATION "USING_NLS_COMP"  SEGMENT CREATION IMMEDIATE

ORGANIZATION HEAP PCTFREE 10 PCTUSED 40 INITRANS 10 MAXTRANS 255

COLUMN STORE COMPRESS FOR QUERY HIGH ROW LEVEL LOCKING LOGGING

STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645

PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1

BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)

TABLESPACE "DATA"

BUILD IMMEDIATE

USING INDEX

REFRESH FORCE ON DEMAND

USING DEFAULT LOCAL ROLLBACK SEGMENT

USING ENFORCED CONSTRAINTS DISABLE ON QUERY COMPUTATION DISABLE QUERY REWRITE

AS

WITH TAB_DEF AS (

SELECT

             T.TDM_DISPLAY_VERSION,

             F.FUNCTIONAL_AREA_CODE,

             TRIM(T.TABLE_NAME) TABLE_NAME,

             T.DESCRIPTION TABLE_DESCRIPTION,

             T.PK_COLS,

             TRIM(C.COLUMN_NAME) COLUMN_NAME,

             C.DESCRIPTION COL_DESCRIPTION,

             C.DATA_TYPE,

             C.LENGTH

FROM

             DW_WH_COLUMN_DETAILS       C,

             DW_WH_TABLE_DETAILS        T,

             DW_DMD_FUNC_AREA_TABLE_MAP F

WHERE

             F.DATASOURCE_CODE = 'FUSION'

             AND T.TABLE_NAME = C.TABLE_NAME

             AND T.TABLE_NAME = F.TABLE_NAME

             AND T.TDM_DISPLAY_VERSION = (

             SELECT

            MAX(TDM_DISPLAY_VERSION)

             FROM

            DW_WH_TABLE_DETAILS

             WHERE TDM_DISPLAY_VERSION <>  99.99

    )

)

,CON_EXP AS (

SELECT

              RELEASECODE,

              APPLICATIONNAME,

              MODULENAME,

              ACTIVEFLAG,

              SUBJECTAREANAME,

              TRIM(PRESENTATIONTABLENAME) PRESENTATIONTABLENAME,

              TRIM(PRESENTATIONCOLUMNNAME) PRESENTATIONCOLUMNNAME,

              PRESENTATIONCOLUMNDESCRIPTION,

              PILLAR,

              MODULE_CODE,

              SUBJECTAREA

FROM

              CUSTOM_CONTENT_EXPLORER

WHERE

              PILLAR='ERP'

              AND SUBJECTAREA NOT LIKE 'EBS%'

)

,ERP AS (

SELECT

              TRIM(SUBJECTAREA) SUBJECTAREA,

              TRIM(PRESENTATIONTABLE) PRESENTATIONTABLE,

              TRIM(PRESENTATIONCOLUMN) PRESENTATIONCOLUMN,

              TRIM(PHYSICALTABLE) PHYSICALTABLE,

              TRIM(PHYSICALCOLUMN) PHYSICALCOLUMN

FROM

              CUSTOM_ERP_LINEAGE

)

,ERP_LIN AS (

SELECT 

             C.RELEASECODE,

             C.PILLAR,

             C.APPLICATIONNAME,

             C.MODULENAME,

             C.ACTIVEFLAG,

             C.SUBJECTAREANAME,

             C.PRESENTATIONTABLENAME,

             C.PRESENTATIONCOLUMNNAME,

             C.MODULE_CODE,

             E.PHYSICALTABLE,

             E.PHYSICALCOLUMN

FROM 

              CON_EXP C,

              ERP E

WHERE

              C.SUBJECTAREA=E.SUBJECTAREA(+)

              AND   C.PRESENTATIONTABLENAME=E.PRESENTATIONTABLE(+)

              AND   C.PRESENTATIONCOLUMNNAME=E.PRESENTATIONCOLUMN(+)

)

SELECT DISTINCT

             C.PILLAR,

             C.APPLICATIONNAME,

             C.MODULENAME,

             C.SUBJECTAREANAME,

             C.PRESENTATIONTABLENAME,

             C.PHYSICALTABLE,

             T.TABLE_NAME,

             T.TABLE_DESCRIPTION,

             T.COLUMN_NAME,

             T.COL_DESCRIPTION,

             T.PK_COLS,

             T.DATA_TYPE,

             T.LENGTH

FROM

             ERP_LIN C,

             TAB_DEF T

WHERE

              1=1

              AND C.PHYSICALTABLE= T.TABLE_NAME(+)

12. Create a connection in OAC.

connection
Create Connection
ADW
ADW Connection Type

13. Provide the connection details, upload the wallet file, and click Save.

connection
Save Connection

14. Create a dataset using the Data Dictionary connection.

create DS
Create Dataset
DD
Select Connection

15. Use the following code in Manual Query, click OK, and save the dataset.

SELECT

PILLAR,

APPLICATIONNAME,

MODULENAME,

SUBJECTAREANAME,

PRESENTATIONTABLENAME,

PHYSICALTABLE,

TABLE_NAME,

TABLE_DESCRIPTION,

COLUMN_NAME,

COL_DESCRIPTION,

PK_COLS,

DATA_TYPE,

LENGTH

FROM

CUSTOM_METADATA

16. Create a workbook with the required columns.

Canvas
Create Workbook

17. Repeat all the previous steps for SCM, HCM, and CX to create the data dictionary.

Summary

This article presents an approach to create a data dictionary to provide mapping of objects for functional areas, pillars, subject areas, and presentation objects to physical objects with column level description of tables in ADW.

References

Call to Action

Now that you’ve read this post, try it yourself and let us know your results in the Oracle Analytics Community, where you can also ask questions and post ideas.