Interview Questions and Answers

What is metadata?

The database repository where definitions of all MicroStrategy objects are stored. Metadata could be hosted on most databases. In simple words, Metadata could be considered as the heart of MicroStrategy environment.

MicroStrategy metadata contains datawarehouse connection information, project settings and microstrategy object definitions.

What is the Difference b/w Microstrategy and cognos Reporting Tool ?
·         cognosreportnet is only a web-based product but microstrategy is a web-based as well as desktop based.
·         Micro stratgy is ROLAP &Cognos is MOLAP .
·         Micro stratgyretrives does not support the cube dataset so we have only current data directly from data source, whereas in Cognos it is stored in form of cubes &does`nt require database connectivity.
·         Micro stategy has only one metadata repository which is centraliased repository.But Cognos has two metadata repository.
What are the tasks that you can perform with the MicroStrategy Architect?
Initially populate the metadata with project definition and parameters, schema objects and create schema objects

What is difference between 2 ,3 , 4 tier connection?
In 2 tier architecture, the MicroStrategy Desktop itself queries aganist the Data warehouse and the Metadata with out the Intermediate tier of the Intelligence server.
The 3 Tier architecture comprises a Intelligence server between MicroStrategy Desktop and the data Warehouse and the Metadata.
The 4 tier architecture is same as 3 tier except it has a additional component of MicroStratey Web.
Intelligence Server is the architectural foundation of the MicroStrategy platform. It serves as a central point for the MicroStrategy metadata so you can manage thousands of end user requests.
You are very limited in what you can do with a 2-tier architecture. Things like clustering, mobile, distribution services, report services, OLAP services, scheduling, governing, I cubes, project administration are only available via Intelligence Server.

When a change is made in 2 tier – is it reflected in 3 tier?

No it is not reflected. Following are the methods by which we can reflect it in 3 tier.
·    Update the schema in 2-tier. Restart the MicroStrategy Intelligence Server. Recommended method by MSTR.
·         Update the schema in 2-tier and reload the project from the Project Monitor.


What is heterogeneous mapping?
There are no restrictions on the names for the columns used in the expressions of a given attribute form. Heterogeneous mapping allows the engine to perform joins on unlike column names. If the user defines more than one expression for a given form, heterogeneous mapping will automatically take place when tables and column names require it.
For example, because different source systems store Date information in various contexts, a data warehouse may have multiple columns in different tables which all represent the concept of 'Date'. The ID form of the attribute 'Date' may contain two expressions. The DATE_ID column occurs in the LU_DATE table as well as in two other tables. The elements in these columns correspond to elements in the ORDER_DATE column in the order_detail and ORDER_FACT tables.
Heterogeneous Mapping of Attribute Forms.


Why do we go for parent child relationship?
While establishing the relationship between attributes one can either look from business hierarchy point of view and the attribute higher in the hierarchy becomes parent of the attribute lower in the hierarchy. Parent and Child follow a one-to-many relationship. Example Time hierarchy Year > Month > Date. Here Year would be parent of Month and Date and Month parent of Date.

We can also identify Parent-Child relationship from database design point of view. Here in a table the Primary Key uniquely identifies the other columns in the table and hence qualifies as child of all the other attributes from the table, in the same ways as a child in real world identifies his father (at least the biological one).
What is a compound attribute?
A compound attribute has its value determined by an expression which combines two or more columns in a database to create a new column

What are different kinds of objects in Microstrategy?
Configuration Objects: Configuration objects are MicroStrategy objects which can be re used in multiple projects and they appear in the system layer. Ex: Database Instances, Users, Login ID's, Schedules
Schema Objects: The building block of BI. Schema objects are directly mapped to a column or columns in the database. Attributes, Facts, Functions & Operators, Hierarchies, Partition Mappings, Tables & Transformations
Public Objects: Objects that generate analytical data and are built on other schema objects or public objects. Also called as application objects. Ex: Consolidation, Custom Groups, Drill Maps, Reports, Documents, Filters, Prompts, Metrics, Templates and Searches
How to create a conditional attribute in MicroStrategy Desktop

A user may want to create an attribute with an alternating expression depending on a certain condition, a conditional attribute. This condition may be implemented through an ApplySimple statement such as the following:

Types of Attributes

Simple
A simple attribute is made up of one or more expressions. With a simple attribute definition, you can define an attribute as a column, constant, or simple expression.
Implicit Attributes
An implicit attribute is a virtual or constant attribute that does not physically exist in the database because it is created at the application level. The implicit attribute has its own expression.
Derived Attributes
A derived attribute has its value determined by an expression which combines two or more columns in a database to create a new column.
Compound Key Attribute
A compound key attribute is an attribute whose primary key is made up by the combination of two or more columns. 

What is a Implicit Attribute?
An implicit attribute is a virtual or constant attribute that does not physically exist in the database because it is created at the application level. The implicit attribute has its own expression.

 What is a joint child?

A joint child is Microstrategy way of handling Composite Keys. Composite keys are constituted of two or more columns which together act as unique identifier. To handle this case in Microstrategy we make this set of columns, constituting composite keys, as joint child.

What are attribute roles?
A user defines two attributes that have the same definition but play different roles in the business model. In this example, attribute Origin Airport and Destination Airport are defined using the same Lookup Table and Column (Airport_ID). Both attributes share the same forms, or information about them (Description, Location, etc.). In the fact table, however, a separate column exists for each of their roles (Origin_Airport_ID and Destination_Airport_ID).

When should attribute relationships be modeled as separate attributes in a parent-child relationship and when should they be modeled as forms of the same attribute?

It  is preferable to use separate attributes that are related hierarchically (that is, parent-child relationships) for the following reasons:
Attributes that exist in a hierarchical relationship can appear independently of each other on a report. If 'Item' and 'Item Category' are modeled as separate attributes, reports may then be designed to report on individual items or whole categories. If 'Item Category' is considered a description (form) of 'Item', it becomes impossible to report on 'Item Category'.
Attribute forms are not available as metric dimensionality settings. In order to aggregate data at a particular attribute level, that attribute must exist as an attribute. If the attribute is modeled as an attribute form instead, it is possible to aggregate only at the level of the attribute containing the form.

Attribute forms are not appropriate under the following circumstances:
·         When the attribute must be used as an aggregation level (metric dimensionality). For example, customer and state: if a user wishes to calculate sales totals by the states in which customers live, state should be a separate attribute as a parent (or grandparent, and so on) of customer.
·         When the attributes exist in a one-to-many or many-to-many relationship. For example, customer status: Presumably, each status will apply to several customers. Modeling status as a form of customer makes it always subordinate to customer, which may impose unnecessary limits on reporting options.
      
How are the drilling options for an attribute decided?
Based on relation between attributes, hierarchies and their drilling configuration

What are the two types of Hierarchies?
System hierarchy: It contains all the project attributes and its available browse paths and is based on relation between attributes.
User defined Hierarchy: Custom grouping of attributes and define their browse paths.

Comments