Tuesday 29 March 2016

Physical Layer

Handson01: Physical Layer 

  1. What is connection pool
    1.  Connection pool is a physical layer object ,is useful to store data base credentials like database name, username, password..etc.
    2.  OBIEE oracle BI Server contacts data base using connection pool
  2. How to import views/materialized views?
    1.  While importing we need to enable views option
  3. What is the isolation level in a connection pool
    1. It applies only For ODBC and DB2 gateways only. The value sets the transaction isolation level on each connection to the back-end database. The isolation level setting controls the default transaction locking behavior for all statements issued by a connection. Only one option can be set at a time. It remains set for that connection until it is explicitly changed.
    2. The following options are available:
      1. Dirty read. Implements dirty read (isolation level 0 locking). This is the least restrictive isolation level. When this option is set, it is possible to read uncommitted or dirty data, change values in the data, and have rows appear or disappear in the data set before the end of the transaction. Dirty data is data that needs to be cleaned before being queried to obtain correct results (for example, duplicate records, records with inconsistent naming conventions, or records with incompatible data types).
      2. Committed read. Specifies that shared locks are held while the data is read to avoid dirty reads. However, the data can be changed before the end of the transaction, resulting in non repeatable reads or phantom data.
      3. Repeatable read. Places locks on all data that is used in a query, preventing other users from updating the data. However, new phantom rows can be inserted into the data set by another user and are included in later reads in the current transaction.
      4. Serializable. Places a range lock on the data set, preventing other users from updating or inserting rows into the data set until the transaction is complete. This is the most restrictive of the four isolation levels. Because concurrency is lower, use this option only if necessary.
  4. How many connection Pools you used in your project
    1. It is a general question ,there is no fixed answer, however in each project we will have minimum three connection pools
      1. One for importing tables  and execute reports
      2. One for execute session initialization block sql queries
      3. One for usage tracking purpose
    2. Recommended number is between 2 to 10.but justification is important.
  5. To get data of another schema ,then what we need to enable in connection pool
    1. Required fully qualified names
    2. DB permissions
  6. Can we create multiple connection pools under one database object
    1.  Yes, we can
  7. What is the difference between Duplicate and Alias in physical layer
    1.  We will use Alias in physical layer to resolve below problems
      1. Self Join
      2. To maintain naming Standards in physical layer
      3. Resolve loops or closed paths
    2. Duplicate normally used in Physical layer  to create a duplicate copy of existing Select table (Opaque View)  /stored Procedure object
  8. How many types of Joins are there in Physical layer?
    1. Two types
      1.  Foreign Key join
        1. Equivalent to Equi join
        2. Accepts only = operator
        3. Most used join in physical layer
      2.  Complex Join
        1. Equivalent to Non Equi join
        2. Accepts all operators like (=,<>,=>,,=…….etc)
        3. Less used join in Physical layer
  9. Can we create self join
    1. By using Alias table , we can create self join.
  10. Can we create outer join in physical layer.
    1. In Physical Layer Outer join not possible ,however we can create outer join in BMM layer .
  11. How to remove unused objects from physical layer
    1.  It will remove objects, which we did not use in BMM layer
    2. Tools menu Utilities | Remove unused objects from physical layer
  12. How to synchronize physical layer objects
    1. It is useful to synchronize RPD metadata with DB metadata
    2. Tools | Utilities Update Physical Layer
  13. What is complex join, in which scenario we use it.
    1.  If foreign key is not possible then we will go for complex join. For example between emp and salgrade we will use complex join
    2. In place of non equi join ,complex join is used
  14. In foreign key join can we use other than equal to operator
    1. No
  15. What is Opaque view
    1. A SQL query or select statement is called as opaque view.
    2. If we need a new table then go for physical table (or) materialized view. In worst situation go for opaque view.
    3. Opaque views are not supported by non relational db.(example MS Excel ,XML ,ESSBASE …etc)
    4. If we need to call data base function then we have to go for Opaque View .
  16. Is deploying opaque is mandatory?
    1. No. but it is recommended due to below reason
    2.  Without deploying view into database, if we use opaque view in reports then oracle BI server needs to create complex queries. To avoid complex queries oracle recommended to deploy each and every opaque view into database.
  17. When automatic joins will be created in physical layer.
    1.  If we have primary key and foreign Key relation ship in database level and while importing if we enable foreign key options then automatic joins will be created .
  18. What is Alias
    1. A virtual physical table (or) reference of physical table is called as alias.
    2. On one physical table we can create ‘n’ no. of aliases.
    3.  Whatever changes occurred in physical table that will immediately reflect in alias (except Key definitions)
    4. It is mainly useful to resolve loops
  19. Can we create or delete a column from Alias.
    1. No
  20. How to eliminate Circular Join or loop or closed path.
    1. By Using Alias

8 comments:

  1. What is the difference between Alias and Duplicate in Physical Layer

    ReplyDelete
    Replies
    1. Alias:

      1. Alias is useful to get one more copy of table when the table type is physical table

      2. Alias is useful to rename physical layer objects.
      3. Creating self joins
      4. Avoiding closed paths.


      Alias is useful

      Duplicate:

      Duplicate is useful to get one more copy of table when the table type is select/stored proc

      Delete
  2. How to decide The Maximum Number of connections in connection Pool ?

    ReplyDelete
    Replies
    1. This value should be determined by the database make and model and the configuration of the hardware for the computer on which the database runs, as well as the number of concurrent users who require access.

      The default is 10.

      Delete
  3. This comment has been removed by the author.

    ReplyDelete
  4. What is level based metrics?

    ReplyDelete
  5. What is single LTS and multiple LTS?

    ReplyDelete
  6. How to call user defined functions into OBIEE

    ReplyDelete