Search This Blog

Showing posts with label interview questions. Show all posts
Showing posts with label interview questions. Show all posts

Saturday, April 16, 2011

Enhance Business Intelligence Performance

Hi All,

In any Business Intelligence Implementation, the key factor is the performance. Performance factor always plays a key role in User accepting or liking the application.
We should do everything possible to enhance the performance and here are some tips some of which are very generic and can be used in any BI Implementation.
From a solution perspective:
1. Use of Datawarehouse: Though a datawarehouse is not compulsory for any BI Implementation, we cannot simply think about a BI solution without a datawarehouse because of the advantages it offers in terms of performance and simplicity. This is important for small implementations who sometimes neglect and underestimate the use of datawarehouse.
From a BI Tool Perspective:
1. For every tool it is important to reduce the size of the application by removing the unnecessary objects.
2. Try to create different database connections for different set of users based on the priority.
3. Try to create a seperate database connection for populating any session level variables.
4. Try to make the best use of system Cache. If the tool allows to cache the results of the queries, use it and if possible pre populate the queries which are very frequent and used mostly.
5. Minimise the calculations happening at the BI level by pre calculating them in datawarehouse.
From a database perspective:
1. The most important thing is to perform every possible calculation you can do in database. We very frequently neglect this saying this is a small thing and cal be calculated or performed at BI level. We should avoid this and if something is possible in ETL or database, do it here even it cost you adding a few extra columns or tables.
2. If you can create a perfect star models, nothing like that.
3. Try to use the database techniques like Partitioning and indexing to enhance the performance of database queries.

There may be several other tips and techniques which we can follow to improve performance and if you have any, please feel free to share.
Till next time.

Regards
Manohar Rana

Monday, December 15, 2008

Essbase Interview Questions

Hi,

You may like to read my earlier post Hyperion Essbase Interview Questions.

Today I will be posting few more questions on Hyperion Essbase more from an Administrative perspective.
The questions and answers have been designed by me and are not copied from anywhere.

Que:1 What are LRO's( Linked Reporting Objects)?
Answer: They are specific objects like files, cell notes or URL's associated with specific data cells of Essbase database. You can link multiple objects to a single data cell. These linked objects are stored in the server. These LRO's can be exported or imported with the database for backup and migtarion activities.

Que:2 What are the specified roles other than Aministrator to view sessions, disconnect sessions or kill users requests for a particular application?
Answer: You should have the role of Application manager for the specified application.

Que:3 What are the three options specified in Username and Password management under security tab in Essbase server proprties.
Answer: 1. Login attempts allowed before username is disabled.
2. Number of inactive days before username is diabled.
3. Number of days before user must change password.

Que:4 Why do objects gets locked and when does this happens?
Answer: Objects gets locked to prevent users to make simultaneous and conflicting changes to Essbase database objects. By default whenever an object is accessed through Aministrative services console or Excel spreadsheet add-in, it gets locked.

Que: 5 I have created an application with one database in Essbase at test environment and now needs to copy the entire application with all security permissions to the production server which is not connected to the test server. How can I do that?
Answer: You can acheive this using migration wizard to migrate an application to a text file which you can take physically to the production server.
To know how you can do that, take a look at this post Essbase Application Migration.

Que:6 From the above question, When I migrated the application to the production server I do not see any data in the Essbase database. What has gone wrong and how to correct this?
Answer: Nothing has gone wrong. Migration utility does not migrate the actual data. If you want to copy the exact data from the test machine, get it exported using export utility and import it on production machine.

Que:7 Referring to the above question, Can I still do this if my production server and test server are two different operation systems. Explain.
Answer: While exporting the database, you can write the database data to an ASCII text file which enables you to load data on different platforms.

Que:8 How can we backup an aggregate storage database?
Answer: To back up an aggregate storage database, copy the application directory ARBORPATH/app/appname.

Que:9 How does Essbase recover from a database crash?
Answer: After a database crash or server interruption, Essbase automatically recovers a database after rolling back the transactions that were active at that time.

Que:10 How can you make a Max L script run at a specified time?
Answer: MaxL scripts can be called from a BAT file which is used for scheduling.

More questions will be coming soon...

Wednesday, September 3, 2008

Hyperion Essbase Interview Questions

Hi,
You may also like to read Essbase Interview Questions.

I have got this request from someone to post some FAQ's on Hyperion Essbase. Please do not just rely on these questions only. I recommend you read the Essbase documentation and get some hands on to understand the basics. The questions below shold guide you to narrow down your search for the topics you should focus on.

Que 1: What are the two storage options available in Essbase and what are the differences?
Ans: ASO( Aggregate Storage Option) - Used for 1. If we have large number of dimensions(generally more than 10) 2. Most of the dimensions are sparse 3. We cannot write back in ASO. I heard recently that ASO will also have the writeback capability. I don't remember.
BSO (Block Storage Option)- 1. Dimensions are less and dense(recommended values for no of dim are between 4 and 8) . 2. We can write back hence much suited for planning applications.
Financial applications are generally dense structures and normal analytical cubes are sparse. Here we also need to understand what are these dense and sparse members. When the intersections or cells of two dimensions mostly contains a value it is dense. Say for example we have two dimensions period(Month or quarter) and region and we are calculation the sales amount. Generally maximum regions(countries, cities) will have some sales value for a particular month or quarter. Hence we can say that our period dimensions would be dense. But now instead of period, consider another dimension products. Now there are some products which are sold in only some particular regions hence for them there will be no values in other regions or will have very low percentage of data values hence the structure will become sparse.
Now the question arises what is the use of calling them dense or sparse. What difference does it make. Do some research and try to find the answer.


Que 2: Can we build dimensions directly from data sources without using rule files.
Ans: No.

Que 3: When do we generally use build rules files?
Ans: To automate the process of creating dimensions with thousands of members.

Que 4: What are the three primary build methods for building dimensions?
Ans: 1. Generation references
2. level references
3. Parent-Child references.

Que 5: In what case we can define generation 1 to a feild in generation build method.
Ans: We cannot define that as Generation 1 is not valid.

Que 6: Suppose we have assigned Generation 2 and Generation 4 as of now and think of adding generation 3 later some time. Can we build the dimension.
Ans: No. If gen 2 and gen 4 exists, we must assign gen 3.

Que 7: Can we create more than 2 dimensions using only one build rule file.
Ans: Yes, we can do that but it is recommended to use seperate rule file for each dimension.

Que 8: What is UDA( user defined attributes). How are they different than Aliases.
Ans: UDA represents the class of the members. Aliases are just another names of the members. both are different and has different usage.

Que 9: Can we query a member for its UDA in a calculation script.
Ans: Yes. You can query a member for its UDA in a calculation script.

Que 10: How does UDA's impact database size?
Ans: Absolutely no impact as UDA's do not require additional storage space.

Que 11: What is the difference between UDA's and Attribute dimensions?
Ans : Attribute dimensions provides more flexibility than UDA's. Attribute calculations dimensions which include five members with the default names sum, count, min, max and avg are automatically created for the attribute dimensions and are calculate dynamically.

Que 12: How does Attribute dimensions and UDA's impact batch calculation performance?
Ans: UDA's- No Impact as they do not perform any inherent calculations.
Attribute dim- No Impact as they perform only dynamic calculations.

Que 13: How can we display UDA's in reports? How do they impact report report performance.
Ans: UDA's values are never displayed in the reports and hence do not impact report performance.

Que 14: How does Attribute dim impact report performance?
Ans: They highly impact the report performance as the attributes are calculated dynamically when referenced in the report. For very large number of att dim displayed in the report, the performance could drastically reduce.

Que 15: While loading the data, you have applied both the selection criteria as well as rejection criteria to a same record. What will be the outcome.
Ans: Thw record will be rejected.

Que 16: How is data stored in the Essbase database?
Ans: Essbase is an file based database where the data is stored in PAG files of 2 GB each and grows sequentially.

Que 17: Can we have multiple databases in one single application?
Ans: Yes. But only one database per application is recommended.

Que 18: Can we have one ASO database and one BSO database in one single application. If yes, how and If No, why.
Ans 18. No. Because we define ASO or BSO option while creating the appication and not database. Hence if the application is ASO, the databases it contains will be that type only.

Que 19: What are the file extensions for an outline, rule file and a calc script.
Ans: .OTL, .RUL and .CSC

Que 20: What is the role of provider services.
Ans: To communicate between Essbase and Microsoft office tools.

Que 21: What is an alternative to create metaoutline, rule file and load data.
Answer: Integration services and in version 11, we have Essbase studio.

Que 22: Can we start and stop an application individually. How ca this be used to increase performance.
Ans: Yes. We can manage our server resources by starting only the applications which receive heavy user traffic. When an application is started, all associated atabases are brought to the memory.

Que 23: We have created an application as unicode mode. Can we change it later to non-unicode mode.
Ans: No.

Que 24: How can I migrate an application from my test environment to the production environment. Can I still do this if my test environment is a windows one and my production env is UNIX one. Also can I still do it if my test env and prod env versions are different.
Ans: Hyperion Administrative services console provides a migration utility to do this but onluy the application, database objects are migrated and no data is transferred. the answers to other two questions are Yes.

Que 25: A customer wants to run two instances of an Essbase server on a same machine to have both test env and Development env on the same server. Can he do that?
Ans: Yes. We can have multiple instances of an Essbase server on a single machine and there will be dfferent sets of windows services for all these instances.

Que: 26 suppose I have a dimension A with members B and C and I do not want B and C to roll up to A. how can I do this.
Ans: Using (~) exclude from consolidation operator.

Que 27: What does never consolidate operator(^) do?
Ans: It prevents members from being consolidate across any dimension.

Que 28: Can we have multiple metaoutlines based on one OLAP model in Integration services?
Ans: Yes

Que 29: Can we have an metaoutline based on two different OLAp models.
Ans: No.

Que 30: What is hybrid analysis?
Ans: Lower level members and associated data remains in relational database where as upper level members and associated data resides in Essbase database.

Que 31: Why top-down calculation less efficient than a bottom-up calculation?Being less efficient, why do we use them.
Ans: In the process it calculates more blocks than is necessary. Sometimes it is necessary to perform top-down calculation to get the correct calculation results.

Que 32: On what basis you will decide to invoke a serial or parellel calculation method.
Ans: If we have a single processor, we will use serial calculation but if we have multiple processors we can break the task into threads and make them run on different processors.

Que 33: What is block locking system?
Ans: Analytic services(or Essbase Services) locks the block and all other blocks which contain the childs of that block while calculating this block is block locking system.

Que 34: What are the types of partitioning options available in Essbase?
Ans: 1. Replicated partition. 2. Transparent partition 3. Linked partition.

Que 35: Dynamic calc decreases the retreival time and increases batch database calculation time. How true is the statement?
Ans: The statement should be just opposite. As dynamic calc members are calculated when requested, the retreival time should increase.

Que 36: A customer has a cube with 13 dimensions and the performance was fine. Now they have added two more dimensions in the existing cube and the performance becomes very very slow. Customer said logically nothing wrong with the two new dimensions they have added. What could be the reason for slowdown.
Ans: Even I dont have any clue. I experienced this few days back with a customer. If you can throw some light on this, please post your answer.

If you have more questions with answers, please post them so that all of us can benefit.

Also let me know your views and suggestions.

Manohar Rana

Tuesday, July 15, 2008

Business Intelligence Interview Questions

I have got these queries from someone and I would like to share my views. I dont claim my answers to be correct and hence wherever you dont agree, please let me know and share your views.
If you have any questions or comments, please post them.
Question:How you generally Approach to ur Analytics Project?
Answer: Any project should start from defining the scope of the project and the approach
should be not to deviate from the scope.
Then the project should be functionally divided into smaller modules generally done by
project managers alongwith technical and functional leads.
The functional leads then decide on majorly three things:
1. According to the defined scope of the project they start gathering requirements while
interacting with the clients.
2. They had a discussion with the technical leads and try to reach a solution.
3. Technical leads decides what schemas to create and what requirements are going to
fulfill by that schema.
Technical leads discuss all this with the developers and try to close requirements.
Simultaneously testing and deployment is planned in a phased manner.

Question: How we are going to decide which schema we are going to implement in the data warehouse?
Answer: One way is what is mentioned in Question above.
If you ask me to blindly create schemas for the warehouse without knowing any requirements,
I will simply first divide the schemas on the basis of functional areas of an Organisation
which are similar to the modules in an ERP like sales, finance, purchase, inventory,
production, HR etc.
I will broadly describe the expected analysis an organisation would like to do in every
module. I think 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.

Question: 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. I have experienced that if you are not able to create
the report in exactly the way they used to see, they will keep asking for the changes. Your
approach should be to first show them what they want to see and then add more information
in the report.

Question: 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 analysing and digging deep into the
matter.

There are more questions which I will try to answer later.
The questions are very specific to OBIEE and I dont have much experience in that. Hence you may not agree to my answers, but wherever please post a comment and let me know too.


Question: How analytics Process Your Request When you Create your Requests.
Answer: If the Question means how does Oracle BI Analytics Server processes the user requests, the answer is- 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.



Question: From where u Get the Logical Query of your Request?
Answer: The logical SQL generated by the server can be viewed in BI Answers. If I have not understood the question, Please raise your voice.



Question: 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.


Question: 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- Not sure. I understand this filter will have impact on across the application but I really dont understand where and how it can be user. I heard of global variables but not global filters.


How to make the Delivery Profilers Work?



When we are Use SA System how Does SA Server understand that It needs to use it For Getting

the User Profile information?



Where to Configure the Scheduler?
Answer: I am not sure if Iam correct but we configure the OBIEE schedular in database.



Question: How to hide Certain Columns From a User?
Answer: Application access level security- Do not add the column in the report, Do not add the column in the presentation layer.




Question:How can we Enable Drills in a Given Column Data?
Answer: To enable Drill down for a column, it should be included in the hirarchy in OBIEE. Hyperion IR has a drill anywhere feature where dont have to define and can drill to any available column.



Question: Is Drill Down Possible without the attribute being a Part of a Hierarchical Dimension?
Answer: No


Question: How do u Conditional Format.?
Answer: while creating a chat in BI Answers, you can define the conditions and can apply colour formatting.



Question: What is Guided Navigation?
Answer: I think it is just the arrangement of hyperlinks to guide the user to navigate between the reports to do the analysis.

How is Webcat File Deployed Across Environment?



Question: 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.


Question: Online/Offline Mode how it Impact in Dev 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.


Questions: Explan me the Schema in Your Last Project???????



DB What happens if u Reconcile/Sync Both????