Saturday, March 1, 2014

OBIEE Interview Questions and Answers

” Define repository in terms of Siebel Analytics
o Repository stores the Meta data information. Siebel repository is a file system, extension of the repository file. rpd.
o With Siebel Analytics Server, all the rules needed for security, data modeling, aggregate navigation, caching, and connectivity is stored in metadata repositories.
o Each metadata repository can store multiple business models. Siebel Analytics Server can access multiple repositories

” What is the end to end life cycle of Siebel Analytics?
o Siebel Analytics life cycle
1. Gather Business Requirements
2. Identify source systems
3. Design ETL to load to a DW if source data doesn’t exist.
4. Build a repository
5. Build dashboard or use answers for reporting.
6. Define security (LDAP or External table…)
7. Based on performance, decide on aggregations and/or caching mechanism.
8. Testing and QA.

” What were you schemas? How does Siebel Architecture works? Explain the three layers. How do you import sources?
o There are five parts of Siebel Architecture.
1. Clients
2. Siebel analytics Web Server
3. Siebel analytics server
4. Siebel analytics scheduler
5. Data sources
o Metadata that represents the analytical Model Is created using the Siebel Analytics Administration tool.
o Repository divided into three layer
1. Physical – Represents the data Sources
2. Business – models the Data sources into Facts And Dimension
3. Presentation – Specifies the users view of the model; rendered in Siebel answer

” If you have 3 facts and 4 dimension and you need to join would you recommend joining fact with fact? If no than what is the option? Why you won’t join fact to fact?
o In the BMM layer, create one logical table (fact) and add the 3 fact table as logical table source

” What is connection pool and how many connection pools did you have in your last project?
o connection pool is needed for every physical database.
o It contains information about the connection to the database, not the database itself.
o Can use either shared user accounts or can use pass-through accounts -Use: USER and PASSWORD for pass through .
o We can have multiple connection pools for each group to avoid waiting

” Purpose of Alias Tables
o An Alias table (Alias) is a physical table with the type of Alias. It is a reference to a logical table source, and inherits all its column definitions and some properties from the logical table source. A logical table source shows how the logical objects are mapped to the physical layer and can be mapped to physical tables, stored procedures, and select statements. An alias table can be a reference to any of these logical table source types.
o Alias Tables can be an important part of designing a physical layer. The following is a list of the main reasons to create an alias table:
” To reuse an existing table more than once in your physical layer (without having to import it several times)
” To set up multiple alias tables, each with different keys, names, or joins
o To help you design sophisticated star or snowflake structures in the business model layer. Alias tables are critical in the process of converting ER Schemas to Dimensional Schemas.

” How do you define the relationship between facts and dimensions in BMM layer?
o Using complex join ,we can define relationship between facts and dimensions in BMM layer.

” What is time series wizard? When and how do you use it?
o We can do comparison for certain measures ( revenue., sales etc.. ) for current year vs. previous year, we can do for month or week and day also
o Identify the time periods need to be compared and then period table keys to the previous time period.
o The period table needs to contain a column that will contain “Year Ago” information.
o The fact tables needs to have year ago totals.
o To use the “Time series wizard”. After creating your business model right click the business model and click on “Time Series Wizard”.
o The Time Series Wizard prompts you to create names for the comparison measures that it adds to the business model.
o The Time Series Wizard prompts you to select the period table used for the comparison measures
o Select the column in the period table that provides the key to the comparison period. This column would be the column containing “Year Ago” information in the period table.
o Select the measures you want to compare and then Select the calculations you want to generate. For ex: Measure: Total Dollars and calculations are Change and Percent change.
o Once the Time series wizard is run the output will be:
a) Aliases for the fact tables (in the physical layer)
b) Joins between period table and alias fact tables
c) Comparison measures
d) Logical table sources
o In the General tab of the Logical table source etc you can find “Generated by Time Series Wizard” in the description section
o Then you can add these comparison measures to the presentation layer for your reports.
o Ex: Total sales of current qtr vs. previous qtr vs. same qtr year ago
” Did you create any new logical column in BMM layer, how?
o Yes. We can create new logical column in BMM layer.
o Example: Right click on fact table -new logical column-give name for new logical column like Total cost.
o Now in fact table source, we have one option column mapping, in that we can do all calculation for that new column.

” Can you use physical join in BMM layer?
o yes we can use physical join in BMM layer. when there is SCD type 2 we need complex join in BMM layer.

” Can you use outer join in BMM layer?
o yes we can. When we are doing complex join in BMM layer, there is one option type, outer join is there.

” What are other ways of improving summary query reports other than Aggregate Navigation and Cache Management
” Indexes
” Join algorithm
” Mat/view query rewrite
” Web proper report design its optimal by making sure that it is not getting any addition column or rows

” What is level-base metrics?
o Level-base metrics means, having a measure pinned at a certain level of the dimension. For Example, if you have a measure called “Dollars”, you can create a “Level Based Measure” called “Yearly Dollars” which (you guessed it) is Dollars for a Year. This measure will always return the value for the year even if you drill down to a lower level like quarter, month… etc. To create a level based measure, create a new logical column based on the original measure (like Dollars 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 Year in Time Dim
o A LBM is a metric that is defined for a specific level or intersection of levels.
o Monthly Total Sales or Quarterly Sales are the examples.
o You can compare monthly sales with quarterly sales. You can compare customer orders this quarter to orders this year

” What is logging level? Where can you set logging levels?
o You can enable logging level for individual users; you cannot configure a logging level for a group.
o Set the logging level based on the amount of logging you want to do. In normal operations, logging is generally disabled (the logging level is set to 0). If you decide to enable logging, choose a logging
o level of 1 or 2. These two levels are designed for use by Siebel Analytics Server administrators.
o Set Logging Level
1. In the Administration Tool, select Manage > Security.
2. The Security Manager dialog box appears.
3. Double-click the user’s user ID.
4. The User dialog box appears.
5. Set the logging level by clicking the Up or Down arrows next to the Logging Level field

” What is variable in Siebel?
o You can use variables in a repository to streamline administrative tasks and modify metadata content dynamically to adjust to a changing data environment. The Administration Tool includes a Variable Manager for defining variables

” What is system variable and non system variable?
o System variables
o System variables are session variables that the Siebel Analytics Server and Siebel Analytics Web use for specific purposes. System variables have reserved names, which cannot be used for other kinds of variables (such as static or dynamic repository variables, or for nonsystem session variables).
o When using these variables in the Web,preface their names with NQ_SESSION. For example, to filter a column on the value of the variable LOGLEVEL set the filter to the Variable NQ_SESSION.LOGLEVEL.
o Nonsystem variables.
o A common use for nonsystem session variables is setting user filters. For example, you could define a nonsystem variable called SalesRegion that would be initialized to the name of the user.s sales region. You could then set a security filter for all members of a group that would allow them to see only data pertinent to their region.
o When using these variables in the Web, preface their names with NQ_SESSION. For example, to filter a column on the value of the variable SalesRegion set the filter to the Variable NQ_SESSION.SalesRegion.

” What are different types of variables? Explain each.
o There are two classes of variables:
1. Repository variables
2. Session variables.
Repository variables.
A repository variable has a single value at any point in time. There are two types of repository variables:
static : This value persists, and does not change until a Siebel Analytics Server administrator decides to change it.
dynamic:The values are refreshed by data returned from queries. When defining a dynamic repository variable, you will create an initialization block or use a preexisting one that contains a SQL query. You will also set up a schedule that the Siebel Analytics Server will follow to execute the query and periodically refresh the value of the variable.
Session Variables
Session variables are created and assigned a value when each user logs on. There are two types of session variables:

” What are the cache management? Name all of them and their uses. For Event polling table do u need the table in your physical layer?
o Monitoring and managing the cashe is cache management.There are three ways to do that.
o Disable caching for the system.(INI NQ config file), Cashe persistence time for specified physical tables and Setting event polling table.
o Disable caching for the system.(INI NQ config file :
You can disable caching for the whole system by setting the ENABLE parameter to NO in the NQSConfig.INI file and restarting the Siebel Analytics Server. Disabling caching stops all new cache entries and stops any new queries from using the existing cache. Disabling caching allows you to enable it at a later time without losing any entries already stored in the cache.
o Cashe persistence time for specified physical tables :
You can specify a cachable attribute for each physical table; that is, if queries involving the specified table can be added to the cache to answer future queries. To enable caching for a particular physical table, select the table in the Physical layer of the Administration Tool and select the option Make table cachable in the General tab of the Physical Table properties dialog box. You can also use the Cache Persistence Time settings to specify how long the entries for this table should persist in the query cache. This is useful for OLTP data sources and other data sources that are updated frequently, potentially down to every few seconds.
o Setting event polling table :
Siebel Analytics Server event polling tables store information about updates in the underlying databases. An application (such as an application that loads data into a data mart) could be configured to add rows to an event polling table each time a database table is updated. The Analytics server polls this table at set intervals and invalidates any cache entries corresponding to the updated tables.
o For event polling table ,It is a standalone table and doesn’t require to be joined with other tables in the physical layer

” What is Authentication? How many types of authentication.
o Authentication is the process by which a system verifies, through the use of a user ID and password, that a user has the necessary permissions and authorizations to log in and access data. The Siebel Analytics Server authenticates each connection request it receives.
” Operaing system autentication
” External table authentication
” Database authentication
” LDAP authentication

” What is object level security?
o There are two types of object level security: Repository level and Web level
o Repository level : In presention layar we can set Repository level security by giving permission or deny permission to users/groups to see particular table or column.
o web level:thisprovides security for objects stored in the siebel anlytics web catlog,such as dashboards,dashboards pages,folder,and reportsyou can only view the objects for which you are authorized. For example,a mid level manager may not be granted access to a dashboard containing summary information for an entire department.

” What is data level security?
o This controls the type an amount of data that you can see in a report.When multiple users run the same report the results that are returned to each depend on their access rights and roles in the organization.For example a sales vice president sees results for alll regions, while a sales representative for a particular region sees onlu datafor that region.

” What is the difference between Data Level Security and Object Level Security?
o Data level security controls the type and amount of data that you can see in a reports.Objectlevel security provides security for objects stored in the siebel analytics web catlog, like dashboards,dashboards pages,folder,and reports.

” How do you implement security using External Tables and LDAP?
o Instead of storing user IDs and passwords in a Siebel Analytics Server repository, you can maintain lists of users and their passwords in an external database table and use this table for authentication purposes. The external database table contains user IDs and passwords, and could contain other information, including group membership and display names used for Siebel Analytics Web users. The table could also contain the names of specific database catalogs or schemas to use for each user when querying data
o Instead of storing user IDs and passwords in a Siebel Analytics Server repository, you can have the Siebel Analytics Server pass the user ID and password entered by the user to an LDAP(Lightweight Directory Access Protocol ) server for authentication. The server uses clear text passwords in LDAP authentication. Make sure your LDAP servers are set up to allow this.

No comments:

Post a Comment

Best Blogger TipsGet Flower Effect