• No results found

Ab Initio EME Concepts

N/A
N/A
Protected

Academic year: 2021

Share "Ab Initio EME Concepts"

Copied!
66
0
0

Loading.... (view fulltext now)

Full text

(1)

Ab Initio EME

(2)

May 18, 2010

EME (Enterprise Meta Environment)

Features of EME

Projects, Sandbox & Parameters

Reports, Versioning and Tagging

Checking out Projects, Sandbox, graphs and files

Editing the Sandbox, graphs and files

Checking in Projects, Sandbox, graphs and files

Dependency analysis

Air commands

(3)

July 6, 2010

Features

of EME

What is EME

Why EME

Interfaces to the EME

(4)

May 18, 2010

What is EME?

Enterprise Meta Environment is high performance object oriented

storage system that inventories and manages various kinds of information associated with Ab Initio applications which may range from design information to operational data.

•It acts as the hub for data and definitions.

•In simple terms, it is a repository, which contains data about data – metadata.

•It consists of two basic types of metadata

¾ Technical metadata – application related business rules, record formats and execution statistics

¾ Business metadata – user defined documentation of what you deem important to track in your company , such as logical models, data dictionaries, roles and responsibilities.

(5)

May 18, 2010

Why EME?

• Avoid setup scripts, use EME parameters – more standardisation

• Source Control

• Dependency and impact analysis for the graphs in the repository

Interfaces to the

EME

•GDE

•EME Web interface to Technical Metadata

(6)

May 18, 2010

EME Data Store Settings

•EME Data store is a specific instance of EME in the environment.

• This is a repository where different versions of code and its related data like the record formats, transformations etc are maintained.

• At any point of time a user can connect to only one such EME repository instance.

•To access an EME Data store, go to Settings in the GDE Menu and click on to Enable EME Connections which is shown below.

(7)

May 18, 2010 • After clicking the Enable EME Connections , The GDE is

(8)

July 6, 2010

What is a Project

Project Structure

Structure of project in EME

Different Types of Project

¾

Public project

¾

Private project

(9)

May 18, 2010

What is a Project ?

•Physically, each project in the EME data store is a collection of graphs, plans & related files stored in a well described structure.

•Logically, a project is a fairly self–contained and largely independent content area , a suite of graphs and associated files that accomplishes a business goal.

Project structure

•The directory tree of a project contains subdirectories for graphs, scripts, sqls , transforms etc.

(10)

May 18, 2010

Structure of a project in EME

/Projects Project1 Project2 mp run xfr dml db

Sub directory for AI Graphs

Sub directory for deployed shell scripts

Sub directory for transform files

Sub directory for record format files

Sub directory for database interface files

bin

sql

Sub directory for tools and utilities

(11)

May 18, 2010

Different Types of Project

Public Project

• A Public project shares their data and metadata with other projects

• A Project that is included by other Projects is termed as a Public Project

Private Project

• A Private project are not expected to be shared with other projects

(12)

July 6, 2010

Sandbox

What is a Sandbox

Structure of Sandbox

Sandbox vs Projects in EME

Environment Structure

(13)

May 18, 2010

What is a Sandbox?

•Sandboxes are the user work areas in order to work on files in EME Project

•To work on Projects, they must be checked out to a user work area on the file system where development and modification of code can happen.

•This working area on the file system is known as Sandbox.

•After the changes are complete the code is checked in from the user sandbox area to the EME data store

(14)

May 18, 2010

Structure of Sandbox

•Sandbox has the same structure of Projects in the EME but it lies in different file system. It is shown below.

/Mysandbox Project1 Project2 mp run xfr dml db

Sub directory for AI Graphs

Sub directory for deployed shell scripts

Sub directory for transform files

Sub directory for record format files

Sub directory for database interface files

bin

sql

Sub directory for tools and utilities

(15)

May 18, 2010

Sandbox vs. Projects in EME

• Sandboxes are work areas used to develop, test or run code associated with a given project. Only one version of the code can be held within the sandbox at any time.

• The EME Datastore contains all versions of the code that have been checked into it.

• A particular sandbox is associated with only one Project where as a Project can be checked out to a number of sandboxes.

Check-in

(16)

May 18, 2010

Environment Structure

16 Common Sandbox (Optional) /Common/Project1/mp User Sandboxes /Mysandbox/Project1/mp

EME

Repository /Projects/Project1/mp check in inCheck in Check out

(17)

May 18, 2010

Creating a project by creating a Sandbox

•Create an empty sandbox in the GDE. Select Project>Create sandbox dialog.

•Host : server name

•Directory : The sandbox path

•Location parameter : leave default or give some name

•Click ok and the sandbox will be created in user area.

(18)

July 6, 2010

Parameters

What is a Parameter

Graph Parameter

(19)

May 18, 2010

What is a Parameter?

•A parameter is a name-value pair with some additional attributes that

determine when and how to interpret or resolve its value.

•Parameters are used to provide logical names to physical location and

should always be used instead of hard coded paths in graphs.

•Parameters are used to change the behaviour of graphs and projects

in a controlled and uniform way

•There are two types of parameters. ¾ Graph Parameters

(20)

May 18, 2010

Graph parameters

•Graph parameters are specific to the individual graphs and are private to them. They affect execution of the graph for which they have been defined.

•Graph parameters can be defined by navigating to Edit>Parameters in the GDE which opens the graph parameters editor.

(21)

May 18, 2010

Project Parameters or Sandbox Parameters

•Project parameters are inherited by all the graphs in the Project

and are accessed from the GDE by the sandbox parameter editor in Project>Edit Sandbox>Parameters.

•This shows a dialog box prompting to enter the sandbox path.

Choose the correct host and the sandbox path and press OK to open the sandbox parameter editor, which exactly like the graph parameter editor shown as above.

(22)

July 6, 2010

Reports

(23)

May 18, 2010

Reports

•Reports present summary EME data

• View the report using EME Web Interface

•The below list of reports can be taken from EME

¾ Graph reports

¾ Dataset reports

¾ Job report

¾ Directory report

(24)

May 18, 2010

Version Control and Tagging

• Each object under EME source control, which may be a file, a directory or a Project, exist as a series of versions, each of which is a representation of what was checked in by some user.

• It can optionally have a textual description attached to it called as a tag and a description as a comment.

• Each version is separately numbered and can be accessed by either the version number or the tag attached to it.

• Version numbers, which are integers and tags, are global to the whole EME Datastore.

• Tags are the basic units during migration of code across EME Datastore instances.

(25)

July 6, 2010

Checking out Projects, Sandbox, graphs

and files

•Check out

(26)

May 18, 2010

Check out

• The Ab Initio GDE provides wizards to check out code from the EME to sandbox.

• Check out updates the sandbox with the particular version of code that is being checked out from the EME. By default the latest

version of any object is checked out.

• Even any version of code can be checked out.

Check out Process

• Select Project>Checkout. Specify the Sandbox directory name and EME path.

• Specify the EME name, Project path in EME and Sandbox path in user area. It is shown below.

(27)

May 18, 2010 • After specifying all details click on to check out button.

• It will check out all the things from EME to sandbox

• To check out a project in existing sandbox , right click the sandbox name in the sandbox view and select check out

• To check out only the current graph or plan , click the check out current document icon( ) on the GDE menu bar

• To check out any file in the project, right click the file in sandbox view and select check out.

(28)

July 6, 2010

Editing the Sandbox, graphs and files

•Need for Locking

•Locking an Object

•Lock Button

(29)

May 18, 2010

Need for locking

•Lock is used to edit the graph or files.

•The lock button on the GDE indicates the status of an object with regard to locking.

•Locking the graph prevents other users from changing it at the same time you are working on it.

•Otherwise , conflicts can occur between sandbox and data store version of files.

Locking an Object

•Clicking the lock button on the GDE button

•Choose file> lock on the GDE menu bar

(30)

May 18, 2010

Locking Button

•The lock button’s appearance identifies the locking status of the object you are viewing

•If an object has never been checked in , there is no lock associated with it. The lock button on the tool bar is an open gray lock on gray back ground.

•When a graph or file is unlocked , the lock button on its toolbar

is an open yellow lock against a gray back ground. A unlocked object is read only and cannot be edited in the GDE.

•Sometimes an object lock button indicates that another user

already owns the lock , which means you cannot edit the object . In this case , the lock button is a closed lock on red back ground.

(31)

May 18, 2010 • There is no way in the GDE to break another users lock. • Once you set the lock , you are the owner. You can modify ,

save, and check in the locked object. The lock button is now a closed recessed in green back ground

• Locking when sandbox copy of the object is out of date. It will show below dialog box.

• Releasing a lock without checking in changes , it will displays a dialog. Save changes or release lock without reverting

(32)

July 6, 2010

Internal and

Checking in Projects, Sandbox, graphs and

files

•Check in

(33)

May 18, 2010

Check in

•Once you have edited your sandbox files, you have to check them in to put the new versions under source control in the EME datastore and make them available to other users.

Check in process in GDE

•To check in an entire sandbox , right click the sandbox name in the sandbox view and select check in , or select

Project>check in on the GDE menu bar.

•To check in only the graph , you are currently editing , click the check in document icon ( ) on the GDE menu bar.

•To check in any sandbox file, right click the file in the sandbox view and select check in.

(34)

July 6, 2010

(35)

May 18, 2010

Dependency Analysis

•Dependency Analysis is a process by which the EME examines a project in its entirely and traces how data is

transformed and transferred, field by field , from component to component within and between graphs.

• Using Dependency analysis we can observe the following things:

• How operations that occur later in a

graph(“downstream“) are affected by components earlier (“upstream”) in the graph

• What data is operated on by each component, and how.

• All details of every component in the project.

• What happens to each field in a dataset throughout a graph.

(36)

May 18, 2010

There are four ways in which the dependency analysis can be controlled :

1) It can be directly invoked in the GDE, by selecting Project > Analysis……. To start the Analysis wizard.

2) It can be directly invoked from the command line, by running the air project analyze- dependencies command.

3) It can be invokes implicitly at check-in, depending on the settings you select in the Check-in wizard’s Advanced Options under the Analysis tab.

4) You can also create an analysis_level parameter and use it to specify the amount of dependency analysis you wish to take place during check-in. The setting of this parameter(if it exists) restricts all other analysis level settings.

(37)

July 6, 2010

AIR Commands

•Command line syntax of air command

•Air Sandbox group

•Air Project group

•Air object group

•Air Lock group

•Air repository group

•Air Branch group

(38)

May 18, 2010

Command line syntax of Air command:

•The air utility is a command-line or shell-script interface for administering and managing the EME.

• All air commands have the following command-line syntax.

air[-root root] [-version version | tagname][-remote]

¾ -root root specifies root of the data store.(Optional)

¾ -version version (Optional) specifies the version number of the data store to be accessed by the air command. The version number can be specified as an integer or as a tag.

¾ A tag is a symbolic name that you can associate with a specific version when you check in a project.

¾ -remote specifies that the air utility should start the EME server remotely even if a direct connection is possible.

(39)

May 18, 2010

The air sandbox commands perform operations on sandbox.

air sandbox create – creates the sand box in specified path.

syntax- air sandbox create path

¾ Path – specifies a directory.

¾ [ -template path ] – creates the sandbox from a specified template sandbox at path.

¾ [-prefix prefix] – Add prefix to the predefined sandbox parameters.

¾ [-replace s1 s2] – change one thing to another thing

(40)

May 18, 2010

Air Sandbox group

air sandbox diff –displays difference between two graphs or two files syntax- air sandbox diff {path | path1 path 2}

¾ [Path] – specifies a directory in which file is located .

¾ { -version version path | -version version path1 –version version path2} – specifies the version which has to be compared

¾ {-text} – forces text differencing , regardless types of files.

air sandbox find – identifies root of sandbox

syntax- air sandbox find [path]

¾ [Path ]– specifies a directory in which to start looking .

¾ {-up|-down}- upward and downward search , towards and downwards of the directory specified.

¾ { -sandbox} – specifies sandbox found should be listed

¾ {-project} – specifies EME project the sandbox is associated with should be printed.

(41)

May 18, 2010

Air Sandbox group

air sandbox info –displays info about the files associated with

sandbox

syntax- air sandbox info {path}

¾ [Path] – specifies a directory.

air sandbox lock – performs lock operation on sandbox objects

syntax- air sandbox lock path

¾ [Path ]–the path to file checked in sandbox

¾ [-set|-release|-break|-release].- set locks in a file, releases lock , breaks another user lock , resets the lock broken by another user

•air sandbox parameter–creates sandbox parameter

syntax- air sandbox parameter [pset] parameter [interpretation] [value] [flag]

¾ [Pset]–specifies the location of parameter

¾ [-parameter].- name of the parameter

(42)

May 18, 2010

Air Sandbox group

air sandbox pset – creates or modifies input value for graph. syntax- air sandbox pset pset-path

¾ [pset-path] –path to input values.

¾ [-create] – creates an input value set.

air sandbox revert – reverts sandbox object to versions in data store.

syntax- air sandbox revert –basedir sandbox

¾ [-basedir]– path to sandbox

¾ [-files path ].- sandbox relative paths of object to be reverted

•air sandbox run – runs a graph or file.

syntax- air sandbox run path

(43)

May 18, 2010

Air Project group

This manages the datastore projects.

air project create – creates a new project and specifies various project attributes.

syntax- air project create project name

¾ Project-name – name of the project

¾ [ -location location ] – name of the project parameter that specifies the location of the project.

¾ [-prefix prefix] – prefix for default project parameters created automatically.

(44)

May 18, 2010

Air Project group

air project export –check out or copies projects from datastore into a

sandbox.

syntax- air project export project-path –basedir sandbox-root-dir

¾ Projectpath –project path and name in datastore

¾ [ -basedir ] – specifies an existing or new sandbox

air project import – check in or copies sandbox files into an existing

datastore project.

syntax- air project import project-path –basedir sandbox-root-dir

¾ Projectpath – path to the project to which you want to check in files

(45)

May 18, 2010

Air Project group

air project mkdir – creates a directory in specified project.

syntax- air project mkdir [-q] project-name [-no-export] dir-name

¾ -q – supress error if directory already exists

¾ [-no-export] – the directory is not exportable

air project add – Manually adds one or more files to a datastore

project’s internal list of files.

syntax- air project add [-q] project-name relative path

¾ -q – supress error if relative path already exists

¾ Relative path – relative path of file to be added

•air project modify – edits the specified project location parameter.

syntax- air project modify project-name [-location loc-parameter]

¾ Project-name – name of the project

(46)

May 18, 2010

Air Project group

air project move –Moves a project from one place to another within

datastore.

syntax- air project move old-name new-name

¾ Old-name – datastore path specifying the original location

¾ New-name – the path which project to be moved

air project parameter – deals with project parameter.

syntax- air project parameter proj-path [-export] parameter [interpretation] value

¾ Proj-path – path to project

¾ -Export – exported to environment

¾ Parameter – the parameter name you want to add or edit ¾ Interpretation – determines how value is interpreted

(47)

May 18, 2010

Air Project group

air project revert – reverts one or more objects in a Project

syntax- air project revert proj-path –version ver-path relative-path

¾ Proj-path –path to the project containing objects you want to revert

¾ -version ver-path – version number

¾ Relative-path – relative path of the object to be reverted.

air project set-executable –ensures that a file will be marked

executable when it is exported.

syntax- air project set-executable proj-path relative-rpath[-not]

¾ Proj-path – path to project containing the file

¾ relative-rpath – relative path of file within the project ¾ -not – specifies than an executable file be marked not

(48)

May 18, 2010

Air Project group

air project set-type – overrides the mime type assigned to a single

datastore project

syntax- air project set-type proj-path -force relative-path mime-type

¾ Proj-path –path to the project in which object resides

¾ -force – by default you cannot set . You have to force.

¾ Relative-path – relative path to the object whose MIME type you want to change.

air project show – displays project attributes.

syntax- air project show proj-path

(49)

May 18, 2010

Air Object group

It manipulates object and directories in the datastore and control permission to access objects.

•air object access– To test whether all permissions exists for the

project.

syntax- air object access rpath [r|w|x|f]

¾ Rpath – path to a data store project

¾ -r – test whether you can read the specified object.

¾ -w - test whether you can write the specified object

¾ -x - test whether you can execute the specified object

¾ -f – test whether you can see the existence of the specified project.

air object show – displays project attributes.

syntax- air project show proj-path

(50)

May 18, 2010

air object chown

– Changes the ownership of one or more datastore

objects. Only the EME administrator can perform this operation.

syntax - air object chown[-Rf]user[.group] rpath...

¾ -R - Optional. Recurses into rpaths if they refer to a directory.

¾ -f - Optional. Attempts to continue even if the operation fails for one or more rpaths.

¾ user - New owner expressed as a valid user name.

¾ .group - Optional. Group designation, preceded by a period.

¾ rpath - Path to a datastore object, or object ID, whose ownership you want to change. You can specify multiple

paths.

(51)

May 18, 2010

Air Object group

air object cp

Creates a copy of the object known as rpath1 in a

location within the datastore. The command copies rpath1, retaining links to any other objects in references.

syntax - air object cp rpath1 [-R] rpath2

¾ rpath1 Path to a datastore object, or object ID, to be copied.

¾ -R Optional. If specified, command copies the specified object

rpath1 and all objects referred to by rpath1. If not specified, the specified object rpath1 is copied, but objects referred to by rpath1 will be linked but not copied.

(52)

May 18, 2010

Air Object group

air object create-parameter-set

Creates a parameter set file

from the parameters associated with a datastore object.

syntax- air object create-parameter-set file graph_path

¾ file - Name of the parameter set file. It should have an extension of .pset

¾ graph_path - Path to the graph in the datastore.

¾ switch - The name of a switch parameter.

(53)

May 18, 2010

Air Object group

air object delete

– Marks one or more objects, and other objects in

the same domains, for permanent removal from the datastore.

syntax - air object delete –R –whole–domain [-force] rpath [ rpath2…]

¾ -R - If rpath is a directory, all of its directory child and grandchildren and all objects in the descendants’ domains will be marked for deletion.

¾ -whole-domain - All objects in the same domain as the object specified by rpath will be similarly removed.

¾ -force - Do not prompt for confirmation of deletion.

¾ rpath rpath2… - Datastore paths to the objects you want to delete.

(54)

May 18, 2010

air object In

- Creates an additional name , rpath2, for the object

rpath1.

syntax - air object In rpath1 rpath2

¾ rpath1 Path to a datastore object, or an object ID.

¾ rpath2 New name for the existing object.

air object mv

- Renames the object rpath1 to rpath2.

syntax - air object mv rpath1 rpath2

¾ rpath1 Path to the datastore object you want to rename.

¾ rpath2 New name for the object rpath1.

(55)

May 18, 2010

air object load

- Loads objects from a file in portable

interchange format. This file was created by running the air object save command. The objects are loaded to the datastore location corresponding to the ones in which they were saved.

syntax - air object load [-table-of-contents] file-name

¾ file-name - Standard UNIX file-name of the file storing the objects you want to load. If file-name is -, then

the data is read from standard input.

¾ -table-of-contents - Specifies that nothing be loaded, but instead print a listing of the file’s contents.

(56)

May 18, 2010

air object revert

- Reverts one or more objects to an earlier

version. Objects newer than specified version are deleted from the datastore.

syntax - air object revert [-revert-links] version rpath……

¾ -revert-links - Optional; if specified, then objects linked to rpath will also be reverted. If not specified, no action is taken on linked objects.

¾ version - Version number (integer) or tag (string) of the datastore that you wish to back out to.

¾ rpath… - Path to an object, or object ID.

(57)

May 18, 2010

air object mkdir

- Creates a datastore directory. Parent directories

are created as necessary.

syntax - air object mkdir rpath

¾ rpath Path of the directory you want to create.

air object unlink

- Unlinks a directory pathname of an object.

syntax - air object unlink[-f] [-no-project-remove] rpath

¾ -f - Specifies that no error be generated if rpath does not exist.

¾ -no-project-remove - Specifies that the object be removed without removing it from source code control.

¾ rpath - Datastore pathname of the directory.

(58)

May 18, 2010

air object rm

- Removes an entry from a directory. If the entry is in a

datastore project, then the system performs an implicit air project remove.

syntax - air object rm[-f][-r][-no-project-remove] rpath…..

¾ -no-project-remove - Specifies the object be removed without removing it from source code control.

¾ -f - Specifies that no error be generated if rpath does not exist.

¾ -r - Specifies that subdirectories of rpath be removed recursively.

¾ rpath - Path to the directory entry you want to remove.

(59)

May 18, 2010

air object save

- Saves datastore objects to a file in portable

interchange format. You can subsequently load the file by running air object load. You can use air object save to migrate objects from one datastore to another.

syntax - syntax - air object save file-name rpath…

[-include{common| local| rpath…}]… [-external { common| local| erpath…}]… [-format {1| 2| 3}]

[-export epath…]

[-settings common| project…] [-save-jobs] [-analyzed] [-no-default] [-tag tag] [-comment comment] [-Stag tag] [Scomment comment] [

(60)

May 18, 2010

air object versions

-

Displays the revision history of all tagged

versions or all versions of the specified object or the datastore. History includes version number, date, user, tag, and comment for the specified object.

syntax - air object versions[-verbose][rpath]

¾ -verbose - Optional. Displays all versions for an object or the entire datastore. (If nor specified, only tagged versions will be

displayed.)

¾ rpath - Optional. Path to the object about which you want version information. If not specified, displays

information for the datastore as a whole.

(61)

May 18, 2010

Air Lock group

It manages locks to prevent file collision.

air lock set – sets or modifies a lock on datastore objects or projects.

syntax- air lock set [-force] [-breakable | -unbreakable] [-auto-

release | manual-release] [-modify attribute] [-object object | -project project]

¾ Force –breaks another lock and sets a lock for you

¾ [ - breakable | -unbreakable] – specifies whether other user can break the lock

¾ [auto-release | manual-release] – the lock is automatically has to be released automatically or not after check in

¾ [-modify attribute] – modifies the breakability and release attributes of an existing lock

¾ -object – object is the path which you want to set lock

(62)

May 18, 2010

Air Lock group

air lock release – sets or modifies a lock on datastore objects or

projects.

syntax- air lock release [-object object] [-project project]

¾ -object – object is the path which you want to set unlock

¾ -Project – Project is the path which you want to set unlock

air lock break – break users lock on a given datastore object.

syntax- air lock release [-object object] [-project project]

¾ -object – object is the path which you want to break

¾ -Project – Project is the path which you want to break

air lock show –displays a listing of locks for a given user , object or

project.

syntax- air lock show [-user username] [-object object] [-project project]

¾ -object – object is the path which you want to display

(63)

May 18, 2010

Air Repository group

The air repository commands operate on the storage system of the datastore

•air repository create - creates a datastore and installs certain default system objects .

•air repository chmod –change permissions on datastore.

•air repository chown –change ownership of the datastore.

•air repository rename – renames all files that makes up an EME

data store.

•air repository restart –shuts down and restarts the EME process. •air repository start – starts the EME process.

•air repository shutdown –Shuts down the EME process. •air repository backup –it is used to backup of datastore

(64)

May 18, 2010

Air Branch group

The air repository commands operate on the storage system of the datastore

•air branch create - creates a new branch with the name new-branch from an existing branch .

•air branch delete – deletes object on the branch.

•air branch freeze –freezes or unfreezes a branch .

•air branch list – displays information about objects on the branch. •air branch modify – allows you change the title of the branch .

(65)

May 18, 2010

QUESTIONS ?

(66)

May 18, 2010 66

THANK YOU

References

Related documents

Right click the Scripts folder in the DeepDiveCloudAppWeb project and select Add/New/JavaScript File.. Name the new

local online marketing online marketing tools online marketing consultant online marketing plan online marketing agencies online marketing service online marketing business

Πως να απαλλαγείς από αυτή την επανάληψη; Πως να μπεις μέσα σ΄ αυτό που είναι πάντα φρέσκο; Ο τροχός της ζωής και του θανάτου είναι ο νους.. Το

are very difficul to be extracted automatically. On the other hand, the second extractor, based on facial landmarks correctly located, allows to extract the facial regions with

Regarding requirement R-9 for the role P.9 Project Manager (Level 3): Considering that the client has altered the requirement M-3 to accept government experience accepted at

Another Persian method is:—“The worshipper, having closed the right nostril, enumerates the names of God from one to sixteen times, and whilst counting draws his breath upwards,

An excellent mild green curry with crocodile and sweet potato pieces, flavoured with lemon myrtle Spiced with Bush Tomatoes and native pepper, with a lovely acidic tang typical

To keep others from editing the document while you work on it, check the document out -- click the arrow to the right of the file you want to edit, then select Check Out. Once