Professional Documents
Culture Documents
6 Interview Questions
6 Interview Questions
INTERVIEW Q&A
[Type the document subtitle]
[Type the author name]
[Year]
[TYPE
First Business Analyst is going to interact with the client to know about
the client business and pain-areas, from that business analysis BA will
prepare the document called as Business requirement document or BRD or
FSD(Functional Specification document) or SPEC.
From the BRD,the development team will prepare the HLD and LLD.
3. Testing
4. Production or Support
The company need to give the application support for one month by default.After
that based on the clients decision, the development company or some other
company will give the production support.
Ans:-Primary keyDimension
Foreign key-Fact
d)Same as (c) but without Joins?
Ans:-Both act like fact tables in BMM layer
7.You recently changed the columns of your presentation catalog as your
manager wants to enforce naming standards for all customer facing
applications. What happens to all the dashboard requests written prior to this
change?Do they function properly or do they appear broken?If yes, they will
function, How does they work?If not,reports appear broken, what can you do
to fix this?Give examples?
Ans:-If alias table is available for presentation table then all the reports work
fine.
8. I have configured the repository(3 layers) and saved.I have generated some
reports and saved.If I change the presentation catalog name then it is showing
that you dont have permissions to access this subject area in answers.How can
you fix this?
Ans:-Goto Advanced tab(In answers) Change the subject area name and set XML
it will automatically display the subject area.
PERFORMANCE TUNNING FOR REPORTS AND DASHBOARDS
9.You come Morning to the office And all the users are complaining about the
OBIEE reporting system is very slow (dashboards). What is your approach to
resolve the issue?
Ans:
1. First check NQServer.log
2. Admin Tool -> click Session Manager. Check if there is any bottleneck and
accordingly resolve.
Refresh the sessions
3. Analytics or Answers -> Administration-> Manage Sessions
Check the physical query and execute from the back-end(BE).
10.Performance Tuning at real time
A)Performance Tuning is the huge topic to answer;
lets take step by step approach as follows
Check whether the same query is running or anyone update the query.If the
same query is running then follow the steps given below,
When you open the dashboard page, first figure out whether Prompt or Report is
taking more time.
If it is prompt, check for any multi select prompts which are taking time to load
all values.. (best practice is set default values).
If Report is taking longer time, set some default filters and query for just couple
of records and check the report performance.
Take physical SQL from the session log (if SQL is not generated check for log
level whether it is less than 2).
Run this Physical SQL in the TOAD or any SQL Editor.
Check Explain plan for the cost of the query.
Hash Joins/Cartesian Joins are always kills performance.
Some-times, Force Inner-join also helps to force the tables to have inner-join
between two tables.
Check are there any Full Table Scans happening instead of Index Scan.
Consult your DBA for the Stats.
Note: Whenever you do Consistency check , Right Click the Changed Business
Model Object and go for Check consistency rather than using the Global
Consistency Check. This will minimize the time needed for Consistency Check.
2. Minimize the use of Snow-flakes. Always go for Star Schemas:
Every logical fact table must join to atleast one logical dimension table.
Note that when the source is a fully de-normalized table or flat file, you must
map its physical fact columns to one or more logical fact tables, and its physical
dimension columns to logical dimension tables.
3. Create dimension hierarchies for every Dimension in the Business Model:
Even if a meaningful hierarchy definition cannot be thought of, just create one
with the Grand Total Level and Detail Level. For Dimension Hierarchies the
Number of Elements at this level should increase from 1 at grand Total to the
corresponding distinct values at each level. This can be approximate values;
need not be the exact ones. Define keys at each level of the Hierarchy.
4. Dont keep unwanted physical columns in the Logical Layer:
5. Give Meaning ful Names to the Logical columns. Avoid assigning a logical
column the same name as a logical table or Business Model Object:
6. Logical Fact & Dimension table columns:
Always assign a primary key for logical dimension tables. All logical dimension
columns should be renamed in a way that is meaningful to users.
Bring only required columns into BMM layer for reporting.
Do not assign logical primary key for logical fact columns.
Create dummy measures to group facts.
7. Use Multi User Development Environment:
Use the Multi-User Development facility if there are multiple developers. Multiple
developers to connect online to the same repository file and Making changes is
not recommended.
Multi User Development allows user to define a series of projects with in the
repository file, where each project is a subset of the entire repository. If
developers want to make changes, they can check out a project to a local
machine make and test the changes, and then check the modifications back into
the master repository file.
8. Level-based Metrics:
When creating level-based measures, make sure that all appropriate fact sources
map to the appropriate level in the hierarchy using aggregation content. You set
up aggregation content in the levels tab of the Logical Column dialog for the
measure.
Note that this is different from the content tab of the Logical dialog for the
measure. Note that this is different from the content tab of the logical table
source dialog, which is used to specify the grain of the source tables to which it
maps. You only need to set up aggregation content in the levels tab of the logical
column dialog for level-based measures. For measures that are not level based,
leave the logical level field bank.
9. Separate business model:
Even if you have only a single data source or schema in the physical layer, or you
have only one physical data source for the repository, it is still good practice to
break out the physical objects into multiple business models in the BMM layer to
represent the independent areas of functionality.
10. Arrange the logical columns alphabetically if customer does not require any.
This will save time when you revisit:
11. Fix the warnings if any, dont ignore it:
12. Performance Tuning:
Minimize the use of conditional checks and CASE WHEN usage in the formula of
Logical columns. This will affect performance. Instead make proper use of the
where clause content filter of the LTS if the condition applies to all the columns/
measures in the logical table.
Make proper distinction between count and count distinct. If you are counting on
a unique value column dont use count distinct. This will affect performance.
Avoid dimensions in Fact tables and avoid measures in dimension tables.
establish the joins like physical and logical or complex joins, dimensions, levelbased-metrics etc.
Presentation layer:We can show only the content which we want to show the
end-user, We can implement authorization and authentication, Implicit fact
column and sort order column etc.
http://oracletechnotalk.blogspot.in/2012/04/creation-of-hierarchy-inobiee.html
4.What is Sort order columns?
Ans: We can sort the columns at 2 levels
1. Repository:At the presentation layer,sort the one column values based on
another column
2. Answers:At the criteria tab->columns->sort the column values either
ascending or descending order based on the requirement.
10
Ans: We can create different no.of connection pools in the project. It has the
database connection details, no.of minimum users can access the application.
Did u get the data from any other data sources? If yes how?
Yes,ofcourse client will provide the data in different formats like excel sheets,
files, cubes etc. We can import the data by creating the drivers for data sources.
http://oracletechnotalk.wordpress.com/2012/04/10/basic-dataware-housinginterview-questions/
What is fact and dimension table?
The detailed description of fact and dimension tables
http://oracletechnotalk.wordpress.com/2012/04/10/basic-dataware-housinginterview-questions/
What is the flow of your porject?
Every project must follow the software development life cycle.
Generally,the porject flow may like requirements gathering, Development(ETL
and Report), testing and Production.The flow of project may differ from project to
project based on domain like retail, telecom, healthcare, construction etc.
The complete knowledge on SDLC
http://oracletechnotalk.wordpress.com/2012/04/22/obiee-applicationdevelopment-life-cycle/
What is Dataware housing?
http://oracletechnotalk.wordpress.com/2012/04/10/basic-dataware-housinginterview-questions/
Rate yourself in SQL?
OBIEE developer must have the knowledge on sql because he need to test his
own stuff.Minimum knowledge of SQL is required for dataware housing
developers.The rating should be dependent on the person knowledge.
Tell me About yourself?
This is the major interview question for freshers and experienced. Everyone
should prepare before going to the interview.
Experienced:Tell ur name with experience what you have with current and
previous organization and then explain the porject what you done. If they
expecting more then give your educational details but no need to mention the
family back ground.
What are your roles and responsibilities in your current project?
As a OBIEE developer,the reponsibilities like repository configuration and reports
generation based on the client requirements. At the end we need to implement
the security.
From where you start your work in daily routine?
12
13
DATAWAREHOUSE FUNDAMENTALS
Dataware house is a
Non-volatile: Permanent data(stores historical data or past data)
Subject-oriented: Data will be stored according to the subjects(like data-marts)
Integrated:Make a single source from heterogeneous sources
Time-variant: Data changed over a period of time
why we do reporting?
Reporting is an essential event for analysis of the data of the specific
organisation. Anyone can analyse like management, users, partners etc.We can
forecast the values by using the reports or reporting tool. Reporting will be exist
in all domains like Retail, Tele-communication, Insurance, Banking, Education,
Public sector industries or factories and private sector industries.Analysis of
data is everywhere like small-scale, medium-scale and large-scale industries.
PHYSICAL LAYER IN OBIEE
Physical Layer:The name itself is saying,it is having the direct relation between
the repository and database.This is the one o f the most important layer in the
repository.The query will be executed from the physical layer only.Joins in the
other layers should be same with the physical layer.We cant rename the object
names in the physical layer.In this layer we can import the data,creating
connection pools,alias tables,duplicate tables,opaque views, keys and joins.
14
Data sources:We can Import the data from different Data sources like oracle,
my-sql, excel sheets, XML data and cubes(OLAP and ESS base) by using different
drivers. Data will be imported with key or without keys.
Connection pool:We can create a multiple connection pools for single repository
to increase the performance.These are used for accessing users,variables and
implementing the security etc.
Alias table:It is copy of parent table and always functionally depending on the
parent table.Alias table will be created for re-use the same table for different
purpose.
Duplicate table:It is a copy of parent table but dont have the relation,once
created.
Keys:If u import the tables without keys,here we can create the keys based on
the data-modelling.The joins will be established in the physical layer only based
on the primary and foreign key relation.
15
NQSQuery.log:Information about the query manger like how much time it will
take to execute the query and performance of the query.
16
Web-catalog: Web catalog is a folder,it will store the all the settings of a
application.Maintains an individual catalog for application is the best-practice
for deploying the application.
In OBIEE 11g,all the configuration settings will be done at enterprise manager.
Enterprise manager is a third-party server, here all the settings are manages like
configuration of RPD, cache management, users and groups, web catalog
settings.
OBIEE ARCHITECTURE
(Oracle Business Intelligence Enterprise Edition) latest version is 11.1.1.5 or
6.It is a reporting tool for generate the reports to analyse the data.OBIEE has 2
default servers BI server and Presentation server.It has 6 components in the
architecture
1.Presentation services(Answers or Analysis)
2.Presentation server
3. Repository
4. BI server
5. Database connection(ODBC (Open database connectivity) or OCI (Oracle
call Interface))
6. Enterprise Data ware House
17
Physical layer:It has the direct connection with the database.We can apply the
joins between fact tables and dimension tables based on the data-modelling.
Business model and mapping layer:The logical changes will be done here like
creating logical joins(complex joins),new columns or tables,hierarchies etc.
We can operate the Repository settings by starting the BI server.we can open
the RPD in either online or offline mode
Data-ware House: Data-ware House is a huge data storage space for retrieving
data.
18
Oracle BI(Administration)
Oracle BIdata(analytics)
What are the Key Configuration Files in OBIEE
NQSConfig.ini,
DBfeatures.ini,
NQSCluster.ini,
odbc.ini,
instanceconfig.xml
What are the different Log files in OBIEE?
NQServer.log
NQSQuery.log
NQSAdministration.log
NQS Scheduler.log
What are the minimum services needed to load a repository file onto memory and
view a dashboard which has reports that have been refreshed on a scheduled
basis?
BI server (Administration Tool)
Presentation Server (Analytics or Answers)
Scheduler server (Scheduling the jobs)
What is the location of the administration configuration files?
drive:\OBIEE 11g\instances\instance1\config\oracleBIservercomponent\
coreapplication_obis1\file name
19
20
Answer:- By clicking modify request and Narrative View and by giving @1 for the
first column result and @2 for the 2nd column and son on and we can also give a
heading for No Results by clicking the Narrative view.
5. How will you create Interactive Dashboards ?
Answer:- By clicking Administration and Manage dashboards and by adding
column selector also by using view selector etc.and also by using prompts.
6. What is write-back in obiee ?
Answer:- In Reports of Answer you can give a column as updatebale and then
view the reports,this option is called write back.
7. How will you execute Direct SQL in OBIEE?
Answer:- By clicking Direct Database Request below the subject area in
Answers.
8. How will you create report from two subject areas
Answer:- From the Criteria Pane of the Report Created from First Subject Area
come to the bottom of the page and click combine request. but the options are
limited for combining like union etc..
9. How will you Port changes for dashboards,reports,rpd from development to
production?
Answer:- For the RPD use the Merge option in Admin Tool and for dashboards and
reports use Content Accelerator Framework.
10. What are the different types of variables in OBIEE? explain
Answer:- There are two types of variables in obiee.
a.Repository variable.
This variable is for the whole repository.
b.session variable . session variable can be system variable and non system
variable. system variable uses NQ_SESSION. - (system reserved variable).
examples of non system variables are user defined filters etc.
11. How will you enable or disable caching in the system level and table level?
Answer:- In the NQSConfig.ini file use ENABLE under CACHE Section for System
Level
for tables .If you want to enable the cache at table level , open the repository in
offline mode(not the current working repository). this should be different from
the current repository and click enable or disable the cache . right click the
table and properties and click the cache or deselect the cache. then merge the
repository with the current working one.
21
12. How will you go about adding additional column to the repository in the
presentation layer?
Answer :- Check whether the table is already existing if so add in physical layer
,then BMM and then Presentation layer, then reload server metadata ,then it will
be visible to all users.
13. How will effect the changes for a report , if for certain users only the column
heading in the report should be changed?
Answer:- Using session variables for that user.
14. What is a table alias in obiee? and where and how will you create it.
Answer:- Table alias can be created by right clicking the table in the physical
layer then click alias,
Table alias is mostly used for creating self joins.
15. Have you created Hierarchy in OBIEE. if so where and how?
Answer:- Yes we can create hierarchy in BMM Layer of OBIEE in dimensions for
the dimension tables. this can be done by right clicking the dimension table and
click create dimension and then we should manually define the hierarchy and its
levels.
16. What is Level Based Metrics.How will you create it?
Answer:- Leval-base matrics means, having a measure pinned at a certain level
of the dimension. Monthly Total Sales or Quarterly Sales are the examples.
To create a level based measure, create a new logical column based on the
original measure (like Sales in the example above). Drag and drop the new
logical column to the appropriate level in the Dimension hierarchy (in the above
example you will drag and drop it to Month in Time Dimension.
17. What are the different layers of OBIEE Repository?
Answer:- Physical Layer, Business Model and Mapping Layer, and Presentation
Layer.
18. What is Authentication? How many types of authentication.
Answer:- Authentication is the process by which a system verifies, through the
use of a user
a. Operaing system autentication
b. External table authentication
c. Database authentication
d. LDAP authentication
19. What are the different types of security you have worked in OBIEE?
Answer :- Object Level and data level.
22
23
24
You have to broadly describe the expected analysis an organization would like to
do in every module. This way you would be able to complete at least 40-50 % of
the requirements. To move ahead, study the data and business and you can
create few more schemas.
35. What are the Challenges You Faced while making of Reports?
Answer:- Making of an report has never been a difficult task. But problem comes
when users are reluctant to adopt a new system. Many developers have
experienced that if they are not able to create the report in exactly the way they
used to see, they will keep asking for the changes. Developers approach should
be to first show them what they want to see and then add more information in
the report.
36. What you will do when your Report is not Fetching Right Data?
Answer:- This is the biggest problem in report creation and verification. There
could be two reasons for report not fetching the right data.
1. Mostly clients do not have correct data in their database and on top of that to
correct the results they make some changes at the report level to bring the
desired result which you may not e aware of while creating the reports. Clients
try to match the data with their existing reports and you never get the correct
results. you try to discover the things and at later stage come to know of all
these problems and you are held responsible for this delay. Hence always
consult the SPOC(Single Point of Contact) and try to understand the logic they
have used to generate their reports.
2. If the database values are correct, there there could be a problem with the
joins and relations in the schema. You need to discover that analyzing and
digging deep into the matter.
37. How analytics Process Your Request When you Create your Requests?
Answer:- Oracle BI server converts the logical SQL submitted by the client into
optimised physical SQL which is then sent to the backend database. Also in
between it performs various tasks like converting the user operations like user
selections to form a logical SQL, checking and verifying credentials, breaking
the request into threads(as Oracle BI is a multi threaded server), processes the
requests, manages the cached results, again converting the results received
from the database into user presentable form etc.
38. From where u Get the Logical Query of your Request?
Answer:- The logical SQL generated by the server can be viewed in BI Answers.
25
39. What are the Major Challenges You Faced While Creating the RPD??????
Answer:- Every now and then there are problems with the database connections
but the problem while creating the repository RPD files comes with complex
schemas made on OLTP systems consisting of lot of joins and checking the
results. Th type of join made need to be checked. By default it is inner join but
sometimes the requirement demands other types of joins. There are lot of
problems with the date formats also.
40. What are Global Filter and how thery differ From Column Filter?
Answer:Column filter- Simply a filter applied on a column which we can use to restrict
our column values while pulling the data or in charts to see the related content.
Global filter- This filter will have impact on across the application.
41. How to hide Certain Columns From a User?
Answer:- We can hide a column in Application access level security
Do not add the column in the report
Do not add the column in the presentation layer.
42. How to Enable Drills in a Given Column Data?
Answer:- To enable Drill down for a column, it should be included in the hierarchy
in OBIEE.
Hyperion IR has a drill anywhere feature where dont have to define and can drill
to any available column.
43. How the users Created Differs From RPD/Answers/Dashboards Level?
Answer:- RPD users can do administrator tasks like adding new data source,
create hirarchies, change column names where as Answers users may create
new charts, edit those charts and Dashboard users may only view and analyse
the dashboard or can edit dashboard by adding/removing charts objects.
44. How Online/Offline mode impact Development and Delpoyment????
Answer:Online Mode- You can make changes in the RPD file and push in changes which
will be immediately visible to the users who are already connected. This feature
we may use in production environment.
Offline mode- can be useful in test or development environment.
45. What is Guided Navigation?
26
27
28
29
4) Select the Column Calendar Date from Sample Sale Lite subject area
30
31
32
33
9) On column properties dialog box navigate over column format and select
check box Customize heading.
column heading
34
10) Save the report and pulled it on Dashboard page and select the date from
prompt
35
11) The column heading will change according to value select in the prompt
36
Bind Password
LDAP version
Domain identifier, if any
User name attribute type (in most cases this is default)
REGISTERING AN LDAP SERVER IN OBIEE
In Oracle BI repository, go to manage security.
With the help from your network security group/administration, fill out the
following information
37
Next in the Advanced tab, based on the kind of LDAP server you have and its
configuration, make the necessary changes.
For Microsoft ADSI (Active Directory Service Interface), choose ADSI and for all
others leave it unchecked.
Most of the times, Username attribute would be automatically generated. For
Microsoft ADSI It is sAMAccountName; for most of the LDAP servers it is uid or
cn. Check with your network security group/administrator on what is the
username attribute for your LDAP server. Make a note of the user name attribute
you will need it later.
38
39
Configure the session initialization block. Give it a name and click on Edit Data
Source. In the pop up window, choose LDAP from the drop down box and then
click on Browse. You can also configure a LDAP server here by clicking on
New. In the browse pop up window choose the LDAP server you would like to
use.
40
Next we need to create variables. User and Email are the common variables
normally in play.
41
42
Upon clicking on OK, a warning pops up on the usage of User session variable
(User session variable has a special purpose. Are you sure you want to use this
name). Click yes.
Next enter the LDAP variable for username. sAMAccountName in the case of
ADSI as configured in the LDAP.
Next following similar steps create a variable for Email. In addition, depending
on you need, you can bring additional variables from the LDAP server.
43
44
Hi friends , hope you all have come across the Mapping Analyst for
Excel in Informatica Power Centre 8.6 version.I would like to just give a brief
introduction about the same.In the coming days we will discuss more about the
same.
As you all know before when we start a DWH project we need to gather business
requirements from the client.It takes some time for us to analyze the
functionality of the project and then make that as a document in technical
perspective for ETL. This process is too tedious as a lot of valuable development
time is spent gathering business requirements and then translating them into
technical specifications, and then converting these specifications to
PowerCenter data integration mappings.So in order to avoid this Informatica has
come with a new feature called Mapping Analyst for Excel.
45
defining the source and target in the Excel and then send the same to the
Developers who can directly convert this template into Informatica Mappings
and execute the workflows.
Posted by yogi at 08:29 No comments:
Email ThisBlogThis!Share to TwitterShare to Facebook
How to convert the date field in OBIEE report to a desired date format
How to convert the date field in OBIEE report to a desired date format?
CAST (expr AS type) is a conversion function in OBIEE that changes the data
type of a value or a null value to another data type.This is one solution to change
the datatype,but when I tried with this the column heading in report changed to
different colour and my client didn't liked that solution.So I tried another
solution.Follow the below steps and screenshots.
1.Go to Column Properties tab
46
47
48
PLP or Post Load Processes: Are sometimes used to transform data after it is in
a fact table, or add to data after it is in a fact table.
Informatica structure: An informatica workflow includes one or more sessions
sessions. Each session includes one mapping.
A workflow is started that runs one or more sessions. The logic of each session
is defined in a mapping.
DAC:
DAC acts like a trigger to run the workflows in Informatica.
DAC contains Execution Plans which can be scheduled or run any time. These
Execution Plans are designed to do an incremental or a full load.
Within each Execution Plan there are several subject areas, each subject area
contains all the tasks which are associated to workflows in Informatica that
loads data to the dimensions and facts to build the corresponding subject area.
49
Table Suffix
Description
Dimension (_DS)
Dimension Helper
tables (_DHL)
dimension tables.
Column
Suffix
Description
_CD
Code field
_DT
Date field
_I
_ID
_FLG
In Table Types
_D, _DS, _FS, _G,
_GS
_D, _DS, _FS, _G,
_DHL, _DHLS
_D, _MD
_FS
_D, _DHL, _DS,
_FS, _F, _G, _DHLS
50
_WID
_NAME
_DESC
_D, _F, _A
_D, _F, _A
2) The RPD to be merged (the one you newly worked on) - sandeep.rpd
>>Modified RPD<<
51
If you don't have a dummy. rpd , create a new rpd from the admintools (do not
import metadata).
ok now we are all set to start the merging.
Step 1: Open your Current RPD, ie BISAMPLE.rpd in my case and select the
merge option.
52
53
Select dummy.rpd as your original rpd and Sandeep.rpd as the modified rpd
and click next >>
Step 3: Define Merge Strategy
54
55
56
57
58
59