QV

18
Qustion.1 Explain Qlikview architecture? Answer: QlikView deployments have three main infrastructure components: 1.QlikView Developer : Is a Windows-based desktop tool that is used by designers and developers to create 1) a data extract and transformation model and 2) to create the graphical user interface (or presentation layer). 2.QlikView Server (QVS) : Handles the communication between clients and the QlikView applications. It loads QlikView applications into memory and calculates and presents user selections in real time. 3.QlikView Publisher: Loads data from different data sources (oledb/odbc, xml, xls), reduces the QlikView application and distributes to a QVS. Because QlikView Server and Publisher have different roles and handle CPU and memory differently it’s considered a best practice to separate these two components on different servers. Question.2 Set analysis in qlikview ? Answer: Used for set of groups .. mostly used in arrgeted function like sum (year) used sales of current year VS last year. Question.3 What is Synthetic key and how to avoid it in QlikView? Answer: It is undesirable to have multiple common keys across multiple tables in a QlikView data structure. This may cause QlikView to use complex keys (a.k.a. synthetic keys) to generate the connections in the data structure. Synthetic keys are generally resource heavy and may slow down calculations and, in extreme cases, overload anapplication. They also make a document harder to understand and maintain. Thereare some cases where synthetic keys cannot be avoided (e.g. Interval Match tables),but, in general, synthetic keys should always be eliminated, if possible. 1. comment the fileds in load script 2. rename the fileds in load script 3. rename the fileds using UNQUALIFY operator; Question.4 Difference between keep and joins ? Answer Left Keep and Left join gives the same output. The only difference is that Left Keep keeps the Table separate in Data Model, whereas Left join merges the Tables that are joined.

description

qv

Transcript of QV

Qustion.1Explain Qlikview architecture?Answer:QlikView deployments have three main infrastructure components:1.QlikView Developer : Is a Windows-based desktop tool that is used by designers and developers to create1) a data extract and transformation model and2) to create the graphical user interface (or presentation layer).2.QlikView Server (QVS) : Handles the communication between clients and the QlikView applications. It loads QlikView applications into memory and calculates and presents user selections in real time.3.QlikView Publisher: Loads data from different data sources (oledb/odbc, xml, xls), reduces the QlikView application and distributes to a QVS.Because QlikView Server and Publisher have different roles and handle CPU and memory differently its considered a best practice to separate these two components on different servers.Question.2Set analysis in qlikview ?Answer: Used for set of groups .. mostly used in arrgeted function like sum (year) used sales of current year VS last year.Question.3What is Synthetic key and how to avoid it in QlikView?Answer:It is undesirable to have multiple common keys across multiple tables in a QlikView data structure. This may cause QlikView to use complex keys (a.k.a. synthetic keys) to generate the connections in the data structure. Synthetic keys are generally resource heavy and may slow down calculations and, in extreme cases, overload anapplication. They also make a document harder to understand and maintain. Thereare some cases where synthetic keys cannot be avoided (e.g. Interval Match tables),but, in general, synthetic keys should always be eliminated, if possible.1. comment the fileds in load script2. rename the fileds in load script3. rename the fileds using UNQUALIFY operator;Question.4Difference between keep and joins ?AnswerLeft Keep and Left join gives the same output. The only difference is that Left Keep keeps the Table separate in Data Model, whereas Left join merges the Tables that are joined.Question.5Difference between Straight table and pivot table ?Answer:Pivot Table -1) A pivot table is better at grouping: you can easily see which group a specific row belongs to, and a group can have a subtotal.2) You can also display a pivot table like a cross table (one or several horizontal dimensions).3) But when you sort a pivot table, you have to sort it first according to the first dimension, then according to the next, etc. You cannot sort it any way you want. Straight Table-A straight table is better at sorting than a pivot table: you can sort it according to any column.But it is not so good at grouping. Subtotals are not possible, for instance.Question.6Which graph will you used for two years difference sale ?Answer:BAR GraphQuestion.7What is Incremental Load in qlikview?Answer:As BI apps are expected to deal with larger and larger amounts of data the amount of time that it takes to retrieve that data becomes a serious issue. This could be due to shear volume of data or the need for frequent refreshes. Either way, you do not want to be pulling all of the data all of the time. What you want to be able to do is just pull the data that has changed, append to that the data that you stored away previously and then get back to the business of analyzing. This will reduce load on the source database, the network infrastructure and your QlikView server.Question.8Whta is Inline memory in QlikView ?Answer:Create table or add field to table .Question.9what is Set and let in QlikView and difference between it?Answer: SET or a LET statement is often usedTo define the variable. The SET statement is used when you want a variableto hold the string or numeric value that is to the right of the Equal (=) sign.The LET statement is used when you need to evaluate what is to the right of the Equal signe.gset myVar=5*2 the result is 5*2Let myVar=5*2 the result is 10Question.10Explain QlikView Resident Load?Answer:Create a new logical table in QlikView, based on a previously loaded (resident) table.Question.11What is Apply Map (Mapping Tables)?Answer:Sometimes you need to add an extra field to a table to use a combination of fieldsfrom different tables, or you want to add a field to clean up the data structure. Qlik- View has an effective way to add single fields to a table called mapping tables. syntax mapping ( load statement | select statement )applymap( mapname, expr, [ , defaultexpr ] )Question.12What is Dimensions ( What is difference between Expression and Dimension)?Answer:Each data warehouse consists of dimensions and measures. Dimensions allow data analysis from various perspectives. For example, time dimension could show you the breakdown of sales by year, quarter, month, day and hour. Product dimension could help you see which products bring in the most revenue. Supplier dimension could help you choose those business partners who always deliver their goods on time. Customer dimension could help you pick the strategic set of consumers to whom youd like to extend your very special offers.Question.13Explain about Normalized Data?Answer: Well Structured Form of Data, which doesnt have any repetition or redundancy of data. Its a kind of Relational data. Its mainly used in OLTP kind of stuffs Denormalized Data Its a whole bunch of data without any relationship among themselves, with redundancy of data. Its mainly used in OLAP kind of stuffs.Question.14What Is Star Sechma ?Answer:A star schema is the simplest form of dimensional model, in which data is organized into facts and dimensions. A fact is an event that is counted or measured, such as a sale or login. A dimension contains reference information about the fact, such as date, product, or customer. A star schema is diagramed by surrounding each fact table with its associated dimensions table. The output diagram resembles a star.Star Schema Definition : A means of aggregating data based on a set of known dimensions. It stores data multidimensionality in a two dimensional Relational Database Management System (RDBMS), such as Oracle.Question.15What is Snowflaking Schema ?Answer:Snowflake Schema: An extension of the star schema by means of applying additional dimensions to the Dimensions of a star schema in a relational environment. Snowflaking is a form of dimensional modeling; dimensions are stored in multiple relational dimension tables. A snowflake schema is a variation of the star schema. Snowflaking is used to improve the performance of specific queries. The schema is diagramed with each fact surrounded by its associated dimensions as in a star schema, and those dimensions are further related to other dimensions, branching out into a snowflake pattern.Question.16What is Central Link Table?Answer:In the event of multiple fact tables QlikView In-Memory Technology allows us to create a central link table that only contains the existing data combinations. Instead of Joining the tables the event dimensions can be merged (CONCATENATED) in to one central Link table. This link table can then be linked back to the event measures one side andthe dimension tables on the other.Question.17What is binary load ?Answer:Binary load is loading data from another QV file. For example, you have application A.qvw. You can create another application B.qvw with script binary A.qvw. binary file where:file ::= [ path ] filenameExamples:Binary customer.qvw;Binary c:\qv\customer.qvw;The path is the path to the file, either absolute, or relative to the .qvw file containing this script line.Question.18 What is Container ?Answer:A container object can be used to hold multiple charts. You can use a container object to put multiple charts in the same box. All charts will appear in the same window but only one chart will appear active at a given time. You can click the chart title to switch or toggle between charts. A word of advice: Use containers with caution. They form linked objects and might affect the properties of all linked objects.Question.19 What is a synthetic key?Answer:It is a field that contains all possible combinations of common fields among tables.

QlikView Join Related Interview Questions and Answers

Q-1). Define Join and its Types?Ans: Join is used to transform the given data and whenever we are using joins to transform the data it is called Data Merging. Join will have different types as mentioned below:Left Join, Right Join, Inner Join and Join.

Q-2). What is Left Join?Ans: The join and keep prefixes in the QlikView script language can be preceded by the prefix left.If used before join, it specifies that the join between the two tables should be a left join. The resulting table only contains combinations between the two tables with a full data set from the first table. If used before keep, it specifies that the second table should be reduced to its Common intersection with the first table before being stored in QlikView.

Q-3). What is Right Join?Ans: The join and keep prefixes in the QlikView script language can be preceded by the prefix right. If used before join, it specifies that the join between the two tables should be a right join. The resulting table only contains combinations between the two Tables with a full data set from the second table. If used before keep, it specifies that the first table should be reduced to its Common intersection with the second table before being stored in QlikView.

Q-4). What is Inner Join?Ans: The join and keep prefixes in the QlikView script language can be preceded by the prefix inner. If used before join, it specifies that the join between the two tables should be an inner join. The resulting table contains only combinations between the two tables with a full data set from both sides. If used before keep, it specifies that the two tables should be reduced to their common intersection before being stored in QlikView.

Q-5). How does Join Works?Ans: An operation that uses two tables and combines them into one. The records of the table produced are combinations of records in the two original tables, usually such that the two records contributing to any given combination in the produced table have a common value for one or several common fields, a so called natural join. In QlikView, joins can be made in the script, producing logical tables. Inner join, Left join, Right join and Outer join are all possible operations

Q-1). Optimized and unoptimized QVD Load Situations?Ans: Optimized load is much faster and therefore preferable, especially for larger data sets.Optimized loads are possible if no transformations (calculations) are made during the load, and no (almost) filtering is done in a WHERE clause.The only acceptable filter is using function Exists:WHERE Exists(Field)

So for example this load can't be optimized:Load * From ... WHERE Country = 'US'

but this load can:Load * From ... WHERE EXISTS(Country)On the other hand, the only time you want the load not to be optimized, is if you load a Mapping table from a QVD file. In this case, Optimized load doesn't quite work, so you want to make the load non-optimized deliberately.Q-2). Explain 3 tier architecture implementation while deploying QlikView application?Ans:1st Tier - Raw data is getting loaded and QVD is creating.2nd Tier - QVD is transform in the business login and requirement of the business and data model is created.3rd Tier - Reading the all QVD from 2nd tier and make a single QVW or may be any binary load.

Q-3). Briefly explain how does QlikView storage the data internally?Ans: QlikView store data in to QVD . QVD have data compression capability . QlikView have better performance compared to other BI because of in memory analytics approach , in built ETL handling capability.for moreclick here

Q-4). What are the restrictions of Binary Load?Ans: Binary load is used only for one application means you are able to read data from only one QVW application and on the above of the set scripts is a restriction.In qlikview data is stored in QVDs but if you are using any QVW application data is loaded in the RAM thats why it is called as In-Memory analysis tool.

Q-5). How are NULLS implemented in QlikView?Ans:Click here for Answer

Q-6). How do you optimize QlikView Application? (What tools are used and where do you start?)Ans:Click here for Answer

Q-7). What is the difference between Subset ratio & Information Density?Ans: Information density of the field, which indicates the percentage of rows that contain a non-null valueSubset ratio, which shows the percentage of all distinct values for a field in thetable compared to all the distinct values for that field in the entire data model. It is only relevant for key fields since they are present in multiple tables and do not all share the same value.

Subset ratios can be used to easily spot problems in key field associations.For example, when the combined total of subset ratios for multiple tables is 100 percent, this may indicate that there are no matching keys between these tables.

Let me give you simple example

Sales:Load * Inline[ Customer, Sales A, 100 B, 200 D, 300];

Customer:Load * Inline[ Customer A B C D];

If you write above sample script and will check the Table (CTRL + T), you will find two tables.Sales and CustomersOn Sales Table, if you hover the mouse on Customer field, you can see the Subset Ratio is 75% because there is not sales data for Customer C.Now if you change the script for table Customer like below..Customer:Load * Inline[ Customer A B C D]Where Exists (Customer);If will not load the Customer C as there are no sales data for the same.Now check the Subset Ratio. It will be 100%.

If subset ratio is less than 100%, the key is called as Primary Keybut for 100% it is called as Perfect Key.

Define Set Analysis and its types with examples?Aggregation functions normally aggregate over the set of possible records defined by the current selection.sum( Sales )But an alternative set of records can be defined by a set expression.sum( {$} Sales )Features:Conceptually similar to a selection.Provides a method of defining groups (sets) of information that are independent of the current can create sets based on other sets.Must be used in aggregation function.Always begin and end with curly brackets {}Very powerful functionality for comparison analysisMay eliminate the need for additional, complex coding within an applicationProvides much more flexibility in the analysis you can create

2). What are Modifiers, Operators and Identifiers?Identifiers Syntax:0 - Represents an empty set1 - Represents the full set of all the records in the application$ - Represents the records of the current selection$1 - Represents the previous selection$_1 - Represents the next (forward) selectionBookmark01 - Represents the bookmark ID or the bookmark nameExample:sum({1} Sales)Returns total sales within the application, disregarding selections but notthe dimension.sum({$} Sales)Returns sales for the current selection, i.e. the same as sum(Sales).sum({$1} Sales)Returns sales for the previous selection.sum({Bookmark01} Sales)Returns sales for the bookmark named Bookmark01

Operators:+ Union Returns the set of all records that belong to the unioned sets- Exclusion Returns records that belong to the first but not the other of the two set identifiers.* Intersection Returns records that belong to both of the set identifiers./ SymmetricDifferenceReturns a set that belongs to either, but not both of the set identifiers.Examples:sum({1 - $} Sales)Returns sales for everything excluded by the current selection.sum({$ * Bookmark01} Sales)Returns sales for the intersection between the current selectionand the bookmark Bookmark01.sum({ - ($ + Bookmark01)} Sales)Returns sales excluded by current selection and the bookmarkBookmark01.

Modifiers:(Deals With Fields Name)Modifiers - Examplessum({$} Sales)Returns the sales for the current selection where OrderDate = DeliveryDate.sum({1} Sales)Returns the sales for region US disregarding the current selection.sum({$} Sales)Returns the sales for current selection, but with the selection in Regionremoved.sum({} Sales)Returns same as the example above. When the set to modify is omitted, $is assumed.sum({$} Sales)Returns the sales for current selection, but with new selections both inYear and in Region.

3). Explain Syntax given below: sum( {$} Sales )returns the sales for the previous year in relation to the current selection. Here, a variable vLastYear containing the relevant year is used in a dollar-sign expansion. sum( {$} Sales )returns the sales for the previous year in relation to the current selection. Here, a dollar-sign expansion is used to calculatePrevious year

4). Define Indirect Set Analysis with an example?Set analysis was previously restricted to stating direct selections in a field. Starting with version 9, it is now possible to state selections in a field based on selections in another field.The functions p() and e() can be used to select the set of possible or excluded values within a field.Indirect Set Analysis p( ) = Possible e( ) = ExcludedCustomer = p({} Customer)Returns customers who had an association to last year.sum(({