14
Page | 1 Steps to extract data from hyperion essbase and load it into relational database. There are three methods to be able to extract data from essbase; these are using either a Calc script (9.3 onwards), Report script of an MDX query. If your essbase db is BSO then you will be able to use all of the methods, if it is ASO then you will only be able to use the report script or MDX query. You first have to create a calc script using the DATAEXPORT function that will extract to a text file. The DATAEXPORT function writes a dense dimension as the columns so you have to decide how you want your data to look, as it will need to be matched against how you reverse the essbase database in ODI. I am using the Sample. Basic db and have decided to use the Scenario as the dense dimension for the columns. It is important to use :- DataExportDimHeader On; As ODI will consider the first 2 records to be header information, the extract file will also have to write to location which will be accessible by ODI, this is not so bad if ODI is on the same server as essbase but becomes more of an issue if they are separate, one of the reasons I am not so seen on this method. Running the calc script produces the following output :-

Extracting Data from Hyperion Essbase

Embed Size (px)

DESCRIPTION

Extracting Data from Hyperion Essbase and Load into Relational Database

Citation preview

P a g e | 1

Steps to extract data from hyperion essbase and load it into relational

database. There are three methods to be able to extract data from essbase; these are using either a Calc script (9.3 onwards), Report script of an MDX query. If your essbase db is BSO then you will be able to use all of the methods, if it is ASO then you will only be able to use the report script or MDX query. You first have to create a calc script using the DATAEXPORT function that will extract to a text file. The DATAEXPORT function writes a dense dimension as the columns so you have to decide how you want your data to look, as it will need to be matched against how you reverse the essbase database in ODI. I am using the Sample. Basic db and have decided to use the Scenario as the dense dimension for the columns.

It is important to use :- DataExportDimHeader On; As ODI will consider the first 2 records to be header information, the extract file will also have to write to location which will be accessible by ODI, this is not so bad if ODI is on the same server as essbase but becomes more of an issue if they are separate, one of the reasons I am not so seen on this method. Running the calc script produces the following output :-

P a g e | 2

Now, you have to set up the connection to essbase in the topology manager Data Server:-

Physical schema:-

P a g e | 3

Logical Schema:-

New Project:-

P a g e | 4

Import Knowledge Modules:-

Insert New model:-

P a g e | 5

In the reverse section, select the context and the logical agent, the KM to use is “RKM Hyperion Essbase..” To be able to return the correct data columns the KM options have to be updated. MULTIPLE_DATA_COLUMNS – Set to “Yes” as our exported data has multiple columns. DATA_COLUMN_DIMENSION – Set to “Scenario” as this data dimension in the exported data file DATA_COLUMN_MEMBERS – Set to “Actual, Budget” as these are the members in the exported data file.

P a g e | 6

Reversing the cube produces

You will notice the members Actual & Budget have been generated in the data DataStore. Establish target connection. Create data server:-

P a g e | 7

Physical schema:-

Logical Schema:-

P a g e | 8

Target Model:-

P a g e | 9

Reverse engineer produces following output:-

Interface:-

P a g e | 10

P a g e | 11

Within the flow area the LKM to use is “LKM Hyperion Essbase DATA to SQL” The Options are important to get correct. EXTRACTION_QUERY_TYPE :- Three possible types CalcScript, MDXQuery or ReportScript, you will need to manually enter the type if you are not using the default ReportScript. In this lesson set it to Calcscript. EXTRACTION_QUERY_FILE :- This is the location of the file that will be run to extract the data from essbase, so obviously three file types. For the CalcScript you can enter the fully qualified location of the file or if it resides in the essbase app directory you can just type the name of it without the file type suffix. In this lesson, set it to ESSTEST ( name of calculation script ESSTEST.csc) EXT_COL_DELIMITER :- this is the columns delimiter that is being used, in my example the calc script is creating a comma delimited file so I just enter , EXTRACT_DATA_FILE_IN_CALC_SCRIPT – This only applies if you are using the query type of CalcScript, it is the location of the file created by the calc script., this file must be accessible by ODI. The other options are self-explanator. The IKM I used was “IKM SQL Incremental Update” with the options Insert - true Update - false Flow control - false Delete All - true Create target table - true

P a g e | 12

See below screen shots for more info.

Run interface. Open operator to see the execution status.

P a g e | 13

View data in odi itself.

P a g e | 14