...
This document is a walkthrough to create and edit a Meta Model through the Sprngy UI.
Pre-requisites:
The list of tools required to run/develop in the UI are as follows:
Visual Studio Code (Developers only)
Python 3.8.10
Flask 1.1.4
Node 14.17.6
npm 7.24.1
R 3.6.3
Application is created in Admin UI using the Application Configuration screens and entities and relationships are defined.
Meta Model:
A meta model is a format that allows to captured capture detailed information about attributes/columns of data sets that are to be processed. Below are the processes steps to Create/Edit a Meta Model from the UI.
...
The unique field while creating an attribute is “entity_attribute_model_name”. You will get an error if you try to create an attribute with the same name.
When the meta model is created, a field called “as_of_date” will be system generated and defaulted. You will not be able to edit or delete that field.
Home Screen:
The image below is On the Home screen of the UI.From the side menu open admin UI, click ‘Meta Data Configuration' option , then select on side menu and then click 'Meta Model’ option.
...
Step 1 -
After clicking on the Meta Model menu option below screen will be displayed.
...
To create a new Meta Model, select the required Module name and Entity name from the drop down and click 'Submit'.
This Using the Upload box, meta model (in csv) format can be uploaded for the selected entity.
On clicking ‘Submit’, Admin UI checks the existence of a metamodel. If there is a previously created or even initiated meta model then it will bring back that data, if creating meta model for the very first time then provides blank fields for input.
...
On the next screen there will be fields to add attribute name (i.e. Column Name) and it’s datatype. This screen is visible only when creating the meta model for first time. Add all the column names with it’s datatypes (string,numeric or integer) and click Submit. On submit, a meta model will be created with default values for the given values. It will by default add a column ‘as_of_date'. You can also skip this page which would only add the 'as_of_date' column.
...
The Edit icon gives you the ability to edit that particular attribute and save it at every step of the way.
...
Here are the fields that can be configured on this screen:
Field Name | Description | Data Type | Is Required? | Validation |
---|---|---|---|---|
Entity Attribute Model Name | The name of the attribute | String | Yes | No spaces |
Entity Attribute Model data format | The format of the attribute - character, numeric, or integer | String | Yes | one of the three in column B |
Entity Attribute Model Data Length | The length of the field | Numeric | Yes | only positive numbers |
Entity Attribute Model Data Precision | if numeric then precision | Numeric | Yes | only positive numbers |
Entity Attribute Unique Ind | Yes/No Indicator | (Yes or No flag) | Yes | YES/NO |
Entity Attribute In Use Ind | Yes/No Indicator | (Yes or No flag) | Yes | YES/NO |
Entity Attribute Description | The metadata definition of the attribute | String | Yes |
|
Entity Attribute Sample Value | The sample value of the attribute | String | Yes | Length of field should be same as input of “Entity Attribute Model Data Length” |
Entity Attribute Default Value | The default value to assign if not imputing to treat nulls | String | Yes | Length of field should be same as input of “Entity Attribute Model Data Length” |
Step 2Define Transform, Quality and Validation rules:
...
Here are the fields that can be configured on this screen:
Field Name | Description | Data Type | Is Required? | Validation |
---|---|---|---|---|
Entity Attribute Transform Rule Inbound | The transform rule for the attribute | String | Yes |
|
Entity Attribute Transform Rule Outbound | The transform rule for the attribute | String | Yes | by default |
Entity Attribute Validation Rule | the validation rule for the attribute | String | Yes | by default NONE |
Entity Attribute Validation Rule Description | the validation rule for the attribute | String | Yes | by default NONE |
Entity Attribute Validation Rule Iterate by Key Role | Yes/No Indicator | String | Yes | YES/NO |
Entity Attribute Quality Rule | a~b | String | Yes | Has to have “~” in the rule or “NONE” if there is no quality rule |
Entity Attribute Quality Rule Description | a~b | String | Yes |
|
Entity Attribute Quality Rule Iterate By Key Role | other than a or b | String | Yes |
|
Step 3Define Relationships:
...
Here are the fields that can be configured on this screen:
Field Name | Description | Data Type | Is Required? | Validation |
---|---|---|---|---|
Entity Attribute Impute Method | if the attribute is null, pick out an impute method. For character columns, it's the default value. For numeric nd integers, mean or median | String | Yes | one of the three in column B |
Entity Attribute Compare Key Role | Yes/No Indicator | String | Yes | YES/NO |
Entity Attribute Filter Key | the construct to filter records | String | Yes | default is NO |
Entity Attribute Nested Key Role | Whether the given attribute should be nested or not | String | Yes | default is YES |
Entity Attribute Parent Lookup Key Role | (Yes or No flag) | String | Yes | YES/NO |
Entity Attribute Parent Lookup Location | The hdfs location of the parent entity for performing lookups | String | Yes | default is NONE |
Entity Attribute Calendar join key Role | (Yes or No flag) | String | Yes | YES/NO |
Step 4Define Auditing Preferences:
...
Here are the fields that can be configured on this screen:
Field Name | Description | Data Type | Is Required? | Validation |
---|---|---|---|---|
Entity Attribute Iqm Codes Match | (Yes or No flag) | String | Yes | YES/NO |
Entity Attribute Iqm Metric Match | (Yes or No flag) | String | Yes | YES/NO |
Entity Attribute Iqm Iterate By Key Role | (Yes or No flag) | String | Yes | YES/NO |
Entity Attribute Eda Dimension | (Yes or No flag) | String | Yes | YES/NO |
Entity Attribute Eda Metric | (Yes or No flag) | String | Yes | YES/NO |
Entity Attribute Eda Iterate By Key Role | (Yes or No flag) | String | Yes | YES/NO |
Step 5Define Attribute Presentation on BI:
...
Here are the fields that can be configured on this screen:
Field Name | Description | Data Type | Is Required? | Validation |
---|---|---|---|---|
Entity BI Object Repository | defaults to the module name | String | Yes | NO Space |
Entity BI Object Name | defaults to, The name of the attribute | String | Yes | NO Space |
Entity Attribute BI Name | defaults to , The format of the attribute - character, numeric, or integer- can be editable | String | Yes | NO Space |
Entity Attribute BI Mask Ind | (Yes or No flag) | String | Yes | YES/NO |
Entity Attribute BI Mask | Whether or not to Mask the attribute | String | Yes |
|
Entity Attribute BI Data Format | The format of the attribute - character, numeric, or integer | String | Yes |
|
Entity Attribute BI Data Length | The length of the field | String | Yes | Number |
Entity Attribute BI Data Precision | if numeric then precision | String | Yes | Number |
...
Once satisfied with the Meta Model changes click on 'Final Submit' to save these changes.
Bulk Upload Meta Model
There is also one other way to create a meta model, that is by uploading a CSV file. For this, you are required to have a meta model .csv file with all the required fields. To directly upload a csv -
Home Screen:
The image below is the Home screen of the UI.
From the side menu open ‘Meta Data Configuration' option, then select 'Meta Model’ option.
...
Step 1 -
After clicking on the Meta Model menu option below screen will be displayed.
...
Select the module and entity for which you want to upload a meta model. In the file upload option browse or drag and drop the meta model csv file and click Submit.
Copyright © Sprngy. All rights reserved. Not to be reproduced or distributed without express written consent.
...