Showing posts with label EXALYTICS. Show all posts
Showing posts with label EXALYTICS. Show all posts

Saturday, 3 August 2013

Loading Data from Oracle to TimesTen in Exalytics Environment - Options

As an Oracle Exalytics Implementation Advisor, I have been working with number of customers and helping them for smooth transition from non-Exalytics to Exalytics world. BI Apps migration makes it more interesting due to ETL component of the solution, Informatica or ODI.
One of the important question customer would like to understand is about the how to load data from Oracle to Times Ten in Exalytics environment? Are there more than one option?  Which options is better than other option?  Which option should be used in specific situation?  Are there any licence implications? Is incremental load is supported?  
This is an attempt to discuss the various options to load data into times ten from Oracle in general and Exalytics in particular at higher level.


Oracle Cache Facility

Oracle In-Memory Database Cache (IMDB Cache) is an Oracle Database product option ideal for caching a subset of an Oracle database using Oracle TimesTen In-Memory Database (TimesTen) and deploying in the application tier for multi-user and multi-threaded applications for improved response time. Applications perform read/write operations on the cache tables using SQL and PL/SQL with automatic persistence, transactional consistency, and data synchronization with the Oracle database. Cached tables operate like regular relational tables inside the TimesTen database and are persistent and recoverable. 

The IMDB Cache architecture is shown below.




Applications using IMDB Cache may choose to configure a combination of caching options
  • Read-only caches - transactions are performed in the Oracle Database and the changes are refreshed to the TimesTen cache database.
  • Read-write (or write-through) caches – transactions are performed in the TimesTen cache database and then propagated to the Oracle Database.
  • On-demand and preloaded cached - data may be loaded on-demand or preloaded, and may be shared across the cache grid members, or reside only in a specific cache node.
Data synchronization with the Oracle Database is performed automatically.
  • Asynchronous write-through cache leverages the speed of TimesTen by first committing the transactions locally in the cache database, and asynchronously sending the updates to the Oracle Database. Asynchronous write-through cache groups provide faster application response time and higher transaction throughput.
  • Synchronous write-through cache will ensure that if the Oracle Database cannot accept the update(s), the transaction is rolled back from the cache database; with synchronous write-through, the application must wait for the commits to complete in both the Oracle Database and the TimesTen database.
  • For read-only caches, incremental updates in the Oracle Database are asynchronously refreshed to the in-memory cache tables in the application-tier at user-specified intervals.
Note that at this time, the Oracle Cache facility -  which allows dynamic loading, refresh and propagation of data between Times Ten and Oracle - is not supported on Exalytics. 

OBIEE Summary Advisor

OBIEE Summary Advisor tool should be used to define and generate aggregate structures used by Business Intelligence applications. It is designed and intended specifically to allow aggregation of objects of types frequently used by Business Intelligence applications.

Please refer Support Note 1472652.1 for step by step guide to enable and configure Oracle Bi 

Summary Advisor does following during initial build

·         Generate the SQL which would be used to populate the aggregation tables
·         Update the RPD with the aggregates in the Physical and BMM layers
·         Create the physical tables in TimesTen and do the initial load

It does not support the incremental data load, though repository creation and database scripts can be separated from data load scripts.

Times Ten Utilities

There may be a situation where result of a SQL query from back-end Oracle database into single table on TimesTen with creating a cache grid, cache group, and cache tale to contain the result or also not using BI Summary Advisor scripts.

TimesTen provides the tools that will execute a user-provided SELECT statement on Oracle and load the result set into a table on TimesTen. Both the TimesTen and Oracle databases involved must be configured with the same national database character set.
The following are the major steps that are performed to accomplish this task:
  • Create a table with the correct columns and data types on TimesTen.
  • Provide a SELECT statement that will be executed on Oracle to generate the desired result set.
  • Load the result set into the table on TimesTen.
TimesTen provides two methods to accomplish these tasks:

A.  The ttIsql utility provides the createandloadfromoraquery command that, once provided the TimesTen table name and the SELECT statement, will automatically create the TimesTen table, execute the SELECT statement on Oracle, and load the result set into the TimesTen table.
Connection to Times Ten
 
ttisql "DSN=cachedb1_1122;UID=oratt;PWD=timesten;OraclePWD=oracle"
 Copyright (c) 1996-2011, Oracle.  All rights reserved.
Type ? or "help" for help, type "exit" to quit ttIsql
connect "DSN=mydb;UID=oratt;PWD=timesten;OraclePWD=oracle";
Connection successful: DSN=mydb;UID=oratt;
DataStore=/timesten/install/info/DemoDataStore/mydb;DatabaseCharacterSet=WE8DEC;
ConnectionCharacterSet=US7ASCII;DRIVER=/timesten/install/lib/libtten.so;
PermSize=40;TempSize=32;TypeMode=0;OracleNetServiceName=inst1;
 
(Default setting AutoCommit=1)
 
Create table and load data based on using select statement 
Command> createandloadfromoraquery employees 2 SELECT * FROM hr.employees;
Mapping query to this table:
    CREATE TABLE "ORATT"."EMPLOYEES" (
    "EMPLOYEE_ID" number(6,0) NOT NULL,
    "FIRST_NAME" varchar2(20 byte),
    "LAST_NAME" varchar2(25 byte) NOT NULL,
    "EMAIL" varchar2(25 byte) NOT NULL,
    "PHONE_NUMBER" varchar2(20 byte),
    "HIRE_DATE" date NOT NULL,
    "JOB_ID" varchar2(10 byte) NOT NULL,
    "SALARY" number(8,2),
    "COMMISSION_PCT" number(2,2),
    "MANAGER_ID" number(6,0),
    "DEPARTMENT_ID" number(4,0)
     )
Table employees created
107  ws loaded from oracle.

B.   The ttTableSchemaFromOraQueryGet built-in procedure evaluates the user-provided SELECT statement to generate a CREATE TABLE statement that can be executed to create a table on TimesTen, which would be appropriate to receive the result set from the SELECT statement. The ttLoadFromOracle built-in procedure executes the SELECT statement on Oracle and loads the result set into the TimesTen table.  
E.g. 
$ ttisql "DSN=mydb;uid=oratt;pwd=timesten;
OraclePwd=oracle;OracleNetServiceName=inst1"
Copyright (c) 1996-2011, Oracle.  All rights reserved.
Type ? or "help" for help, type "exit" to quit ttIsql.
connect "DSN=mydb;uid=oratt;pwd=timesten;
OraclePwd=oracle;OracleNetServiceName=inst1";
Connection successful: DSN=mydb;UID=oratt;
DataStore=/timesten/install/info/DemoDataStore/mydb;
DatabaseCharacterSet=WE8DEC;ConnectionCharacterSet=US7ASCII;
DRIVER=/timesten/install/lib/libtten.so;PermSize=40;TempSize=32;
TypeMode=0;OracleNetServiceName=inst1;
(Default setting AutoCommit=1)

Command> call ttTableSchemaFromOraQueryGet('hr','employees',
 'SELECT * FROM hr.employees');
< CREATE TABLE "HR"."EMPLOYEES" (
"EMPLOYEE_ID" number(6,0) NOT NULL,
"FIRST_NAME" varchar2(20 byte),
"LAST_NAME" varchar2(25 byte) NOT NULL,
"EMAIL" varchar2(25 byte) NOT NULL,
"PHONE_NUMBER" varchar2(20 byte),
"HIRE_DATE" date NOT NULL,
"JOB_ID" varchar2(10 byte) NOT NULL,
"SALARY" number(8,2),
"COMMISSION_PCT" number(2,2),
"MANAGER_ID" number(6,0),
"DEPARTMENT_ID" number(4,0)
 ) >
1 row found.
 
Command> CALL ttLoadFromOracle ('HR','EMPLOYEES','SELECT * FROM HR.EMPLOYEES');
< 107 >
1 row found.

Command> SELECT * FROM hr.employees;
< 100, Steven, King, SKING, 515.123.4567, 2003-06-17 00:00:00, AD_PRES, 24000, <NULL>, <NULL>, 90 >
< 101, Neena, Kochhar, NKOCHHAR, 515.123.4568, 2005-09-21 00:00:00, AD_VP, 17000, <NULL>, 100, 90 >
...
< 205, Shelley, Higgins, SHIGGINS, 515.123.8080, 2002-06-07 00:00:00, AC_MGR, 12008, <NULL>, 101, 110 >
< 206, William, Gietz, WGIETZ, 515.123.8181, 2002-06-07 00:00:00, AC_ACCOUNT, 8300, <NULL>, 205, 110 >
107 rows found.

Limitations

The load process does not check that the column data types and sizes in the TimesTen table match the data types and sizes of the result set

The load is automatically committed every 256 rows. If an error is encountered during the load, it will terminate the load, but will not roll back any committed transactions.

It does not support data load into system tables, dictionary tables, temporary tables, detail tables of views, materialized view tables, materialized view log tables, or tables already in a cache group. 

In addition, you cannot use a synonym for the table name.

Foreign key constraint will not be validated during the load process


Oracle Data Integrator

Oracle Data Integrator provides Knowledge Modules that implement optimized methods for loading data from a source or staging area into a TimesTen database.

Source or Staging Area Technology
KM
Notes
SQL
LKM SQL to TimesTen
Loads data from an ANSI SQL-92 source to a TimesTen staging table using the TimesTen JDBC driver.
File
LKM File to TimesTen (ttBulkCp)
Loads data from a file to a TimesTen staging table using ttBulkCp utility.

In addition to these KMs, you can also use the Generic SQL KMs or the KMs specific to the other technology involved.

For extracting data from a TimesTen staging area to a TimesTen table, ODI provides IKM TimesTen Incremental Update (MERGE).

KM
Notes
IKM TimesTen Incremental Update (MERGE)
Integrates data from staging area into a TimesTen target table using TimesTen JDBC driver in incremental update mode. For example, inexistent rows are inserted; already existing rows are updated.

A good news is that ODI is supported on Exalytics.

SQL Developer Export Facility

SqlDeveloper can be used to connect to both Oracle databases and TimesTen data stores and access the schemas and data of both. The SqlDeveloper Export facility allows exporting data in ascii csv ("column separated values") format so that tables from Oracle can be exported in ascii format and subsequently loaded into TimesTen using the TimesTen ttBulkCp loading utility. As opposed to the other tools listed in this Note, SqlDeveloper can be used in the other direction as well, such that tables can be exported from TimesTen into ascii formatted .csv files which can then be loaded into Oracle using Sqlloader. Check the "SqlDeveloper TimesTen InMemory Database Support User's Guide" for more information about using SqlDeveloper against TimesTen.


There are multiple options to populate aggregate times ten table on Exalytics and Non-Exalytics machine. The decision should be based on project requirements, toolset and resource capabilities on the project.  

Monday, 20 May 2013

OBIEE 11g: Bugs Fixed in 11.1.1.6.10 Patch Set Oracle Support Web Notification

Applies to:


Business Intelligence Server Enterprise Edition - Version 11.1.1.6.0 to 11.1.1.6.9 [Release 11g]
Business Intelligence Suite Enterprise Edition - Version 11.1.1.6.0 to 11.1.1.6.9 [Release 11g]
Oracle Exalytics Software - Version 1.0.0.0.0 to 1.0.0.2.0 [Release 1.0]
Information in this document applies to any platform.

Details


The Business Intelligence Enterprise Edition 11.1.1.6.10 patch set has been released and is available to download from My Oracle Support.

Per the patch readme: 
  • This patch set is available for all customers who are using Oracle Business Intelligence Enterprise Edition 11.1.1.6.0, 11.1.1.6.1, 11.1.1.6.2, 11.1.1.6.2 BP1, 11.1.1.6.4, 11.1.1.6.5, 11.1.1.6.6, 11.1.1.6.7, 11.1.1.6.8 and 11.1.1.6.9. 
  • Oracle Exalytics customers must only install this Oracle Business Intelligence patch set if it is certified for the specific Oracle Exalytics patch or patch set update that they are applying. For more information see Oracle Fusion Middleware Installation and Administration Guide for Oracle Exalytics In-Memory Machine and the Oracle Exalytics certification information.
The Oracle Business Intelligence 11.1.1.6.10 patch set is comprised of the following patches:
·         Patch 16504136 - 11.1.1.6.10 (1 of 7) Oracle Business Intelligence Installer (BIINST)
·         Patch 16504143 - 11.1.1.6.10 (2 of 7) Oracle Real Time Decisions (RTD)
·         Patch 16504148 - 11.1.1.6.10 (3 of 7) Oracle Business Intelligence Publisher (BIP)
·         Patch 16504154 - 11.1.1.6.10 (4 of 7) Oracle Business Intelligence ADF Components (BIADFCOMPS)
·         Patch 16504156 - 11.1.1.6.10 (5 of 7) Enterprise Performance Management Components Installed from BI Installer 11.1.1.6.x (BIFNDNEPM)
·         Patch 16427939 - 11.1.1.6.10 (6 of 7) Oracle Business Intelligence: (OBIEE)
·         Patch 16504161 - 11.1.1.6.10 (7 of 7) Oracle Business Intelligence Platform Client Installers and MapViewer
Note:
  • The Readme files for the above patches describe the bugs fixed in each patch, and any known bugs with the patch.
  • This patch is cumulative, and therefore, contains all of the fixes included in the earlier 11.1.1.6.2, 11.1.1.6.4, 11.1.1.6.5, 11.1.1.6.6, 11.1.1.6.7, 11.1.1.6.8 and 11.1.1.6.9 patch sets.
  • However, lists of fixes from included patch sets need to be looked up in the respective patches' readme files, and are not included in the above patches' readme files.
  • The instructions to apply the above patches are identical, and are contained in the readme file for patch 16504136.
  • Please bear in mind, that the readme states to apply patch 13952743 for JDeveloper, too.
List of bugs are as follows....


Patch 16504136
13404296 BI PROVISIONING FACADE MUST TRIM RPD IN INSTANCE FOR SELECTED FA OFFERINGS
13485655 T2P: ERROR MSG EXECUTING WLST SCRIPT APPEARS DURING BIINSTANCE PASTECONFIG
13504454 BLK: BIINSTANCE COPYCONFIG FAILURE: ESSBASE MAXL LOGIN IS FAILING 
13510938 NEED OFFICIAL WAY TO INVOKE _CONFIGURERPD
13560245 BIDOMAIN/CONFIG/JDBC NOT FOUND
13565722 BLK: BI T2P PASTECONFIG ERRORED OUT WITH UNABLE TO PARSE JMS_WEBLOGIC_JNDI_URL
13589944 BI T2P: PASTECONFIG INSTANCE IS FAILING WITH JAVA.LANG.UNSATISFIEDLINKERROR
13619973 INCLUDE ESSSERVER HOST NAME IN THE MOVEPLAN
13628293 EMPTY PROCUREMENT DASHBOARD IN RC4
13683204 STRESS:FA:CRM ERROR RESPONSE[NQSERROR: 43082] ILLEGAL OPERATION ATTEMPTED CLOSED
13240778 QA: ACCESS: ERE: RGRN: ERROR ACCESSING LOV VIA KEY; CAN'T SELECT VIA KEY
13347251 QA: UNABLE TO SEE ERE IN "DYNAMIC" PAGE IN SAFARI, CHROME
13360752 UNABLE TO LOAD ALL EXTENSION COLUMNS FOR CUSTOMER IN RTD STUDIO
13408870 QA: SDCONFIG 3X VALUES COPIED TO 11G, BUT NOT USED THERE
13409526 QA: UPDATE DOC, COPYRTDDATA_README.TXT FOR STOP/START 11G
13472560 QA:ACCESS:HIGH CONTRAST SETTING APPEARS CLUTTERED, SOME ITEMS NOT VISIBLE
13506987 COPYRIGHT INFORMATION NEEDS TO BE EXTENDED TO 2012
13537093 BACKPORT BUG 13537093 TO 11.1.1.6.2
13539353 BACKPORT BUG 13539353 TO 11.1.1.6.2
13567294 REMOVED 1ST VALUE IN RULE BECOMES NAN
10022187 ACC: SELECTED ITEM IN FOLDERS PANE GETS LOST AFTER USING UP/DOWN ARROW TOO MUCH
10046249 ACC: SCHEDULE PAGES HAVE "GRIDTABLE" TABLES THAT CAN'T BE NAVIGATED
11678983 LDAP CONFIG ASSUME ADMIN IS DEFINED UNDER DISTINGUISHED NAME FOR USERS
11906714 QA: TIMEZONE NOT IN SYNC IN JOB MANAGER - JOB HIISTORY
12312461 NLS:MB DATA GARBLED IN JOB HISTORY USING SQL SERVER
12542914 ACC: REPORT VIEWER STRUCTURE HAS ERRORS - NO IFRAME AND NO LANG ATTRIBUTE
12645567 NLS:WRONG WEEK OF YEAR FOR ORACLE DATE FORMAT CONTAINING WW
12825409 INTERACTIVE VIEWER CONDITIONAL FORMATTING FAILS FOR NON DISPLAY COLUMN
12877824 WEBSERVICE API - GETSCHEDULEDREPORTSTATUS ALWAYS RETURNS JOB STATUS AS SCHEDULED
12912473 BI PUBLISHER 11G SHARE REPORT XMODE=3 AND XMODE=4 NOT WORKING FOR PDF OUTPUT
13365954 ERROR WHILE OVERWRITING AN ANALYSIS VIA BI COMPOSER
13520338 STRESS:FA:CRM:SPD HEAVY CONTENTION ON FACTORYMANAGER.CREATEMODELOBJECT
13597290 11.1.1.7.0 ESSBASE DATA CONTROL CODE IS PRINTING UNWANTED DEBUG MESSAGES
13733098 REPORTS AND ANALYTICS, CANNOT SAVE NEWLY CREATED REPORT
13789351 RUP2 ST3 (PS5 RC4) - NPE WHILE TESTING OL FLOW IN KOREAN LANGUAGE
13858848 BIADFCOMPS - ANALYSIS CREATED USING COMBINE UNION IS NOT EDITABLE IN BI COMPOSER
13958089 BI COMPOSER: CAN NOT SAVE ANALYSIS AFTER FAILOVER WLS MANAGE SERVER
13973674 MAIN: NAMECLASHEXCEPTION WHEN MULTIPLE INSTANCES OF ESSBASEDC ARE LOADED
14081217 STRESS:FA:CRM:SPD BIADAPTERDCSERVICE HOLDING LARGE IN HEAP CAUSING OOM
14183506 ALWAYS SAME NPE AND STACKTRACE NO MATTER THE PROBLEM IS 
10623654 FA: NLS:PS1:DATE AND TIME NOT LOCALIZED IN FR SCHEDULED BATCHES DETAIL INFO.
11652873 FA: FR ANNOTATION VIEW PANE HAS PERMISSION ISSUES FOR ANNOTATION ON TEXT OB
11735177 REHOSTING TOOL IS NOT TRANSFERRING PROPER USERNAME IN PARTITION DEFINITION
11924085 UNABLE TO RUN AN ESSBASE CALC SCRIPT IN WEB ANALYSIS
12404364 ESSBASE READ ONLY ACCESS INSUFFICIENT PRIVILEGE WITH PROMPT
12530876 PERFORMANCE OF FR REPORT QUERYING ESSBASE W/LARGE NUMBER OF DYNAMIC CALCULATIONS
12601370 FUSION B17: SAVED QUERY DOES NOT REFRESH, BUT NEW QUERY WORKS ON THOSE MEMBERS
12722750 FA: FF 5.0 GIVES BLANK SCREEN FOR HTML BOOK PREVIEW
12723793 NEED DIFFERENT URL FOR SMARTVIEW INSTALLER IN FUSION MODE
12765822 DMS LOGS LOTS OF ERRORS WHEN ESSBASESERVER1 IS DOWN
10137467 ENABLE "ZOOM TO DATA RANGE "
10165057 QA:THE EDGES OF MAP VIEW GOT TRUNCATED AFTER EXPORTED/PRINTED TO PDF/HTML
10167311 ADD TEST CASES FOR MDSXUDML GENERATOR AND PARSER
10199188 CHARTS X AXIS LABEL IS BLURRED AT 45/60 ANGLE
10391144 WEIRD BEHAVIOUR OF FILE OPEN DIALOG ON WINDOWS 7 COMPUTER
10409969 BH9:QA: TIMESTEN ODBC ERR INCOMPATIBLE FACT IF CONDITION STEP FEDERATED MEASUR
10419667 UT:USAGE TRACKING ERROR TEXT OF FAILED QUERY IS NOT LOGGED
10647655 COLUMN DATA FORMAT IS IGNORED ON WRITEBACK
11657725 MALFORMED URL ERROR WHEN PRINT KPI WATCHLIST TO PDF ON DASHBOARD PAGE
11810127 ADMINTOOL TESTS FAIL: EXTERNALIZATION
13794002 BISHIPHOME 11.1.1.6.2 CUMULATIVE PATCH 1
14054848 RUP4: BISHIPHOME CLIENT INSTALL 11.1.1.6.3 PATCH 1
14533251 REL6: BISHIPHOME CLIENT INSTALL 11.1.1.6.31 PATCH 2
14646289 REL6: BISHIPHOME CLIENT INSTALL 11.1.1.6.31 PATCH 3
14672002 REL6: BISHIPHOME CLIENT INSTALL 11.1.1.6.31 PATCH 4
14711062 REL6: BISHIPHOME CLIENT INSTALL 11.1.1.6.31 PATCH 5
14712346 11.1.1.6.5 CLIENT INSTALLER AND MAPVIEWER PATCH
14740701 REL6: BISHIPHOME CLIENT INSTALL 11.1.1.6.31 PATCH 6
15839347 11.1.1.6.6 CLIENT INSTALLER AND MAPVIEWER PATCH
15860153 REL6: BISHIPHOME CLIENT INSTALL 11.1.1.6.31 PATCH 7
I hope you find this copy and pasted information useful.