Você está na página 1de 87

Sl. No.

1 2 3 4 5

Complexit Questions y Informatica simple What is sql override ? Informatica simple Can we have multiple conditions in a Lookup? Informatica simple Can we have multiple conditions in a Filter? Informatica simple How the flags are called in Update strategy? Informatica simple Is it possible to run the session other than Server manager? If so how? Informatica simple What is diff. Things u can do using PMCMD? Informatica average/si What is the use of power mple plug? Informatica average/si What kind of Test plan? What mple kind of validation you do? Informatica simple What is the usage of unconnected/connected look up?

Subject

6 7 8

10

Informatica simple

What is the difference between Connected and Unconnected Lookups ?

11

Informatica simple

12 13 14

Informatica simple Informatica simple Informatica average

If u have data coming from diff. sources what transformation will u use in your designer? What are different ports in Informatica? What is a Variable port? Why it is used? Diff between Active and passive transormation ?

15 16

Informatica simple Informatica simple

What are Mapplet? What is Aggregate transformation

17

Informatica simple

What is Router Transformation? How is it different from Filter transformation? What are connected and unconnected transformations? What is Normalizer transformation? How to use a sequence created in Oracle in Informatica? What are source qualifier transformations? What are cache and their types in Informatica? What is an incremental aggregation?

18

Informatica simple

19

Informatica simple

20

Informatica simple

21 22

Informatica simple Informatica simple

23

Informatica simple

24

Informatica complex

What is Reject loading?

25

Informatica average

WHAT IS SESSION and BATCHES?

26

Informatica simple

Significance of Source Qualifier Transformation

27

Informatica average

What are 2 modes of data movement in Informatica Server?

28

Informatica simple

Why we use lookup transformations?

29

Informatica simple

What are confirmed dimensions

30

DataWareh simple ousing

What is Data warehousing

31

Informatica simple

What is a reusable transf.. What is a mapplet . Explain diff. Bet them What happens when u use the delete or update or reject or insert statement in your update strategy? Where do u design ur mappings Where do u define users and privileges in Informatica How do u debug the data in Informatica tool when u run the session does debugger loads the data to target ? Can u use flat file and table (relational) as source together ? suppose I need to separate the data for delete and insert to target depending on the codition, which transformation u use ? What is the difference between lookup Data cache and Index cache.

32

Informatica simple

33 34 35 36

Informatica simple Informatica simple Informatica simple Informatica simple

37

Informatica simple

38

Informatica simple

39

Informatica average

40

Informatica average

What is an indicator file and how it can be used. Different Tools in Designer

41

Informatica simple

42

Informatica simple

Components of Informatica Different Tools in Workflow Manager What is overview window ? Why it is used ? While using Debugger, how will you fined out which transformation is currently running ? How do u load the data using Informatica? What is an Filter Transformation? or what options u have in Filter Transformation? What happens to the discarded rows in Filter Transformation.

43

Informatica simple

44 45

Informatica simple Informatica simple

46 47

Informatica simple Informatica simple

48

Informatica simple

49

Informatica average

What are the two programs that communicate with the Informatica Server?

50

Informatica simple

What u can do with Designer ?

51

Informatica avrage

What are different types of Tracing Levels u hv in Transformations?

52

Informatica simple

What is Mapplet and how do u create Mapplet?

53

Informatica simple

If data source is in the form of Excel Spread sheet then how do use?

54

Informatica simple

When do u use connected lookup n when do u use unconnected lookup?

55

Informatica simple

How many values it (informatica server) returns when it passes thru Connected Lookup n Unconncted Lookup?

56

Informatica simple

What kind of modifications u can do/perform with each Transformation?

57

Informatica simple

Expressions in Transformations, Explain briefly how do u use?

58

Informatica average

In case of Flat files (which comes thru FTP as source) has not arrived then what happens

59

Informatica average

What does a load manager do ?

60 61

Informatica simple Informatica simple

What is a cache What is an Expression transformation? I have two sources S1 having 100 records and S2 having 10000 records, I want to join them, using joiner transformation. Which of these two sources (S1,S2) should be master to improve my performance? Why? I have a source and I want to generate sequence numbers using mappings in informatica. But I dont want to use sequence generator transformation. Is there any other way to do it? What is a bad file?

62

Informatica simple

63

Informatica average

64

Informatica average

65

Informatica average

What is the first column of the bad file?

66 67

Informatica average Informatica simple

68 69 70

Informatica simple Informatica simple Informatica simple

What are the contents of the cache directory in the server Is lookup a Active transformation or Passive transformation ? What is a Mapping? What are the types of transformations If a sequence generator (with increment of 1) is connected to (say) 3 targets and each target uses the NEXTVAL port, what value will each target get? Have you used the Abort, Decode functions?

71

Informatica average

72

Informatica average

What do you know about the Informatica server architecture? Load Manager, DTM, Reader, Writer, Transformer

73

Informatica simple

What are the default values for variables?

74

Informatica simple

How many ways you can filter the records?

75

Informatica complex

How do you identify the bottlenecks in Mappings?

76

Informatica complex

How to improve the Session performance?

77 78

Informatica Informatica complex

What is Business components ? Where it exists ? What are Short cuts ? Where it is used ?

79

Informatica simple

While importing the relational source definition from database, what are the meta data of source U import?

80

Informatica simple

. How many ways U can update a relational source definition and what r they? How many ways u create ports?

81

Informatica simple

82

Informatica average

.What r the unsupported repository objects for a mapplet?

83

Informatica simple

What r the mapping parameters and mapping variables?

84

Informatica simple

Can U use the mapping parameters or variables created in one mapping into another mapping? Can u use the mapping parameters or variables created in one mapping into any other reusable transformation?

85

Informatica simple

86

Informatica simple

87

Informatica simple

How can U improve session performance in aggregator transformation? .What r the difference between joiner transformation and source qualifier transformation?

88

Informatica simple

In which conditions we can not use joiner transformation(Limitations of joiner transformation)?

89

Informatica simple

What r the settings that u use to configure the joiner transformation? What r the join types in joiner transformation?

90

Informatica simple

91

Informatica simple

How the informatica server sorts the string values in Rank transformation?

92

Informatica simple

What is the Rank index in Rank transformation?

93

Informatica simple

What is the Router transformation?

94

Informatica simple

What r the types of groups in Router transformation?

95 96

Informatica simple average

Why we use stored procedure transformation? What r the types of data that passes between informatica server and stored procedure?

97

Informatica average

What is the status code?

98

Informatica simple

What r the tasks that source qualifier performs?

99 100

Informatica simple Informatica simple

What is the default join that source qualifier provides? . What r the basic needs to join two sources in a source qualifier? what is update strategy transformation ? Describe two levels in which update strategy transformation sets? What is the default source option for update strategy transformation? What is Data driven?

101

Informatica simple

102

Informatica simple

103

Informatica average

104

Informatica average

105

Informatica simple

What r the options in the target session of update strategy transformation?

106

Informatica simple

What r the types of mapping wizards that r to be provided in Informatica?

107

Informatica simple

What r the types of mapping in Getting Started Wizard?

108

Informatica avrage

What r the mappings that we use for slowly changing dimension table?

109

Informatica average

What r the different types of Type2 dimension mapping?

110

Informatica average

How can u recognize whether or not the newly added rows in the source r gets insert in the target ? What r two types of processes that informatica runs the session? What r the features of the server manager in the informatica 5.0?

111

Informatica average

112

Informatica

113 114

Informatica simple Informatica simple

Can u generate reports in Informatica? What is metadata reporter?

115

Informatica simple

Define mapping and sessions?

116

Informatica simple

Which tool U use to create and manage sessions and batches and to monitor and stop the informatica server?

117

Informatica simple

Why we use partitioning the session in informatica? To achieve the session partition what r the necessary tasks u have to do? How the informatica server increases the session performance through partitioning the source?

118

Informatica simple

119

Informatica avrage

120

Informatica simple

. Why u use repository connectivity?

121

Informatica average

What r the tasks that Load manger process will do?

122

Informatica average

What is DTM process?

123

Informatica average

What r the different threads in DTM process?

124

Informatica average

What r the data movement modes in informatica?

125

Informatica average

What r the out put files that the informatica server creates during the session running?

126

Informatica complex

In which circumstances that informatica server creates Reject files?

127

Informatica average

What is polling?

128

Informatica average

Can u copy the session to a different folder or repository? . What is batch and describe about types of batches?

129

Informatica average

130 131 132 133 134

Informatica average Informatica average Informatica simple Informatica simple Informatica simple

Can u copy the batches? .How many number of sessions that u can create in a batch? When the informatica server marks that a batch is failed? . What is a command that used to run a batch What r the different options used to configure the sequential batches? In a sequential batch can u run the session if previous session fails? Can u start batches with in a batch?

135 136

Informatica simple Informatica average

137 138 139

Informatica average Informatica average Informatica simple

Can u start a session inside a batch individually? How can u stop a batch? What r the session parameters?

140

Informatica simple

What is parameter file?

141

Informatica simple

How can u access the remote source into Ur session?

142

Informatica average

What is difference between portioning of relational target and partitioning of file targets? what r the transformations that restricts the partitioning of sessions?

143

Informatica average

144

Informatica complex

. Performance tuning in Informatica?

145

Informatica simple

Define informatica repository?

146

Informatica simple

What r the types of metadata that stores in repository?

147

Informatica simple

What is power center repository? How can u work with remote database in informatica? did u work directly by using remote

148

Informatica average

149

Informatica average

what is incremental aggregation?

150

Informatica simple

. What r the scheduling options to run a session?

151

Informatica simple

What is tracing level and what r the types of tracing level?

152

Informatica simple

What is difference between stored procedure transformation and external procedure transformation? Explain about Recovering sessions?

153

Informatica complex

154

Informatica complex

155

Informatica complex

If a session fails after loading of 10,000 records in to the target. How can u load the records from 10001st record when u run the session next time? Explain about perform recovery?

156

Informatica complex

How to recover the standalone session?

157

Informatica complex

How can u recover the session in sequential batches?

158

Informatica complex

How to recover sessions in concurrent batches?

159

Informatica complex

How can u complete unrecoverable sessions? What r the circumstances that informatica server results an unrecoverable session?

160

Informatica complex

161

Informatica average

If i've done any modifications for my table in back end does it reflect in informatica warehouse or mapping designer or source analyzer? After dragging the ports of three sources(sql server,oracle,informix) to a single source qualifier, can u map these three ports directly to target? Server Variables

162

Informatica average

163

Informatica

164

Informatica

Folders

165

Informatica

Multiple Servers

Answers Overriding a SQL in source qualifier or lookup for additional logic. Yes Yes 0 - DD_INSERT , 1- DD_UPDATE , 2- DD_DELETE , 3- DD_REJECT YES USING PMCMD

Start, Stop and abort the session For 3rd party connectors to sap, mainframe, Peoplesoft In Informatica we create some test SQL to compare the number or records and validate scripts if the data in the warehouse is loaded for the logic incorporated. We use a lookup for connecting to a table in the source or a target. There are 2 ways in which a lookup can be configured i.e. connected or unconnected

Connected Lookup Receives input values directly from the pipeline. Unconnected Lookup Receives input values from the result of a :LKP expression in another transformation. Connected Lookup You can use a dynamic or static cache. Unconnected Lookup You can use a static cache. Connected Lookup Cache includes all lookup columns used in the mapping (that is, lookup table columns included in the lookup condition and lookup table columns linked as output ports to other transformations). Unconnected Lookup Cache includes all lookup/output ports in the lookup condition and the lookup/return port.Connected Lookup Can return multiple columns from the same row or insert into the dynamic lookup cache. Unconnected Lookup The dynamic lookup cache, Designate one return port (R). Returns one column from each row. Connected Lookup If there is no match for the lookup condition, the Informatica Server returns the default value for all output ports. If you configure dynamic caching, the Informatica Server inserts rows into the cache. Unconnected Lookup If there is no match for the lookup condition, the Informatica Server returns NULL. Connected Lookup Pass multiple output values to another transformation. Link lookup/output ports to another transformation. Unconnected Lookup Pass one output value to another transformation. The lookup/output/return port passes the value to the transformation calling: LKP expression.Connected Lookup Supports user-defined default values. Unconnected Lookup Does not support user-defined default values Joiner Transformation

Input, Output, Variable, Return/Rank, Lookup and Master. Variable port is used to store intermediate results. Variable ports can reference input ports and variable ports, but not output ports. Transf can be active or passive , activ tranf can change the no of rec passed th it, a passive tranf can never change the rec cnt, Active trsnf that might change the rec cnt are advan ext proc, aggrega, filter,joiner,normalizer, rank , updte strategy, source qualifier, if u use powerconnect to access erp sources, erp source quail is also an active tranfor Passive tranf :- lookup, expression, external procedure, seq generator, stored procedure U can connect only 1 active tranf to the same tranf or target can connect any no of pass tranf A mapplet is a reusable object that represents a set of transformations. It allows you to reuse transformation logic and can contain as many transformation as you need. An aggregator transformation allows you to perform aggregate calculations, such as average and sums. The Aggregator transformation is unlike the Expression transformation, in that you can use the Aggregator transformation to perform calculations on groups.

A Router transformation is similar to a Filter transformation because both transformations allow you to use a condition to test data. A Filter transformation tests data for one condition and drops the rows of data that do not meet the condition. However, a router transformation tests data for one or more conditions and gives you the option to route rows of data that do not meet any of the conditions to default output group. Connected transformations are the transformation, which are in the data flow, whereas unconnected transformation will not be in the data flow. These are dealt in Lookup and Stored procedure transformations. Normalizer transformation normalizes records from COBOL and relational sources allowing you to organize the data according to your needs. A normalizer transformation can appear anywhere in a data flow when you normalize a relational source. By using Stored procedure transformation.

The source qualifier represents the records that the Informatica Server reads when it runs a session. The Informatica server creates index and data cache for aggregator, Rank, joiner and Lookup transformations in a mapping. The Informatica server stores key values in the index cache and output values in the data cache. In Incremental aggregation, you apply captured changes in the source to aggregate calculations in a session. If the source changes only incrementally and you can capture changes, you can configure the session to process only those changes. This allows the Informatica server to update your target incrementally, rather than forcing it to process the entire source and recalculate the same calculation each time you run the session. During a session, the Informatica server creates a reject file for each target instance in the mapping. If the writer or the target rejects data, the Informatica server writes the rejected row into reject file. The reject file and session log contain information that helps you determine the cause of the reject. You can correct reject files and load them to relational targets using the Informatica reject load utility. The reject loader also creates another reject file for the data that the writer or target reject during the reject loading.

SESSION - A Session Is A set of instructions that tells the Informatica Server How And When To Move Data From Sources To Targets. After creating the session, we can use either the server manager or the command line program pmcmd to start or stop the session. BATCHES - It Provides A Way to Group Sessions For Either Serial Or Parallel Execution By The Informatica Server. There Are Two Types Of Batches : 1. SEQUENTIAL - Run Session One after the Other. 2. CONCURRENT - Run Session At The Same Time. When you add a relational or a flat file source definition to a mapping, you need to connect it to a Source Qualifier transformation. The Source Qualifier represents the records that the Informatica Server reads when it runs a session. To join data originating from the same DB. Filter records in the Source itself. To specify an outer join instead of a default inner join. To specify sorter ports. To select distinct values from the source. To create a custom query to issue a special select statement for the Informatica server to read source data. For example, we might use a custom query to perform aggregate calculations or execute a stored procedure. The data movement mode depends on whether Informatica Server should process single byte or multi-byte character data. This mode selection can affect the enforcement of code page relationships and code page validation in the Informatica Client and Server. a) Unicode IS allows 2 bytes for each character and uses additional byte for each non-ascii character (such as Japanese characters) b) ASCII IS holds all data in a single byte Lookup Transformations can access data from relational tables that are not sources in mapping. With Lookup transformation, we can accomplish the following tasks: a) Get a related value - Get the Employee Name from the Employee table based on the Employee ID b) Perform Calculation Update slowly changing dimension tables - We can use unconnected lookup transformation to determine whether the records already exist in the target or not. Confirmed dimensions are linked to multiple fact tables

A DW is a DB used for query,analysis and reporting . By definition DW is a subject oriented, intergrated, non volatile and time variant Subject Oriented:- Represents a subject Aread like sales, Mktg Integrated :- Data Colleted from multiple source systems integrated into a user readable unique format Ex:- male, female ,0,1, M,F, T, F Non Volatile :- Dw stores historical data Time Variant :- Stores data timewise like weekly,monthly,quarterly, yearly Reusable tranformation:- if u want to create tranfor that perform common tasks such as avg sal in a dept Mapplet:- Is a reusuable object that represents a set of transformations Inserts:- treats all records as inserts , while inserting if the record violates primary, foreign key or foreign key in the database it rejects the record designer Repository manager Use debugger in designer If you select the option discard target data then it will not load to target

yes

Router or filter

Index cache:Contains columns used in condition Data cache: :Contains other output columns than the condition columns.

Indicator file is used for Event Based Scheduling when you dont know when the Source Data is availaible., A shell command ,script or a batch file creates and send this indicator file to the directory local to the Informatica Server.Server waits for the indicator file to appear before running the session. Source Analyzer Warehouse designer Transformation Developer Maplet designer Mapping designer Designer Workflow Manager Workflow Monitor Task Developer Worklet designer Workflow Designer Its a window in which you can see all the transformations that are used for a mapping. The left hand corner of the transformation that has an arrow looks like moving.

Using workflow manager The Filter transformation provides the means for filtering records in a mapping. You pass all the rows from a source transformation through the Filter transformation, then enter a filter condition for the transformation. All ports in a Filter transformation are input/output, and only records that meet the condition pass through the Filter transformation. Discarded rows do not appear in the session log or reject files

Informatica provides Server Manager and pmcmd programs to communicate with the Informatica Server: Server Manager. A client application used to create and manage sessions and batches, and to monitor and stop the Informatica Server. You can use information provided through the Server Manager to troubleshoot sessions and improve session performance. pmcmd. A command-line program that allows you to start and stop sessions and batches, stop the Informatica Server, and verify if the Informatica Server is running. The Designer client application provides five tools to help you create mappings: Source Analyzer. Use to import or create source definitions for flat file, Cobol, ERP, and relational sources. Warehouse Designer. Use to import or create target definitions. Transformation Developer. Use to create reusable transformations. Mapplet Designer. Use to create mapplets. Mapping Designer. Use to create mappings. Tracing Levels in Transformations :Level Description Terse Indicates when the Informatica Server initializes the session and its components. Summarizes session results, but not at the level of individual records. Normal Includes initialization information as well as error messages and notification of rejected data. Verbose initialization Includes all information provided with the Normal setting plus more extensive information about initializing transformations in the session. Verbose data Includes all information provided with the Verbose initialization setting. Note: By default, the tracing level for every transformation is Normal. To add a slight performance boost, you can also set the tracing level to Terse, writing the minimum of detail to the session log when running a session containing the transformation.

A mapplet is a reusable object that represents a set of transformations. It allows you to reuse transformation logic and can contain as many transformations as you need. Create a mapplet when you want to use a standardized set of transformation logic in several mappings. For example, if you have a several fact tables that require a series of dimension keys, you can create a mapplet containing a series of Lookup transformations to find each dimension key. You can then use the mapplet in each fact table mapping, rather than recreate the same lookup logic in each mapping. PowerMart and PowerCenter treat a Microsoft Excel source as a relational database, not a flat file. Like relational sources, the Designer uses ODBC to import a Microsoft Excel source. You do not need database permissions to import Microsoft Excel sources. To import an Excel source definition, you need to complete the following tasks: Install the Microsoft Excel ODBC driver on your system. Create a Microsoft Excel ODBC data source for each source file in the ODBC 32-bit Administrator. Prepare Microsoft Excel spreadsheets by defining ranges and formatting columns of numeric data. Import the source definitions in the Designer. Once you define ranges and format cells, you can import the ranges in the Designer. Ranges display as source definitions when you import the source.

A connected Lookup transformation is part of the mapping data flow. With connected lookups, you can have multiple return values. That is, you can pass multiple values from the same row in the lookup table out of the Lookup transformation. Common uses for connected lookups include: => Finding a name based on a number ex. Finding a Dname based on deptno => Finding a value based on a range of dates => Finding a value based on multiple conditions Unconnected Lookups : An unconnected Lookup transformation exists separate from the data flow in the mapping. You write an expression using the :LKP reference qualifier to call the lookup within another transformation. Some common uses for unconnected lookups include: => Testing the results of a lookup in an expression => Filtering records based on the lookup results => Marking records for update based on the result of a lookup (for example, updating slowly changing dimension tables) => Calling the same lookup multiple times in where as Unconnected Lookup will return only one Connected Lookup can return multiple values one mapping values that is Return Value.

Using transformations, you can modify data in the following ways: ---------------------------------------Task Transformation ---------------------------------------Calculate a value Expression Perform an aggregate calculations Aggregator Modify text Expression Filter records Filter, Source Qualifier Order records queried by the Informatica Server Source Qualifier Call a stored procedure Stored Procedure Call a procedure in a shared library or in the External Procedure COM layer of Windows NT Generate primary keys Sequence Generator Limit records to a top or bottom range Rank Normalize records, including those read Normalizer from COBOL sources Look up values Lookup Determine whether to insert, delete, update, Update Strategy or reject records Join records from different databases Joiner

Expressions in Transformations To transform data passing through a transformation, you can write an expression. The most obvious examples of these are the Expression and Aggregator transformations, which perform calculations on either single values or an entire range of values within a port. Transformations that use expressions include the following: --------------------- -----------------------------------------Transformation How It Uses Expressions --------------------- -----------------------------------------Expression Calculates the result of an expression for each row passing through the transformation, using values from one or more ports. Aggregator Calculates the result of an aggregate expression, such as a sum or average, based on all data passing through a port or on groups within that data. Filter Filters records based on a condition you enter using an expression. Rank Filters the top or bottom range of records, based on a condition you enter using an expression. Update Strategy Assigns a numeric code to each record based on an expression, indicating whether the Informatica Server should use the information in the record to insert, delete, or update the target. In each transformation, you use the Expression Editor to enter the expression. The Expression Editor supports the transformation language for building expressions. The transformation language uses SQL-like functions, operators, and other components to build the expression. For example, as in SQL, the transformation language includes the functions COUNT and SUM. However, the PowerMart/PowerCenter transformation language includes additional functions not found in SQL. When you enter the expression, you can use values available through ports. For example, if the transformation has two input ports representing a price and sales tax rate, you can calculate the final sales tax using these two values. The ports used in the expression can appear in the same transformation, or you can use output ports in other transformations. U get a fatal error which cause server to fail/stop the session.

The Load Manager is the primary PowerCenter Server process. It accepts requests from the PowerCenter Client and from pmcmd. The Load Manager runs and monitors the workflow. It performs the following tasks: Starts the session, creates DTM process and sends pre & post session emails. 1.Manages the session and batch scheduling 2.locks the session and reads the session properties. 3. expands the session and server variables and parameters 4. validates the source and target code pages 5. verifies the permissions and privileges 6. creates session log file 7. creates DTM process which executes the session Temporary memory area used to store intermediate results Expression transformation is used to calculate expressions on a row by row basis. Total_sal = Com * sal S1 should be the master as it contains few records so that the usage of cache can be reduced , S2 should be detail.

YES, Write a stored procedure and use Stored Procedure Transformation

Bad file is the file which contains the data rejected by the writer or target.

Record / Row indicator 0,1,2,3 0 insert -- Rejected by writer/target 1- update -- Rejected by writer/target 2- delete -- Rejected by writer/target 3-reject -- Rejected by writer --- coz update st. has marked it for reject. Index cache files and Data caches Passive.

Mapping Represent the data flow between source and target Passive and active Each target will get the value in multiple of 3

Abort can be used to Abort / stop the session on an error condition. If the primary key column contains NULL, and you need to stop the session from continuing then you may use ABORT function in the default value for the port. It can be used with IIF and DECODE function to Abort the session. o Load Manager is the first process started when the session runs. It checks for validity of mappings, locks sessions and other objects. o DTM process is started once the Load Manager has completed its job. It starts a thread for each pipeline. o Reader scans data from the specified sources. o Writer manages the target/output data. o Transformer performs the task specified in the mapping. String = Null, Number = 0, Date = 1/1/1753

1. 2. 3. 4. 5.

Source Qualifier Filter transformation Router transformation Ranker Update strategy

Bottlenecks can occur in 1. Targets The most common performance bottleneck occurs when the informatica server writes to a target database. You can identify target bottleneck by configuring the session to write to a flat file target. If the session performance increases significantly when you write to a flat file, you have a target bottleneck. Solution : Drop or Disable index or constraints Perform bulk load (Ignores Database log) Increase commit interval (Recovery is compromised) Tune the database for RBS, Dynamic Extension etc., 2. Sources Set a filter transformation after each SQ and see the records are not through. If the time taken is same then there is a problem. You can also identify the Source problem by Read Test Session where we copy the mapping with sources, SQ and remove all transformations and connect to file target. If the performance is same then there is a Source bottleneck. Using database query Copy the read query directly from the log. Execute the query against the source database with a query tool. If the time it takes to execute the query and the time to fetch the first row are significantly different, then the query can be modified using optimizer hints. Solutions: Optimize Queries using hints. Use indexes wherever possible. 3. Mapping If both Source and target are OK then problem could be in mapping. Add a filter transformation before target and if the time is the same then there is a problem. (OR) Look for the performance monitor in the Sessions property sheet and view the counters.

1 Run concurrent sessions 2 Partition session (Power center) 3. Tune Parameter DTM buffer pool, Buffer block size, Index cache size, data cache size, Commit Interval, Tracing level (Normal, Terse, Verbose Init, Verbose Data) The session has memory to hold 83 sources and targets. If it is more, then DTM can be increased. The informatica server uses the index and data caches for Aggregate, Rank, Lookup and Joiner transformation. The server stores the transformed data from the above transformation in the data cache before returning it to the data flow. It stores group information for those transformations in index cache. If the allocated data or index cache is not large enough to store the date, the server stores the data in a temporary disk file as it processes the session data. Each time the server pages to the disk the performance slows. This can be seen from the counters . Since generally data cache is larger than the index cache, it has to be more than the index. 4. Remove Staging area 5. Tune off Session recovery 6. Reduce error tracing It is available in navigator inside the folder. Shortcuts allow you to use metadata across folders without making copies, ensuring uniform metadata. A shortcut inherits all properties of the object to which it points. Once you create a shortcut, you can configure the shortcut name and description. When the object the shortcut references changes, the shortcut inherits those changes. By using a shortcut instead of a copy, you ensure each use of the shortcut matches the original object. For example, if you have a shortcut to a target definition, and you add a column to the definition, the shortcut inherits the additional column. Scenario1 Here is a table with Single Row, in a target table the same row should be populated 10 times. Using Normalizer, we can do it. Hint : Normalizer / Occurs make it 10 and Have 10 inputs and a output. You will get 10 rows. Source name Database location Column names Data types Key constraints

Two ways 1. Edit the definition 2. Re-import the definition Two ways 1. Drag the port from another transformation 2. Click the add button on the ports tab. COBOL source definition Joiner transformations Normalizer transformations Non reusable sequence generator transformations. Pre or post session stored procedures Target definitions Power mart 3.5 style Look Up functions XML source definitions IBM MQ source definitions Mapping parameter represents a constant value that U can define before running a session. A mapping parameter retains the same value throughout the entire session. When u use the mapping parameter ,U declare and use the parameter in a mapping or maplet. Then define the value of parameter in a parameter file for the session. Unlike a mapping parameter, a mapping variable represents a value that can change throughout the session. The informatica server saves the value of mapping variable to the repository at the end of session run and uses that value next time U run the session. NO. We can use mapping parameters or variables in any transformation of the same mapping or mapplet in which U have created mapping parameters or variables. Yes. Because reusable transformation is not contained with any maplet or mapping.

Use sorted input.

U can join heterogeneous data sources in joiner transformation which we can not achieve in source qualifier transformation. U need matching keys to join two relational sources in source qualifier transformation. Where as u doesn't need matching keys to join two sources. Two relational sources should come from same data source in sourcequalifier. U can join relational sources which r coming from different sources also. Both pipelines begin with the same original data source. Both input pipelines originate from the same Source Qualifier transformation. Both input pipelines originate from the same Normalizer transformation. Both input pipelines originate from the same Joiner transformation. Either input pipelines contains an Update Strategy transformation. Either input pipelines contains a connected or unconnected Sequence Generator transformation. Master and detail source Type of join Condition of the join Normal (Default) Master outer Detail outer Full outer When the informatica server runs in the ASCII data movement mode it sorts session data using Binary sort order. If U configure the session to use a binary sort order, the informatica server calculates the binary value of each string and returns the specified number of rows with the highest binary values for the string.

The Designer automatically creates a RANKINDEX port for each Rank transformation. The Informatica Server uses the Rank Index port to store the ranking position for each record in a group. For example, if you create a Rank transformation that ranks the top 5 salespersons for each quarter, the rank index numbers the salespeople from 1 to 5: Input group Output group A Router transformation is similar to a Filter transformation because both transformations allow you to use a condition to test data. However, a Filter transformation tests data for one condition and drops the rows of data that do not meet the condition. A Router transformation tests data for one or more conditions and gives you the option to route rows of data that do not meet any of the conditions to a default output group. If you need to test the same input data based on multiple conditions, use a Router Transformation in a mapping instead of creating multiple Filter transformations to perform the same task The designer copies property information from the input ports of the input group to create a set of output ports for each output group. Two types of output groups User defined groups Default group U can not modify or delete default groups. For populating and maintaining data bases. 3 types of data Input/Out put parameters Return Values Status code.

Status code provides error handling for the informatica server during the session. The stored procedure issues a status code that notifies whether or not stored procedure completed sucessfully. This value can not seen by the user. It only used by the informatica server to determine whether to continue running the session or stop. Join data originating from same source data base. Filter records when the informatica server reads source data. Specify an outer join rather than the default inner join specify sorted records. Select only distinct values from the source. Creating custom query to issue a special SELECT statement for the informatica server to read source data. Inner equi join. Two sources should have primary and Foreign key relation ships. Two sources should have matching data types. This transformation is used to maintain the history data or just most recent changes in to target table. Within a session. When you configure a session, you can instruct the Informatica Server to either treat all records in the same way (for example, treat all records as inserts), or use instructions coded into the session mapping to flag records for different database operations. Within a mapping. Within a mapping, you use the Update Strategy transformation to flag records for insert, delete, update, or reject. Data driven.

The informatica server follows instructions coded into update strategy transformations with in the session mapping determine how to flag records for insert, update, delete or reject. If u do not choose data driven option setting, the informatica server ignores all update strategy transformations in the mapping.

Insert Delete Update Update as update Update as insert Update else insert Truncate table The Designer provides two mapping wizards to help you create mappings quickly and easily. Both wizards are designed to create mappings for loading and maintaining star schemas, a series of dimensions related to a central fact table. Getting Started Wizard. Creates mappings to load static fact and dimension tables, as well as slowly growing dimension tables. Slowly Changing Dimensions Wizard. Creates mappings to load slowly changing dimension tables based on the amount of historical dimension data you want to keep and the method you choose to handle historical dimension data. Simple Pass through mapping : Loads a static fact or dimension table by inserting all rows. Use this mapping when you want to drop all existing data from your table before loading new data. Slowly Growing target : Loads a slowly growing fact or dimension table by inserting new rows. Use this load new data when existing data does not require updates. mapping to

Type1: Rows containing changes to existing dimensions are updated in the target by overwriting the existing dimension. In the Type 1 Dimension mapping, all rows contain current dimension data. Use the Type 1 Dimension mapping to update a slowly changing dimension table when you do not need to keep any previous versions of dimensions in the table. Type 2: The Type 2 Dimension Data mapping inserts both new and changed dimensions into the target. Changes are tracked in the target table by versioning the primary key and creating a version number for each dimension in the table. Use the Type 2 Dimension/Version Data mapping to update a slowly changing dimension table when you want to keep a full history of dimension data in the table. Version numbers and versioned primary keys track the order of changes to each dimension. Type 3: The Type 3 Dimension mapping filters source rows based on user-defined comparisons and inserts only those found to be new dimensions to the target. Rows containing changes to existing dimensions are updated in the target. When updating an existing dimension, the Informatica Server saves existing data in different columns of the same row and replaces the existing data with the updates Type2 Dimension/Version Data Mapping: In this mapping the updated dimension in the source will gets inserted in target along with a new version number. And newly added dimension in source will insert into target with a primary key. Type2 Dimension/Flag current Mapping: This mapping is also used for slowly changing dimensions. In addition it creates a flag value for changed or new dimension. Flag indicates the dimension is new or newly updated. Recent dimensions will gets saved with current flag value 1. And updated dimensions r saved with the value 0. Type2 Dimension/Effective Date Range Mapping: This is also one flavor of Type2 mapping used for slowly changing dimensions. This mapping also inserts both new and changed dimensions in to the target. And changes r tracked by the effective date range for each version of each dimension.

In the Type2 mapping we have three options to recognize the newly added rows Version number Flag value Effective date Range Load manager Process: Starts the session, creates the DTM process, and sends post-session email when the session completes. The DTM process. Creates threads to initialize the session, read, write, and transform data, and handle pre- and post-session operations. U can use command line arguments for a session or batch. This allows U to change the values of session parameters, and mapping parameters and mapping variables. Parallel data processing: This feature is available for power center only. If we use the informatica server on a SMP system, U can use multiple CPU's to process a session concurrently. Process session data using threads: Informatica server runs the session in two processes. Explained in previous question. Yes. By using Metadata reporter we can generate reports in informatica. It is a web based application that enables you to run reports against repository metadata. With a meta data reporter, u can access information about Ur repository with out having knowledge of sql, transformation language or underlying tables in the repository. Mapping: It is a set of source and target definitions linked by transformation objects that define the rules for transformation. Session : It is a set of instructions that describe how and when to move data from source to targets. Informatica server manager.

Partitioning achieves the session performance by reducing the time period of reading the source and loading the data into target. Configure the session to partition source data. Install the informatica server on a machine with multiple CPU's. For relational sources informatica server creates multiple connections for each partition of a single source and extracts separate range of data for each connection. Informatica server reads multiple partitions of a single source concurently. Similarly for loading also informatica server creates multiple connections to the target and loads partitions of data concurrently. For XML and file sources, informatica server reads multiple files concurrently. For loading the data informatica server creates a separate file for each partition(of a source file).U can choose to merge the targets. When u edit, schedule the session each time, informatica server directly communicates the repository to check whether or not the session and users r valid. All the metadata of sessions and mappings will be stored in repository.

Manages the session and batch scheduling: When u start the informatica server the load manager launches and queries the repository for a list of sessions configured to run on the informatica server. When u configure the session the load manager maintains list of list of sessions and session start times. When u start a session load manger fetches the session information from the repository to perform the validations and verifications prior to starting DTM processLocking and reading the session: When the informatica server starts a session load manager locks the session from the repository. Locking prevents U starting the session again and again. Reading the parameter file: If the session uses a parameter files, load manager reads the parameter file and verifies that the session level parameters are declared in the file Verifies permission and privileges: When the session starts load manger checks whether or not the user have privileges to run the session. After the load manger performs validations for session, it creates the DTM process. DTM is to create and manage the threads that carry out the session tasks. I creates the master thread. Master thread creates and manages all the other threads. Master thread: Creates and manages all other threads Mapping thread: One mapping thread will be creates for each session. Fetches session and mapping information. Pre and post session threads: This will be created to perform pre and post session operations. Reader thread: One thread will be created for each partition of a source. It reads data from source. Writer thread: It will be created to load data to the target. Transformation thread: It will be created to transform data.

Data movement modes determines how informatica server handles the character data. U choose the data movement in the informatica server configuration settings. Two types of data movement modes available in informatica. ASCII mode Uni code mode.

Informatica server log: Informatica server(on UNIX) creates a log for all status and error messages(default name: pm.server.log).It also creates an error log for error messages. These files will be created in informatica home directory. Session log file: Informatica server creates session log file for each session. It writes information about session into log files such as initialization process, creation of sql commands for reader and writer threads, errors encountered and load summary. The amount of detail in session log file depends on the tracing level that u set. Session detail file: This file contains load statistics for each target in mapping. Session detail include information such as table name, number of rows written or rejected. U can view this file by double clicking on the session in monitor window Performance detail file: This file contains information known as session performance details which helps U where performance can be improved. To generate this file select the performance detail option in the session property sheet. Reject file: This file contains the rows of data that the writer does not write to targets. Control file: Informatica server creates control file and a target file when U run a session that uses the external loader. The control file contains the information about the target flat file such as data format and loading instructions for the external loader. Post session email: Post session email allows U to automatically communicate information about a session run to designated recipients. U can create two different messages. One if the session completed successfully the other if the session fails. Indicator file: If u use the flat file as a target, U can configure the informatica server to create indicator file. For each target row, the indicator file contains a number to indicate whether the row was marked for insert, update, delete or reject. When it encounters the DD_Reject in update strategy transformation. Violates database constraint Filed in the rows was truncated or overflowed.

It displays the updated information about the session in the monitor window. The monitor window displays the status of each session when U poll the informatica server Yes. By using copy session wizard u can copy a session in a different folder or repository. But that target folder or repository should consists of mapping of that session. If target folder or repository is not having the mapping of copying session , u should have to copy that mapping first before u copy the session. Grouping of session is known as batch. Batches r two types Sequential: Runs sessions one after the other Concurrent: Runs session at same time. If u have sessions with source-target dependencies u have to go for sequential batch to start the sessions one after another. If u have several independent sessions u can use concurrent batches. Which runs all the sessions at the same time. NO Any number of sessions. If one of session is configured to "run if previous completes" and that previous session fails. pmcmd is used to start a batch. Two optionsRun the session only if previous session completes successfully. Always runs the session.

Yes. By setting the option always runs the session. U can not. If u want to start batch that resides in a batch, create a new independent batch and copy the necessary sessions into the new batch.

We can start our required session only in case of sequential batch. in case of concurrent batch we cant do like this. By using server manager or pmcmd. Session parameters r like mapping parameters, represent values U might want to change between sessions such as database connections or source files. Server manager also allows U to create user defined session parameters. Following r user defined session parameters. Database connections Source file names: use this parameter when u want to change the name or location of session source file between session runs Target file name :Use this parameter when u want to change the name or location of session target file between session runs. Reject file name :Use this parameter when u want to change the name or location of session reject files between session runs.

Parameter file is to define the values for parameters and variables used in a session. A parameter file is a file created by text editor such as word pad or notepad. U can define the following values in parameter file Mapping parameters Mapping variables session parameters

Relational source: To access relational source which is situated in a remote place ,u need to configure database connection to the data source. File Source : To access the remote source file U must configure the FTP connection to the host machine before u create the session. Heterogeneous : When Ur mapping contains more than one source type, the server manager creates a heterogeneous session that displays source options for all types. If u partition a session with a relational target informatica server creates multiple connections to the target database to write target data concurrently. If u partition a session with a file target the informatica server creates one target file for each partition. U can configure session properties to merge these target files. Advanced External procedure transformation and External procedure transformation: This transformation contains a check box on the properties tab to allow partitioning. Aggregator Transformation: If u use sorted ports u can not partition the associated source Joiner Transformation : U can not partition the master source for a joiner transformation Normalizer Transformation XML targets.

The goal of performance tuning is optimize session performance so sessions run during the available load window for the Informatica Server. Increase the session performance by following. The performance of the Informatica Server is related to network connections. Data generally moves across a network at less than 1 MB per second, whereas a local disk moves data five to twenty times faster. Thus network connections often affect on session performance. So avoid network connections. Flat files: If ur flat files stored on a machine other than the informatica server, move those files to the machine that consists of informatica server. Relational data sources: Minimize the connections to sources ,targets and informatica server to improve session performance. Moving target database into server system may improve session performance. Staging areas: If u use staging areas u force informatica server to perform multiple data passes. Removing of staging areas may improve session performance. U can run the multiple informatica servers against the same repository. Distributing the session load to multiple informatica servers may improve session performance. Run the informatica server in ASCII data movement mode improves the session performance. Because ASCII data movement mode stores a character value in one byte. Unicode mode takes 2 bytes to store a character. If a session joins multiple source tables in one Source Qualifier, optimizing the query may improve performance. Also, single table select statements with an ORDER BY or GROUP BY clause may benefit from optimization such as adding indexes. We can improve the session performance by configuring the network packet size, which allows data to cross the network at one time. To do this go to server manger ,choose server configure database connections.

The Informatica repository is a relational database that stores information, or metadata, used by the Informatica Server and Client tools. Metadata can include information such as mappings describing how to transform source data, sessions indicating when you want the Informatica Server to perform the transformations, and connect strings for sources and targets. The repository also stores administrative information such as usernames and passwords, permissions and privileges, and product version. Use repository manager to create the repository. The Repository Manager connects to the repository database and runs the code needed to create the repository tables.These tables stores metadata in specific format the informatica server, client tools use. Following r the types of metadata that stores in the repository Database connections Global objects Mappings Mapplets Multidimensional metadata Reusable transformations Sessions and batches Short cuts Source definitions Target definitions Transformations The PowerCenter repository allows you to share metadata across repositories to create a data mart domain. In a data mart domain, you can create a single global repository to store metadata used across an enterprise, and a number of local repositories to share the global metadata as needed. To work with remote data source u need to connect it with remote connections. But it is not preferable to work with that remote source directly by using remote connections .Instead u bring that source into U r local machine where informatica server resides. If u work directly with remote source the session performance will decreases by passing fewer amounts of data across the network in a particular time.

When using incremental aggregation, you apply captured changes in the source to aggregate calculations in a session. If the source changes only incrementally and you can capture changes, you can configure the session to process only those changes. This allows the Informatica Server to update your target incrementally, rather than forcing it to process the entire source and recalculate the same calculations each time you run the session. U can schedule a session to run at a given time or interval, or u can manually run the session. Different options of scheduling Run only on demand: Informatica server runs the session only when user starts session explicitly Run once: Informatica server runs the session only once at a specified date and time. Run every: Informatica server runs the session at regular intervals as u configured. Customized repeat: Informatica server runs the session at the dates and times specified in the repeat dialog box. Tracing level represents the amount of information that informatica server writes in a log file. Types of tracing level Normal Verbose Verbose init Verbose data In case of stored procedure transformation procedure will be compiled and executed in a relational data source. U need data base connection to import the stored procedure in to ur maping. Where as in external procedure transformation procedure or function will be executed out side of data source. ie u need to make it as a DLL to access in u r mapping. No need to have data base connection in case of external procedure transformation. If you stop a session or if an error causes a session to stop, refer to the session and error logs to determine the cause of failure. Correct the errors, and then complete the session. The method you use to complete the session depends on the properties of the mapping, session, and Informatica Server configuration. Use one of the following methods to complete the session: Run the session again if the Informatica Server has not issued a commit. Truncate the target tables and run the session again if the session is not recoverable. Consider performing recovery if the Informatica Server has issued at least one commit.

As explained above informatica server has 3 methods to recovering the sessions. Use performing recovery to load the records from where the session fails.

When the Informatica Server starts a recovery session, it reads the OPB_SRVR_RECOVERY table and notes the row ID of the last row committed to the target database. The Informatica Server then reads all sources again and starts processing from the next row ID. For example, if the Informatica Server commits 10,000 rows before the session fails, when you run recovery, the Informatica Server bypasses the rows up to 10,000 and starts loading with row 10,001. By default, Perform Recovery is disabled in the Informatica Server setup. You must enable Recovery in the Informatica Server setup before you run a session so the Informatica Server can create and/or write entries in the OPB_SRVR_RECOVERY table. A standalone session is a session that is not nested in a batch. If a standalone session fails, you can run recovery using a menu command or pmcmd. These options are not available for batched sessions. To recover sessions using the menu: 1. In the Server Manager, highlight the session you want to recover. 2. Select Server Requests-Stop from the menu. 3. With the failed session highlighted, select Server Requests-Start Session in Recovery Mode from the menu. To recover sessions using pmcmd: 1.From the command line, stop the session. 2. From the command line, start recovery.

If you configure a session in a sequential batch to stop on failure, you can run recovery starting with the failed session. The Informatica Server completes the session and then runs the rest of the batch. Use the Perform Recovery session property To recover sessions in sequential batches configured to stop on failure: 1.In the Server Manager, open the session property sheet. 2.On the Log Files tab, select Perform Recovery, and click OK. 3.Run the session. 4.After the batch completes, open the session property sheet. 5.Clear Perform Recovery, and click OK. If you do not clear Perform Recovery, the next time you run the session, the Informatica Server attempts to recover the previous session. If you do not configure a session in a sequential batch to stop on failure, and the remaining sessions in the batch complete, recover the failed session as a standalone session. If multiple sessions in a concurrent batch fail, you might want to truncate all targets and run the batch again. However, if a session in a concurrent batch fails and the rest of the sessions complete successfully, you can recover the session as a standalone session. To recover a session in a concurrent batch: 1.Copy the failed session using Operations-Copy Session. 2.Drag the copied session outside the batch to be a standalone session. 3.Follow the steps to recover a standalone session. 4.Delete the standalone copy. Under certain circumstances, when a session does not complete, you need to truncate the target tables and run the session from the beginning. Run the session from the beginning when the Informatica Server cannot run recovery or when running recovery might result in inconsistent data. The source qualifier transformation does not use sorted ports. If u change the partition information after the initial session fails. Perform recovery is disabled in the informatica server configuration. If the sources or targets changes after initial session fails. If the mapping consists of sequence generator or normalizer transformation. If a concurrent batch contains multiple failed sessions.

NO. Informatica is not at all concern with back end data base. It displays u all the information that is to be stored in repository. If want to reflect back end changes to informatica screens, again u have to import from back end to informatica by valid connection. And u have to replace the existing files with imported files. NO. Unless and until u join those three ports in source qualifier u cannot map them directly.

1. $PMRootDir 2. $PMSessionLogDir 3. $PMBadFileDir 4. $PMCacheDir 5. $PMTargetFileDir 6. $PMSourceFileDir 7. $PMExtProcDir 8. $PMTempDir 9. $PMSuccessEmailUser 10. $PMFailureEmailUser 11. $PMSessionLogCount 12. $PMSessionErrorThreshold 13. $PMWorkflowLogDir 14. $PMWorkflowLogCount

Folders provide a way to organize and store all metadata in the repository, including mappings, schemas, and sessions. Folders are designed to be flexible, to help you logically organize the repository. Each folder has a set of configurable properties that help you define how users access the folder. For example, you can create a folder that allows all repository users to see objects within the folder, but not to edit them. Or, you can create a folder that allows users to share objects within the folder. You can create shared and non-shared folders. Note: You must create a folder in a repository before you can connect to the repository using the Designer or Workflow Manager. You create and maintain folders in the Repository Manager. In the Repository Manager, you can view the users accessing folders and the objects within each folder. You can also copy and replace folders within the repository or across repositories. Register multiple PowerCenter Servers. When you register multiple PowerCenter Servers, choose the PowerCenter Server for a workflow in the workflow properties.

Sl.No 1 2 3

Category Performance tuning Performance tuning Performance tuning

Complexity Simple Medium Medium

4 5

Performance tuning Performance tuning

Complex Medium

6 7

Performance tuning Joins

Simple Simple

8 9

Queries Fundamentals

Simple Simple

10

PL/SQL

Simple

11 12

PL/SQL Queries

Simple Medium

Questions What are the types of optimizer? A: Rule-based and Cost-based optimizers Which optimizer mode is the default one? A: Optimizer takes the rule based approach as default. What is explain plan? A:The sequence of steps the optimizer chooses to execute the SELECT, UPDATE, INSERT, DELETE statements. Can you force the optimizer to choose the optimal execution plan? A:Yes. By using hints option. How will you tune the following query? Select empid, ename, dno from emp where dno in(select deptno from dept) A: select empid, ename,dno from emp, dept where dno=deptno Which is faster? Using IN or EXISTS? A: EXISTS is faster compared to IN. What are the types of joins? What are they? A:Simple join, Outer join, Self join Simple join returns the common rows between two or more tables. Outer join returns the matching rows from one, and all the rows from the other table, with the unmatched rows marked as NULL. Self join is joining a table to itself. How will you fetch the first 10 records of a table? A: select * from emp where rownum<11 How many types of SQL statements are there in Oracle? A: DDL - create, alter, drop DML - select, insert, update, delete TCL - commit, savepoint, rollback DCL Grant, Revoke What are cursors? A: A cursor is a handle ( name or a pointer) for the memory associated with a specific statement. A cursor is basically an area allocated by Oracle for executing the SQL Statement. Oracle uses an implicit cursor statement for Single row query and Uses Explicit cursor for a multi row query. What are attributes of cursor? %FOUND , %NOTFOUND , %ISOPEN,%ROWCOUNT How will you identify the duplicates in a particular column? A:Select col1, count(*) from table1 group by col1 having count(*)>1

13

PL/SQL

Medium

14 15

PL/SQL PL/SQL

Simple Simple

16

PL/SQL

Simple

17

Partition

Medium

What are packages? Advantages of packages? A:Packages Provide a method of encapsulating and storing related procedures, functions, variables and other Package Contents. How many types of parameters can be passed to a stored procedure? A:3 types: IN, OUT, INOUT Difference between Stored procedure and functions A: Function returns a value to the calling block whereas the Stored procedure does not. What are Database Triggers and Stored Procedures A: Database Triggers are Procedures that are automatically executed as a result of insert in, update to, or delete from table. What are partitions? A: Partitions are segments of a logical table split by range of key column values. Syntax of creating a partition Create table A(a varchar(1), b numeric(10)) Partition by range(b) (partition p1 values less than 10, Partition p2 values less than 20, Partition p3 values less than maxvalue) What is ER model? A: It is a conceptual data model that views the real world as entities and relationships. A basic component of the model is the Entity-Relationship diagram which is used to visually represents data objects. How many types of Exceptions are there There are 2 types of exceptions. They are a) System Exceptions e.g. When no_data_found, When too_many_rows b) User Defined Exceptions e.g. My_exception exception When My_exception then How many types of Locks are there? What are they? A: Shared, Share Update, Exclusive You are asked to model a many-many relationship given the students and teachers data. How many tables would you require to implement the same? A: 3 What is the difference between a sub query and a correlated sub query?

18

Partition

Complex

19

Normalization

Simple

20

PL/SQL

Simple

21

Locks

Medium

22 23

Normalization Queries

Medium Medium

A: Subquery is a query inside a query, where the sub query gets executed only once. In a correlated sub query, the sub query gets executed once for each row processed by the parent query. 24 Fundamentals Simple What are the two types of synonyms? What is the difference between the two? A: Private and Public. Private synonyms are created by the database user and is available only to the user, where as public synonym is created by the database administrator and is available to all users. How many types of Exceptions are there? What are they? A: There are 2 types of exceptions. They are a) System Exceptions e.g. When no_data_found, When too_many_rows b) User Defined Exceptions e.g. My_exception exception Can you execute DDL statements inside a PL/SQL block? How? A: Yes. By using 'execute immediate' clause. What are embedded SQLs? A: Sql Statements embedded in a high level language such as 'C' are called embedded sqls. Table Emp has 3 records: A B C Sequence of 4 sql stmts are executed: Delete emp where val='A' Alter table emp modify(val varchar2(5)) Delete emp where val='B' Rollback What is the status of the table emp? A: Table emp has 2 records B & C. What are mutating tables? A: Mutating table is a table that is currently being modified by insert update or delete statement causing a trigger to fire that again tries to modify the same table What is the difference between deleting and truncating of tables

25

PL/SQL

Simple

26 27

PL/SQL Queries

Complex Medium

28

Fundamentals

Medium

29

PL/SQL

Complex

30

Fundamentals

Simple

31 32

Fundamentals Queries

Simple Medium

33 34

Fundamentals Database connection

Medium Medium

A: Deleting a table will remove the rows from the table but space consumed by these rows is not released. But truncating a table deletes it completely and release the space consumed by it too. Name a few pseudocolumns. A: NEXTVAL, CURRVAL, ROWNUM etc.. What is 'on delete cascade' option? A: When a key value is deleted, if you want to also delete the references of the key, go for on delete cascade option. How many columns can table have? A: The number of columns in a table can range from 1 to 254. What is tnsnames.ora?

35 36

Performance tuning PL/SQL

Complex Complex

37

Database connection

Medium

38 39 40

Queries Queries Conversion functions

Medium Simple Medium

How do you generate statistics of a particular table involved in a query? A: Analyze table compute statistics What are PL/SQL tables? A: PL/SQL tables are not stored in the database, and is usually created inside a PL/SQL block with only one column. What is Oracle SID? Where do you set that? A: If Oracle is used in a UNIX server, then Oracle SID is set in the .profile file. It denotes the database. How do u implement the If statement in the Select Statement? A: Using DECODE How can you fetch the uncommon rows from the result set of 2 queries? A: Using MINUS operator What is the difference between to_char() & to_number() function/ A: To_char converts a number or date to a char. To_number converts a char or varchar to a number.

A tnsnames.ora file provides the ability to reference oracle databases by a simple alias.

41

42

43

What are inline views? What are the advantages of force views? What type of DBMS is supported by Oracle 8i?

Views

Views

Fundamentals

44

What are materialized views? What are the rules that are to be followed while inserting data into views? Can you insert records into materialized views? What is the difference between a snapshot and a materialized view? What is the advantage of using a clustered index? What are the enhancements on Views in Oracle 8i? What are the new types of triggers added in Oracle 8i? Executing the query on a million records performance. How will you tune it? Select *, revenue-cost from tableA Difference between Bitmap and B-Tree indices. Which feature in Oracle 8i supports incremental updates?

Views

45

Views

46

Views

47

Fundamentals

48

Index

49

Views

50

Triggers

51

Index

52

Index

53

Summary tables

54

55

56 57 58 59

Hash and composite partitioning techniques What are the constraints imposed on creating a column of 'LONG' datatype? What happens when you use a 'for update of clause' in a select stmt? How are data stored in a nested table? What are REF cursors? What is a star query? Give eg. There are 2 exceptions in a PL/SQL block. When will both the exceptions get executed? (Twisted) When do you use 'connect by prior' in a query? What is the difference between a translate and a replace of a string? Egs? What happens when you modify and recompile a procedure? What are bind variables?

Partition

Datatypes

Locks Nested tables PL/SQL Queries

60

PL/SQL to display records hierarchy tree level

61

Queries

62

String functions

63 64

Procedure PL/SQL

65

66

67

How will you find the byte size of a particular column? 'Select sysdate from dual' returns 5 records. What's the implication? How will you fetch the age of a person, given his DOB column in a table, using a simple query?

Numeric functions

Fundamentals

Date functions

Srl NO # Subject 1 Control M

Complexity Questions Average What is Control M?

Answers

2 Control M

Complex

Integerated Components of Enterprise/CS

Control-M is a multi-platform job scheduling and control system. It executes as a background activity and schedules, submits, tracks and follows up the execution of jobs. Used in conjunction with Enterprise Control Station (Enterprise/CS) it provides centralised workstation control of the job scheduling production environment. An instance of ControlM resides on each of the machines for which scheduling is required. Enterprise/CS resides on a Sun workstation and can control multiple instances of Control-M. Enterprise/CS is comprised of three integrated components which work in unison to provide centralised control of the entire job scheduling environment. 1. The first component, the data-centre, consists of one or more computers which are managed by one Control-M monitor. Enterprise/CS can control many data-centres of the same or different types of platforms. 2.The second component, a gateway, provides communication between data-centres and the Enterprise/CS workstation(s). 3.The third component, the Enterprise/CS Workstation, provides an easy-to-use graphical user interface and local SQL database, used to maintain all the data-centres.

3 Control M

Simple

Owner of the production file

controlled 'prod' user.

4 Control M

Average

General Structure of the HOME dorectory of the 'prod' user

5 Control M

6 Control M

Simple Average

What the environment variable CTM_ODATE mean?

Stages of execution

runlib - Storage area for all scripts and binaries used by a Control M controlled application overlib - Temporary area for emergency fixes rellib - Used as holding area prior to release into run library oldlib - Contains the previous version of any updated files. adhoc - Emergency one off runs INIT - Initialisation files : ksh.env, csh.env, INIT, pcp related files, etc. Order date for the job. 1. Control M checks the permissions of the file, comparing it with the job owner field. It copies the file, making a number of changes to the script. These changes are made so that ControlM can trace and post-process the job output. 2. Control-M switches user to the job owner, changes directory to the job owners HOME directory and executes the .profile/.cshrc scripts. 3. Main script startup 4. The Parameter Construction Program (PCP) is used to create a file of options, parameters and other configuration information, some of which may change depending on the date. 5. Main script execution 6.Control M - Final processing The Parameter Construction Program should be used to create any variable configuration, parameters or startup code required by a group of scripts.

7 Control M

Simple

PCP

8 Control M 9 Control M 10 Control M

Average Average Simple

How do you call a sql? How do you call a Informatica session? What is RIT?

Call the oracle login instances and giving the sql script as a parameter Using pmcmd command in the script It's a Run time Information Template. It tell us the information about the control M job reg. Its scheduling time, Inputs reqired, database which it is using, Whether it is doing Insert/ Update / Delete

Sl. No. Subject Complexity Questions 1 DataWareho simple what is a Data Warehouse? using

Answers

DataWareh 19 ousing Complex DataWareh 17 ousing Medium 35 DataWareh 18 ousing Medium


2 DataWareho simple using

What is the conventional definition of a DWH? Explain each term. Draw the architecture of a Datawarehousing system. What are the goals of the Data warehouse? What are the approaches in constructing a Datawarehouse and the datamart? Data Mart

A data warehouse is a relational database that is designed for query and analysis rather than for transaction processing. It usually contains historical data derived from transaction data, but it can include data from other sources. It separates analysis workload from transaction workload and enables an organization to consolidate data from several sources.
Subject-oriented, Integrated, Time-variant, Non-volatile. <Diagram>

Datawareho 25 using Medium Datawareho 30 using simple


14 DataWareho simple using

Top-down and Bottom-up approaches. A data structure that is optimized for access. It is designed to facilitate end-user analysis of data. It typically supports a single, analytic application used by a distinct set of workers. Yes. OLTP system, Legacy system, Files, Other sources. A database is an organized collection of information. -- A data warehouse is A very large database with special sets of tools to extract and cleanse data from operational systems and to analyze data. -- A data mart is A focused subset of A data warehouse that deals with A single area of data and is organized for quick analysis. A method by which multidimensional analysis occurs.

Can a datamart be independent? What are the sources for a datawarehouse? What the difference is between a database, a data warehouse and a data mart?

DataWareho simple using

OLAP (On-Line Analytical Processing)

DataWareho average/simple what do you mean by using Multidimensional Analysis?

The ability to manipulate information by a variety of relevant categories or dimensions to facilitate analysis and understanding of the underlying data. It is also sometimes referred to as drillingdown, drilling-across and slicing and dicing

42 40 20 OLAP Data 24 modelling


7

Medium

What is the difference between OLAP, ROLAP, MOLAP ,DOLAP? Difference between OLAP & OLTP? What are the different types of OLAP? Give an eg.

Medium

DataWareho simple using

ROLAP eg.BO, MOLAP eg.Cognos, HOLAP, DOLAP MultiDimensional Model. optimized for data warehouse, data mart and Which is the suitable data model online analytical processing (OLAP) applications. The main advantage of for a datawarehouse? Why? this database is query performance. Star Schema A means of aggregating data based on a set of known dimensions. It stores data multidimensionally in a two dimensional Relational Database Management System (RDBMS), such as Oracle.

13

DataWareho average/simple What are the benefits of STAR using SCHEMA?

Because its denormalized structure , i.e., Dimension Tables are denormalized. Why to denormalize means the first (and often only) answer is : speed. OLTP structure is designed for data inserts, updates, and deletes, but not data retrieval. Therefore, we can often squeeze some speed out of it by denormalizing some of the tables and having queries go against fewer tables. These queries are faster because they perform fewer joins to retrieve the same recordset. Joins are also confusing to many End users. By denormalizing, we can present the user with a view of the data that is far easier for them to understand. Benefits of STAR SCHEMA: Far fewer Tables. Designed for analysis across time. Simplifies joins. Less database space. Supports drilling in reports. Flexibility to meet business and technical needs.

16

DataWareho complex using

What are Additive Facts? Or what is meant by Additive Fact?

The fact tables are mostly very huge and almost never fetch a single record into our answer set. We fetch a very large number of records on which we then do, adding, counting, averaging, or taking the min or max. The most common of them is adding. Applications are simpler if they store facts in an additive format as often as possible. Thus, in the grocery example, we dont need to store the unit price. We compute the unit price by dividing the dollar sales by the unit sales whenever necessary.

DataWareho simple using

Snowflake Schema

Datawareho 32 using Complex 36 41 Normalizati 23 on Twisted 37 38 48 43 Normalizati 22 on simple


12

What is Galaxy schema? What is Dimension & Fact ? Different types of Dimensions Are the dimensional tables normalized? If so when? What is Transaction fact table & Centipede Fact table? Different types of Facts? What are the types of Factless fact tables? What is Granularity? Is the Fact table normalized?

An extension of the star schema by means of applying additional dimensions to the dimensions of a star schema in a relational environment. A set of fact tables with some mutual dimension tables is called galaxy schema.
Confirmed, Degenerate, Junk, Mini, Multivalued, Too-Many, Dirty customer, Demographic mini dimensions Yes. In snowflake schema, they are normalized.

Additive, semi-additive, non-additive Event tracking & coverage Granularity The level of detail of the facts stored in a data warehouse. Yes Yes

DataWareho average/simple Can 2 Fact Tables share same using dimensions Tables?

Project21 related Complex Datawareho 31 using Medium

Give egs. of the fact, dimensional tables, datamarts/DWH used in your project. Explain what data each contains. What are fact constellations? Multiple fact tables sharing the dimension tables.

15

DataWareho simple using

What is a Fact less fact table A factless fact table captures the many-to-many relationships between dimensions, but contains no numeric or textual facts. They are often used to ?
record events or coverage information. ( A fact which does not have any measures ) Common examples of factless fact tables include: o Identifying product promotion events (to determine promoted products that didnt sell) o Tracking student attendance or registration events o Tracking insurance-related accident events o Identifying building, facility, and equipment schedules for a hospital or University.

Datawareho 27 using simple


9 DataWareho simple using

What is metadata? What is data quality?

Data that describes data and other structures, such as objects, business rules, and processes. Data quality (information quality) is defined as standardizing and consolidating customer and/or business data. By cleansing/enhancing the data and combining related records to avoid duplicate entries, youre able to create a single record view. Within Informatica, this all takes place prior to the initial load to the target database as well as during the on-going data maintenance and updating processes. By Cleansing - The process of resolving inconsistencies and fixing the anomalies in source data, typically as part of the ETL process. System generated, artificial primary keys in alternative to the natural keys like SSN etc. Erwin, Embarcedaro, Rational Rose, Oracle Designer. Views storing pre-computed results are called materialized views. No.

28 ETL 46 Datawareho 29 using Datawareho 26 using Datawareho 33 using Datawareho 34 using 44

simple

How do you achieve data quality? What is Parsing & Data Mining. What are surrogate keys? Name a few data modelling tools. Materialized views? Can you insert into materialized views? Definition of Adhoc Queries? What is ODS (Operational Data Store), DSS (Decision support System), Data Staging Area, Data Presentation Area.

Medium simple Medium Medium

45

47
49

What is Market-Basket analysis? DataWareho average/simple SCD Types


using

Type 1 : Keep Most recent Values in Target Type 2 : Keep a full history of changes in the target Type 3 : Keep the current and previous values in the target. A means of visually representing multidimensional data. Partition, aggregation, indexing..

DataWareho simple using

what is a Hypercube?

11

DataWareho complex/average Explain the performance using improvement techniques in

DW?
To slice and dice is to break a body of information down into smaller parts or to examine it from different viewpoints so that you can understand it better. This term can be compared to drill down, which is the process of dividing an information area up into finer and finer layers in a hierarchy, but with the purpose of narrowing in to one small area or item.

Explain slice and dice ?

Você também pode gostar