Pages

Tuesday 12 January 2016

SSIS REAL TIME INTERVIEW QUESTIONS AND ANSWERS

SSIS ARCHITECTURE

1. Explain architecture of SSIS?
SSIS architecture consists of four key parts:
a) Integration Services service: monitors running Integration Services packages and manages the storage of packages.
b) Integration Services object model: includes managed API for accessing Integration Services tools, command-line utilities, and custom applications.
c) Integration Services runtime and run-time executables: it saves the layout of packages, runs packages, and provides support for logging, breakpoints, configuration, connections, and transactions. The Integration Services run-time executables are the package, containers, tasks, and event handlers that Integration Services includes, and custom tasks.
d) Data flow engine: provides the in-memory buffers that move data from source to destination.

     2.    What is SSIS? How it related with SQL Server.
SQL Server Integration Services (SSIS) is a component of SQL Server which can be used to perform a wide range of Data Migration and ETL operations. SSIS is a component in MSBI process of SQL Server.
This is a platform for Integration and Workflow applications. It is known for a fast and flexible OLTP and OLAP extensions used for data extraction, transformation, and loading (ETL). The tool may also be used to automate maintenance of SQL Server databases and multidimensional data sets.

3.       What are the differences between DTS and SSIS ?
Data Transformation Services                     SQL Server Integration Services
Limited Error Handling                                   Complex and powerful Error Handling
Message Boxes in ActiveX Scripts                             Message Boxes in .NET Scripting
No Deployment Wizard                                 Interactive Deployment Wizard
Limited Set of Transformation                    Good number of Transformations
NO BI functionality                                                          Complete BI Integration

4.       What is a workflow in SSIS ?
Workflow is a set of instructions on to specify the Program Executor on how to execute tasks and containers within SSIS Packages.

5.       Which SSIS versions You have worked on?
Differences between 2005 and 2008 are not very big so 2005, 2008 or 2008 R2 experience usually is very similar. The big difference is with 2000 which had DTS and it very different (SSIS is created from scratch)

6.       Have you used or what do you mean by SSIS Framework?
This is common term in SSIS world which just means that you have templates that are set up to perform routine tasks like logging, error handling etc. Yes answer would usually indicate experienced person, no answer is still fine if your project is not very mission critical.
7.       How have you attended any training SSIS.
The thing is that most people who read good books have usually an advantage over those who hasn't because they know what they know and they know what they don't know (but they know it exists and is available)…. Blog/Articles very in quality so best practice articles is a big plus+, conferences can be also a plus.

8.       SSIS certifications?
Comment: This is rather disappointing point for me. Qualifications generally are welcome but unfortunately many people simply cheat. Companies run courses and then give questions and answers, or people find them on the internet. I've met people who had certification but knew very little, I've met people very experienced and knowledgeable without certification and people who have done certification for their self-satisfaction and are experienced and knowledgeable. In other words be careful with certification…. It is easy to get a misleading impression so make sure you ask the best questions for the position you can.

9.       I am going to build the package what are the steps we have to do first?



10.   Staging area?
It is a temporary data storage location. Where various data T/R activities take place. A staging area is a kitchen of data warehouse.

11.   Where do you get the data from?

12.   Import & export wizard?
a) Easiest method to move data from sources like oracle, db2, sql server.
Right click on database name->goto task->import and export wizard
Select the source
Select the destination
Query copy of tables
Execute
Finish

13. What are new features in SSIS 2008?
Ans: With the release of SQL SERVER 2008 comes improved SSIS 2008.
1) Improved Parallelism of Execution Trees:
The biggest performance improvement in the SSIS 2008 is incorporation of parallelism in the processing of execution tree. In SSIS 2005, each execution tree used a single thread whereas in SSIS 2008 , the Data flow engine is redesigned to utilize multiple threads and take advantage of dynamic scheduling to execute multiple components in parallel, including components within the same execution tree
2) Any .NET language for Scripting:
SSIS 2008 is incorporated with new Visual Studio Tool for Application(VSTA) scripting engine. Advantage of VSTA is it enables user to use any .NET language for scripting.
3) New ADO.NET Source and Destination Component:
SSIS 2008 gets a new Source and Destination Component for ADO.NET Record sets.
4) Improved Lookup Transformation:
In SSIS 2008, the Lookuo Transformation has faster cache loading and lookup operations. It has new caching options, including the ability for the reference dataset to use a cache file(.caw) accessed by the Cache Connectin Manager. In addition same cache can be shared between multiple Lookup Transformations.
5) New Data Profiling Task:
SSIS 2008 has a new debugging aid Data Profiling Task that can help user analyze the data flows occurring in the package.In many cases, execution errors are caused by unexpected variations in the data that is being transferred. The Data Profiling Task can help users to discover the cource of these errors by giving better visibility into the data flow.

6) New Connections Project Wizard:
One of the main usability enhancement to SSIS 2008 is the new Connections Project
Wizard. The Connections Project Wizard guides user through the steps required to create source and destinations.

14. What are the main component of SSIS(project-architecture)?
SSIS archItecture has 4 main components
1.ssis service
2.ssis runtime engine & runtime executables
3.ssis dataflow engine & dataflow components
4.ssis clients

15. What is SSIS Designer?
It is a graphical tool for creating packages. It has 4 tabs: Control Flow, Data Flow, Event Handlers and Package Explorer.

1.       What is a package?
A discrete executable unit of work composed of a collection of control flow and other objects, including data sources, transformations, process sequence, and rules, errors and event handling, and data destinations.

2.       What is the control flow?
A control flow consists of one or more tasks and containers that execute when the package runs. To control order or define the conditions for running the next task or container in the package control flow, we use precedence constraints to connect the tasks and containers in a package. A subset of tasks and containers can also be grouped and run repeatedly as a unit within the package control flow. SQL Server 2005 Integration Services (SSIS) provides three different types of control flow elements: Containers that provide structures in packages, Tasks that provide functionality, and Precedence Constraints that connect the executables, containers, and tasks into an ordered control flow.

3.       What is a data flow?
A data flow consists of the sources and destinations that extract and load data, the transformations that modify and extend data, and the paths that link sources, transformations, and destinations The Data Flow task is the executable within the SSIS package that creates, orders, and runs the data flow. A separate instance of the data flow engine is opened for each Data Flow task in a package. Data Sources, Transformations, and Data Destinations are the three important categories in the Data Flow

4.       WHAT'S THE DIFFERENCE BETWEEN CONTROL FLOW AND DATA FLOW?
Control Flow:
1.       Process Oriented
2.       Doesn’t manage or pass data between components.
3.       It functions as a task coordinator
4.       In control flow tasks requires completion (Success, failure or completion)
5.       Synchronous in nature, this means, task requires completion before moving to next task. If the tasks are not connected with each other but still they are synchronous in nature.
6.       Tasks can be executed both parallel and serially
7.       Three types of control flow elements in SSIS 2005
•         Containers: Provides structures in the packages
•         Tasks: Provides functionality in the packages
•         Precedence Constraints: Connects containers, executables and tasks into an ordered control flow.
8.       We can control the sequence execution for tasks and also specify the conditions that tasks and containers run.
9.       It is possible to include nested containers as SSIS Architecture supports nesting of the containers. Control flow can include multiple levels of nested containers.
Data Flow

1.            Streaming in nature
2.            Information oriented
3.            Passes data between other components
4.            Transformations work together to manage and process data. This means first set of data from the source may be in the final destination step while at the same time other set of data is still flowing. All the transformations are doing work at the same time.
5.            Three types of Data Flow components
 Sources: Extracts data from the various sources (Database, Text Files etc)
•                     Transformations: Cleans, modify, merge and summarizes the data
                       Destination: Loads data into destinations like database, files or in memory datasets

5.       What are the different types of data sources available in SSIS?
There are 7 types of data sources provided by SSIS: a.) Data Reader source b.) Excel source c.) Flat file source d.) OLEDB source e.) Raw file source f.) XML source g.) Script component

6.       What is the function of Event handlers tab in SSIS?
On the Event handlers tab, workflows can be configured to respond to package events.
For example, we can configure Work Flow when ANY task Failes or Stops or Starts ..

7.       What is the function of Package explorer tab in SSIS?
This tab provides an explorer view of the package. You can see what is happening in the package. The Package is a container at the top of the hierarchy.

8.       What is Solution Explorer?
It is a place in SSIS Designer where all the projects, Data Sources, Data Source Views and other miscellaneous files can be viewed and accessed for modification

9.       What are Connection Managers?
It is a bridge b/w package object and physical data. It provides logical representation of a connection at design time the properties of the connection mgr describes the physical connection that integration services creates when the package is run.

10.   Explain ODBC Connection manager?
How do you create connection manager for flat file?

11.   Difference between 32 bit and 64 bit in ssis?

12.   How Many connection Managers would be there If I am fetching record from 10 different excel ?

13.   How Many connection Managers would be there if I am fetching records from 2 Different tables of same database?

14.   How to configure Dynamic connection strings in SSIS Package? Take some scenario and explain?


15.   Explain use of Expression builder?
The Expression Builder dialog box provides several tools to help you create your expressions:
•             The upper-left window lists the system and user-defined variables that can be used in your expressions.
•             The upper-right window lists the functions and operators that you can include in your expressions.
•             The Expression window provides a workspace for creating your expressions. You can drag variables, functions, and operators from the two upper windows into the workspace.
•             The Evaluate Expression button launches the logic necessary to evaluate the expression in the Expression window. If the expression can be evaluated, the results of that evaluation are displayed in the Evaluated value window. If the expression cannot be evaluated, a message window appears and displays details about the expression. Sometimes the message is useful in determining why your expression could not be evaluated

31. Can you name 5 or more of the native SSIS connection managers?
1) OLEDB connection – Used to connect to any data source requiring an OLEDB connection (i.e.,
SQL Server 2000)
2) Flat file connection – Used to make a connection to a single file in the File System. Required for reading information from a File System flat file
3) ADO.Net connection – Uses the .Net Provider to make a connection to SQL Server 2005 or other
connection exposed through managed code (like C#) in a custom task
4) Analysis Services connection – Used to make a connection to an Analysis Services database or project. Required for the Analysis Services DDL Task and Analysis Services Processing Task
5) File connection – Used to reference a file or folder. The options are to either use or create a file or folder
6) Excel

32. What are variables and what is variable scope ?
Variables store values that a SSIS package and its containers, tasks, and event handlers can use at run time. The scripts in the Script task and the Script component can also use variables. The precedence constraints that sequence tasks and containers into a workflow can use variables when their constraint definitions include expressions. Integration Services supports two types of variables: user-defined variables and system variables. User-defined variables are defined by package developers, and system variables are defined by Integration Services. You can create as many user-defined variables as a package requires, but you cannot create additional system variables.

33. How many types of variable scopes?
               
34. How would you pass a variable value to Child Package?

35. How can we pass one package variable to another package variable?

36. Can you name some of the core SSIS components in the Business Intelligence Development Studio you work with on a regular basis when building an SSIS package?
Connection Managers
Control Flow
Data Flow
Event Handlers
Variables window
Toolbox window
Output window
Logging
Package Configurations

37. Can you name 5 or more of the main SSIS tool box widgets and their functionality?
For Loop Container
Foreach Loop Container
Sequence Container
ActiveX Script Task
Analysis Services Execute DDL Task
Analysis Services Processing Task
Bulk Insert Task
Data Flow Task
Data Mining Query Task
Execute DTS 2000 Package Task
Execute Package Task
Execute Process Task
Execute SQL Task
etc.

38. How to unzip a File in SSIS?
 The following is the process for Unzip a file in SSIS.

- Use Execute Process Task in the Control Flow Task.
- From BIDS, drag and drop an Execute Process Task to the control flow and configure.

In the Execute Process, perform the following configurations:

- Executable: The path of the application that is being used.
- Arguments: Need to supply the arguments to extract the zipped files. –o+ is the default parameter for overwriting files if they exist.
- Working Directory: The current directory for all process.



39. How many difference source and destinations have you used?
It is very common to get all kinds of sources so the more the person worked with the better for you. Common ones are SQL Server, CSV/TXT, Flat Files, Excel, Access, Oracle, MySQL but also Sales force, web data scrapping.

40. Isolation levels in ssis?

41. What are isolations in SSIS, and where u can use this?

42. Transaction support features in ssis?

43. SSIS Blocking and Non blocking transformation.
Data flow transformations in SSIS use memory/buffers in different ways.  The way a transformation uses memory can dramatically impact the performance of your package.  Transformation buffer usage can be classified into 3 categories: Non Blocking, Partially Blocking, and (Full) Blocking.

If you picture a data flow as a river, and transformation buffer usage as a dam in that river, here is the impact of your transformation on your data flow. 

•             A Non Blocking transformation is a dam that just lets the water spill over the top.  Other than perhaps a bit of a slow down the water (your data) proceeds on its way with very little delay
•             A Partially Blocking transformation is a dam that holds the water back until it reaches a certain volume , and then releases that volume of water downstream and then completely blocks the flow until that volume is achieved again.  Your data in this case, will stop, then start, then stop, then start over and over until all the data has moved through the transformation.  The downstream transformations end up starved for data during certain periods, and then flooded with data during other periods.  Clearly your downstream transformations will not be able to work as efficiently when this happens, and your entire package will slow down as a result.
•             A Blocking transformation is a dam that lets nothing through until the entire volume of the river has flowed into the dam.  Nothing is left to flow from upstream, and nothing has been passed downstream.  Then once the transformation is finished, it releases all the data downstream.  Clearly for a large dataset this can be extremely memory intensive.  Additionally, if all the transforms in your package are just waiting for data, your package is going to run much more slowly.
Generally speaking if you can avoid Blocking and Partially Blocking transactions, your package will simply perform better.  If you think about it a bit, you will probably be able to figure out which transformations fall into which category.  Here is a quick list for your reference:

Non Blocking
•             Audit
•             Character Map
•             Conditional Split
•             Copy Column
•             Data Conversion
•             Derived Column
•             Import Column
•             Lookup
•             Multicast
•             Percentage sampling
•             Row count
•             Row sampling
•             Script component
Partially Blocking
•             Data mining
•             Merge
•             Merge Join
•             Pivot/Unpivot
•             Term Extraction
•             Term Lookup
•             Union All
Blocking
•             Aggregate
•             Fuzzy Grouping
•             Fuzzy Lookup
•             Sort
Facts :
Sort is a fully blocking transformation.
A Merge transform requires a Sort, but a Union All does not, use a Union All when you can.

44. Difference between synchronous and asynchronous data transmission
To understand the difference between a synchronous and an asynchronous transformation in Integration Services, it is easiest to start with an understanding of a synchronous transformation. If a synchronous transformation does not meet your needs, your design might require an asynchronous transformation.
Synchronous Transformations: A synchronous transformation processes incoming rows and passes them on in the data flow one row at a time. Output is synchronous with input, meaning that it occurs at the same time. Therefore, to process a given row, the transformation does not need information about other rows in the data set. In the actual implementation, rows are grouped into buffers as they pass from one component to the next, but these buffers are transparent to the user, and you can assume that each row is processed separately.
An example of a synchronous transformation is the Data Conversion transformation. For each incoming row, it converts the value in the specified column and sends the row on its way. Each discrete conversion operation is independent of all the other rows in the data set.
In Integration Services scripting and programming, you specify a synchronous transformation by looking up the ID of a component's input and assigning it to the SynchronousInputID property of the component's outputs. This tells the data flow engine to process each row from the input and send each row automatically to the specified outputs. If you want every row to go to every output, you do not have to write any additional code to output the data. If you use the ExclusionGroupproperty to specify that rows should only go to one or another of a group of outputs, as in the Conditional Split transformation, you must call the DirectRow method to select the appropriate destination for each row. When you have an error output, you must call DirectErrorRow to send rows with problems to the error output instead of the default output.
Asynchronous Transformations: requires an asynchronous transformation when it is not possible to process each row independently of all other rows. In other words, you cannot pass each row along in the data flow as it is processed, but instead must output data asynchronously, or at a different time, than the input. For example, the following scenarios require an asynchronous transformation:
•             The component has to acquire multiple buffers of data before it can perform its processing. An example is the Sort transformation, where the component has to process the complete set of rows in a single operation.
•             The component has to combine rows from multiple inputs. An example is the Merge transformation, where the component has to examine multiple rows from each input and then merge them in sorted order.
•             There is no one-to-one correspondence between input rows and output rows. An example is the Aggregate transformation, where the component has to add a row to the output to hold the computed aggregate values.
In Integration Services scripting and programming, you specify an asynchronous transformation by assigning a value of 0 to the Synchronous Input ID property of the component's outputs. . This tells the data flow engine not to send each row automatically to the outputs. Then you must write code to send each row explicitly to the appropriate output by adding it to the new output buffer that is created for the output of an asynchronous transformation.
                 Note: Since a source component must also explicitly add each row that it reads from the data source to its output buffers, a source resembles a transformation with asynchronous outputs.
It would also be possible to create an asynchronous transformation that emulates a synchronous transformation by explicitly copying each input row to the output. By using this approach, you could rename columns or convert data types or formats. However this approach degrades performance. You can achieve the same results with better performance by using built-in Integration Services components, such as Copy Column or Data Conversion.

45. You may get a question stating a scenario and then asking you how would you create a package for that e.g. How would you configure a data flow task so that it can transfer data to different table based on the city name in a source table column?

46. What is Execution Tree?
Execution trees demonstrate how package uses buffers and threads. At run time, the data flow engine breaks down Data Flow task operations into execution trees. These execution trees specify how buffers and threads are allocated in the package. Each tree creates a new buffer and may execute on a different thread. When a new buffer is created such as when a partially blocking or blocking transformation is added to the pipeline, additional memory is required to handle the data transformation and each new tree may also give you an additional worker thread.

47. How to Generate an Auto Incremental Number in a SSIS Package?
SSIS package does not support any function to generate auto incremental numbers. A script component can be used for the designated task. The steps are as follows:

1. Drag and drop the Script Document to the Data flow and select the Script Component Type as Transformation.
2. Double click the Script Component.
3. Select the column which is to pass through the script component, in the Input Columns tab.
4. Add a column with an integer data type, in the Inputs and Outputs tab.

48. What is Ignore Failure option in SSIS?
In Ignore Failure option, the error will be ignored and the data row will be directed to continue on the next transformation. Let’s say you have some JUNK data(wrong type of data or JUNK data) flowing from source, then using this option in SSIS we can REDIRECT the junk data records to another transformation instead of FAILING the package. This helps to MOVE only valid data to destination and JUNK can be captured into separate file.

49. How do you eliminate quotes from being uploaded from a flat file to SQL Server?
This can be done using TEXT QUALIFIER property. In the SSIS package on the Flat File Connection Manager Editor, enter quotes into the Text qualifier field then preview the data to ensure the quotes are not included

50. What are the delimiters in flat file?

51. How will you calculate an Income Tax for all Female employees using SSIS component?
52. Diff b/w script task & script component and its advantages.
Script task is control flow level item where as script component is data flow level item, both of the functionalities are same. This 2 are very powerful items in SSIS.
Normally we can implement custom code by using these components.
By using this two items we can perform any action like DML operations on the data from DB, file and we can do any operation using c# or vb.net code we can use it as Source, destination as well. In single sentence i can conclude the usage of this items we can use to perform any ETL operation if you are good at .net.)
53. What is a Master package.

54. Have you worked with data source view in ssis.

55. You can simply say ‘i never used so far
Question Difficulty = Moderate
Question– True or False:
SSIS has a default Means to log all records updated, deleted or inserted on a per table basis.
Answer: False, but a custom solution can be built to meet these needs.

56. I have excel sheet I want to send good data one table and bad data to another table can you give me answer

57. What are the command line tools? to execute SQL Server Integration Services packages?
 DTSEXECUI – When this command line tool is run a user interface is loaded in order to configure each of the applicable parameters to execute an SSIS package.
DTEXEC – This is a pure command line tool where all of the needed switches must be passed into the command for successful execution of the SSIS package.


58. How are variables useful in ssis package?
Variables can provide communication among objects in the package. Variables can provide communication between parent and child packages. Variables can also be used in expressions and scripts. This helps in providing dynamic values to tasks

59. If we create variable in package level can we use that in task level?


60. What are the techniques for taking care of ETL PERFORMANCE?
One of the of the things we could do is Data Source Tuning
Relational data sources, whether SQL Server or any other database product, rely on server optimization for peak performance. There are several SSIS features that make this process as efficient as possible, but there is only so much you can do within Integration Services to make queries run as fast as possible. Apply standard database optimization techniques, which might include:
•             Designing tables with indexes to support sorting and query joins.
•             Creating database objects such as views, stored procedures, and user-defined functions to encapsulate complex queries.
•             Minimizing the use of multi-table joins, outer joins, unions, and subqueries where possible.
•             Saving index statistics and execute queries ahead of time to cache execution plans.
•             Using nondefault locking options to optimize queries when concurrent user access isn't required.
To           Do This
Set FastParse on a flat file source             Right-click the Flat File Source adapter and choose Show Advanced Editor.
Use the Input and Output Properties tab to set properties for each of the compatible Output Columns.
Enable FastLoad for an OLE DB destination           Open the connection manager properties and select the Advanced properties page. Set the AccessMode property to OpenRowset Using Fastload.
Change DefaultBufferMaxRows and DefaultBufferSize In the Control Flow pane, select a data flow that you want to set. Right-click and click Properties to open the Properties pane. In the Misc category, change DefaultBufferMaxRows and DefaultBufferSize.
Add a log event to BufferSize Tuning      Select a package you want to log. Go to the SSIS menu in Visual Studio. Select Logging and add a new log as SSIS log provider for Windows Event Log. Select the new log you create, and then choose the package and data flow you want to log. On the Details tab, in the right window, select BufferSize Tuning. Click OK. On the View menu of Visual Studio, select Event Logs under Other Windows.

61. How to identify which record uploaded when in the fact table (Suppose same data uploaded with different version on the same date)  ?
Use the auditing table table described in the audit system Question 6 to check this information.

62. If I get the data from business 110 flat files, all files have same structure. I want to load all files data into a single table? Then what can I do?

63. I load the 2 different flat files data into 2 different tables then how may connections are needed?

64. What is the process of fine tuning a query ?

65. Give example of handling data quality issues?
 Data Quality is almost always a problem and SSIS handles it very well. Examples include importing customers from different sources where customer name can be duplicates. For instance you can have as company name: SQL Server Business Intelligence but also SQL Server BI or SQL Server BI LTD or SQL Server BI Limited or intelligence (with one l). There are different ways to handle it. Robust and time consuming is to create a table with or possible scenarios and update it after each update. You can also use fuzzy grouping which is usually easy to implement and will make usually very good decisions but it is not 100% accurate so this approach has to be justified. Other typical quality issues are nulls (missing values), outliers (dates like 2999 or types like 50000 instead of 5000 especially important if someone is adjusting the value to get bigger bonus), incorrect addresses and these are either corrected during ETL, ignored, re-directed for further manual updates or it fails the packages which for big processes is usually not practised.



66. How to insert new and update existing records using SSIS?
We often need in the incremental load of various tables (from source to destination) that old records must be updated and new records inserted.
Step 1: Finding the columns of the source tables from which we can determine that a particular records is a new record or it is the old one.
For e.g. I am taking a Student (Source) table. It's structure is:
By looking at it's table structure we easily find that we can determine whether a record is old/new by the createdate and modidate.
New record -> Createdate = Modidate
Old Record -> Createdate <> Modidate

Step 2: Create an SSIS Package
•             Open BIDS
•             File – New Project
•             Name - InsertUpdate
•             Click Ok
Step 3: Add Oledb connection for source and destination
•             Right click on connection manager pane and select new OLE DB Connection
•             Enter Server name or IP and then select database name
 •            Click on Test Connection
•             Click OK.
 •            Repeat step (a) to step (d) to create an OLE DB connection for the destination
Step 4: Add a dataflow task into package
Step 5: Rename it to Student_incr
Step 6: Add three variable of the package level scope
Date_From : Int32,
Date_To: Int32
Query_Student: String
Set the value of package variable as shown above.
Here Query_Student variable will contain the SQL incremental query:
"SELECT * from Student WHERE (CAST(CONVERT(VARCHAR(10), Createdate, 111) AS DATETIME) >= CAST(CONVERT(VARCHAR(10), DATEADD(Day, "+(DT_WSTR,50)@[User::Days_From]+", GETDATE()), 111) AS DATETIME)) AND (CAST(CONVERT(VARCHAR(10), Createdate, 111) AS DATETIME) < CAST(CONVERT(VARCHAR(10),DATEADD(Day, "+(DT_WSTR,50)@[User::Days_To]+", GETDATE()), 111) AS DATETIME))"
Paste this query in the expression property of the Query_Student variable
Step 7: Double click Student_incr dataflow task
•             Drag and drop OLE DB Source onto the Package
•             Right click on the OLE DB Source and then select edit
•             Set properties as shown following:
•             Click Ok.
•             Drag and drop Conditional Split component onto the package
•             Connect it to OLE DB Source and then right click on it and then select edit
•             Make two mutually exclusive condition as shown
•             Click ok.
•             Drag and drop OLE DB destination and OLE DB Command components onto the package
•             Connect OLE DB destination and OLE DB Command to Conditinal split.
Insert -> OLE DB destination
Update -> OLE DB Command
•             Right click on the OLE DB destination and select Edit and then set properties
as shown below
•             Map the column on the mapping page and then click ok.
•             Create a stored procedure in the destination database named
"UpdateStudentProc" which has the following definition
This procedure will update the existing records and will insert the new ones.
•             Right click on OLE DB Command and then select edit
•             In the connection manager, select localhost.destination
•             In the Component Properties set as
•             In the Column mappings tab map the output column to parameters of UpdateStudentProc and then click ok.

67. Can you explain the SQL Server Integration Services functionality in Management Studio?
 You have the ability to do the following:
Login to the SQL Server Integration Services instance
View the SSIS log
View the packages that are currently running on that instance
Browse the packages stored in MSDB or the file system
Import or export packages
Delete packages
Run packages

68. What are Business Logic Handlers?
Business logic handlers are written in managed code and allow us to execute custom business logic during the merge synchronization. We can invoke the business logic handler in case of non-conflicting data changes. Business logic handler can perform one of the following three actions.
•         Reject Data
•         Accept Data
•         Apply Custom Data



69. What is Data Mining?
Mining is “the process of extracting valid, authentic, and actionable information from large databases.” Microsoft data mining tools are different from traditional data mining applications in significant ways. Data Mining is a platform for developing intelligent applications, not a stand-alone application. You can build custom applications that are intelligent because the data mining models are easily accessible to the outside world. Further, the model is extensible so that third parties can add custom algorithms to support particular mining needs.

70. What is MARS?
Multiple Active Result Sets (MARS) is a feature that works with SQL Server to allow the execution of multiple batches on a single connection. When MARS is enabled for use with SQL Server, each command object used adds a session to the connection

71. How do you do incremental load?
Fastest way to do incremental load is by using Timestamp column in source table and then storing last ETL timestamp, In ETL process pick all the rows having Timestamp greater than the stored Timestamp so as to pick only new and updated records

72. decremental loading?

73. How to handle Late Arriving Dimension or Early Arriving Facts.
Late arriving dimensions sometime get unavoidable 'coz delay or error in Dimension ETL or may be due to logic of ETL. To handle Late Arriving facts, we can create dummy Dimension with natural/business key and keep rest of the attributes as null or default.  And as soon as Actual dimension arrives, the dummy dimension is updated with Type 1 change. These are also known as Inferred Dimensions.

74. How to achieve parallelism in SSIS?
Parallelism is achieved using MaxConcurrentExecutable property of the package. Its default is -1 and is calculated as number of processors + 2.

75. When to use Stored Procedures?
This is for preparing tables (truncate), audit tasks (usually part of SSIS framework), getting configuration values for loops and a few other general tasks.
During ETL extract you usually type simple SQL because it comes from other sources and usually over complication is not a good choice (make it dynamic) because any changes usually affect the package which has to be updated as well.
During Transformation phase (business rules, cleaning, core work) you should use Transformation tasks not Stored procedures! There are loads of tasks that make the package much easier to develop but also a very important reason is readability which is very important for other people who need to change the package and obviously it reduces risks of making errors. Performance is usually very good with SSIS as it is memory/flow based approach. So when to use Stored Procedures for transformations? If you don't have strong SSIS developers or you have performance reasons to do it. In some cases SPs can be much faster (usually it only applies to very large datasets). Most important is have reasons which approach is better for the situation.

76. What is your approach for ETL with data warehouses (how many packages you developer during typical load etc.)?
Comment: This is rather generic question. A typical approach (for me) when building ETL is to. Have a package to extract data per source with extract specific transformations (lookups, business rules, cleaning) and loads data into staging table. Then a package do a simple merge from staging to data warehouse (Stored Procedure) or a package that takes data from staging and performs extra work before loading to data warehouse. I prefer the first one and due to this approach I occasionally consider having extract stage (as well as stage phase) which gives me more flexibility with transformation (per source) and makes it simpler to follow (not everything in one go). So to summarize you usually have package per source and one package per data warehouse table destination. There are might be other approach valid as well so ask for reasons
Parallelism in SQL Server Integration Services
Parallelism is a great technique to improve the performance of your data integration operations. SSIS natively supports the parallel execution of packages, tasks, and transformations. The trick to successful parallelism is to configure operations within the constraints of your system resources.
Within SSIS, the control flow for each package is controlled by a setting called MaxConcurrentExecutables, which specifies the maximum number of SSIS threads that can execute in parallel per package. By default, this is set to -1, which translates to the number of logical machine processors plus 2.

77. How to quickly load data into sql server table?
 Fast Load option. This option is not set by default so most developers know this answer as otherwise the load is very slow.

78. How do you apply business rules in SSIS (Transformations….Specific calculations but also cleansing)?
 Some people use SSIS only to extract data and then go with stored procedures only….they are usually missing the point of the power of SSIS. Which allows to create "a flow" and on each step applies certain rules this greatly simplifies the ETL process and simplicity is very good.

79. How Do You Check Data Quality in a ETL Process
Look for evidence that the extract executed correctly. The most obvious metric is the count of rows in the extract. If there are  zero rows, abort fact table processing. Design the package to throw an error condition, unless this is a source for which zero activity is plausible. You can apply increasingly stringent tests. It’s probably not sufficient to test  for zero rows: Instead, test for whether the count of rows today is within several standard deviations of the expected daily row count. Another test is to compare row counts from the beginning and end of the transformation process to make sure you didn’t drop any rows. You may also want to sum the sales activity for the day, for comparison to an expected value. Apply these simple tests immediately after the extract and transformation steps, before loading the data into the data warehouse database.

80. Can we use temp table in ssis?
 Yes, we can use temp table in ssis.

81. Buffer oriented package?
Behind the scenes in SSIS, the data flow engine uses a buffer-oriented architecture to efficiently load and manipulate datasets in memory.  The benefit of this in-memory processing is that you do not need to physically copy and stage data at each step of the data integration.  Rather, the data flow engine manipulates data as it is transferred from source to destination.


82. Data pipeline?
The memory based, multithreaded, buffered t/r process flow data through an SSIS data flow task during package execution.

83. How do you upgrade an SSIS Package?
 Depending on the complexity of the package, one or two techniques are typically used:
1) Recode the package based on the functionality in SQL Server DTS
2) Use the Migrate DTS 2000 Package wizard in BIDS then recode any portion of the package that is not accurate

84. I want to store the sql table into flat file destination what is the process?

85. I want to store excel data into sql server, excel file has char data type value what will you do?

86. I have one package in d(d drive) folder I want move that package in to e(e drive) folder how to move the package?

87. What is parallel execution in ssis?

88. What is the size of your data in flat file/oltp ?
we do not use much flat file...only code mapping purpose we will use it max 5k and for loading into the database it will take interns of seconds only..

 Want to insert a text file into database table, but during the upload want to change a column called as months – January, Feb, etc to a code, – 1,2,3.. .This code can be read from another database table called months. After the conversion of the data , upload the file. If there are any errors, write to error table. Then for all errors, read errors from database, create a file, and mail it to the supervisor.

89. How would you accomplish this task in SSIS?

90. What is optimizing packages?

91. Where are SSIS package stored in the SQL Server?
MSDB.sysdtspackages90 stores the actual content and ssydtscategories, sysdtslog90, sysdtspackagefolders90, sysdtspackagelog, sysdtssteplog, and sysdtstasklog do the supporting roles.

92. how to achieve performance tuning in ssis and how to create dimension tables using lookup.
Performance Tuning in ssis
1. If you are Flat File Source try to put FastParse Option to True...In advance properties for Int,date data types
2. Try to increse packet size in OLEDB connection....
3. Use Fastload in destination...u will see rapid change in speed
i didn't get what are the dimension tables excatly to create using lookup....In lookup try to use cache connection manager for better performance

93. Can you name five of the Perfmon counters for SSIS and the value they provide?
•             SQLServer:SSIS Service
•             SSIS Package Instances
•             SQLServer:SSIS Pipeline
•             BLOB bytes read
•             BLOB bytes written
•             BLOB files in use
•             Buffer memory
•             Buffers in use
•             Buffers spooled
•             Flat buffer memory
•             Flat buffers in use
•             Private buffer memory
•             Private buffers in use
•             Rows read
•             Rows written

94. What is XML if y component?
 It is 3rd party free component used rather frequently to output errors into XML field which saves development time
Design an ssis package to load first half records to 1 target while other half records to a separate target.
Delay Validation, Forced Execution         

95. Explain the validations of a package at runtime?

96. How to migrate Sql server 2005 Package to 2008 version
Upgrade DTS package to SSIS

97. How to track a variable in ssis?
Execute package outside BIDS

98. How are partitions done in SSIS?
Diff ways to Execute a Package

99. Microsoft office 2007 excel sheet supported by sql server 2005 or not?

100. What are the different types of Transaction Options?

101. Will trigger fire when inserting data through SSIS package?

102. How to Concat row data through ssis?

103. How do u populate 1st record to 1st target , 2nd record to 2nd  target ,3rd record to 3rd target  and 4th record to 1st target through ssis?

104. I have one ssis package. How to know the how much time take for executing this package and after improving the performance how to see the time?

105. I have two sources with two tables and one table is having data and another table having conditions how to use the conditions in the table?

106. In my source table having 1000 records from that I want move 10 to 990 rows then what I need to do?







Control Flow Elements

1.       Which are the different types of Control Flow components in SSIS?
The different types of Control Flow components are: Data Flow Tasks, SQL Server Tasks, Data Preparation Tasks, Work flow Tasks, Scripting Tasks, Analysis Services Tasks, Maintenance Tasks, Containers.

2.       What are containers? What are the different types of containers in SSIS?
Containers are objects that provide structures to packages and extra functionality to tasks. There are four types of containers in SSIS, they are: Foreach Loop Container, For Loop Container, Sequence Container and Task Host Container.

3.       Types of enumerators?
 SSIS provides 7 types of enumerators with foreach loop container.

   1) Foreach File enumerator to enumerate files in a folder. The enumerator can traverse subfolders.
   2) Foreach Item enumerator to enumerate items that are collections. For example, you can enumerate the names of executable and working directories that an Execute Process task uses.
   3) Foreach ADO enumerator to enumerate rows in tables.
   4) Foreach ADO.NET Schema Rowset enumerator to enumerate the schema information about a data source.
   5) Foreach From Variable enumerator to enumerate the enumerable object that a specified variable contains, it can be an array, an ADO.NET DataTable, an Integration Services enumerator, etc.
   6) Foreach Nodelist enumerator to enumerate the result set of an XML Path Language (XPath) expression.
   7) Foreach SMO enumerator to enumerate SQL Server Management Objects (SMO) objects. For example, you can enumerate and get a list of the tables in a SQL Server database.

4.       What are Precedence constraints?
Constraints that link executable, container, and tasks wIthin the package control flow and specify condItion that determine the sequence and condItions for determine whether executable run.

5.       Whar are the Two Categories of Control Flow tasks?
 Control Flow Items.
         Maintenance Plan tasks
          6.  Task ?
a) An individual unit of work.
Types:-
1. Active x script task
2. Analysis services execute DDL task
3. Analysis services processing task
4. Bulk insert task *
5. Data flow task *
6. Data mining query task
7. Execute Dts 2000 package task
8. Execute package task *
9. Execute process task
10. Execute sql task *
11. File system task
12. Ftp task
13. Message queue task
14. Script task *
15. Send mail task *
16. Web service task
17. Wmi data reader task
18. Wmi event task
19. Xml task

7. What is the use of Bulk Insert Task in SSIS?
Bulk Insert Task is used to upload large amount of data from flat files into Sql Server. It supports only OLE DB connections for destination database.

8.What is FTP Task and how to configure it?

8.       What is smtp server and what is the main purpose?

9.       What is the use of Transfer SQL Server Objects Task?

10.   What is Execute SQL Task?

11.   FTP Task:?

12.   How to configure ForEach Loop Container for each row in Execute SQL Task?

13.   Where will you see if error occurs in control flow?

14.   If error occurs precedence constraint stops or still runs?

15.   I have one package in d(d drive) folder I want move that package in to e(e drive) folder how to move the package?


Data Flow Transformations

1.       What is transformation?Where we use it? Can you explain where you used in your project did?

2.       What are the different types of Data flow components in SSIS?
There are 3 data flow components in SSIS.
1. Sources
2. Transformations
3. Destinations

3.       How many transformations can be there in one dataflow task?

4.        What are the Transformations available in SSIS?
AGGEGATE  - It applies aggregate functions to Record Sets to produce new output records from aggregated values.
AUDIT  - Adds Package and Task level Metadata - such as Machine Name, Execution Instance, Package Name, Package ID, etc..
CHARACTER MAP - Performs SQL Server level makes string data changes such as changing data from lower case to upper case.
CONDITIONAL SPLIT – Separates available input into separate output pipelines based on Boolean Expressions configured for each output.
COPY COLUMN - Add a copy of column to the output we can later transform the copy keeping the original for auditing.
DATA CONVERSION - Converts columns data types from one to another type. It stands for Explicit Column Conversion.
DATA MINING QUERY – Used to perform data mining query against analysis services and manage Predictions Graphs and Controls.
DERIVED COLUMN - Create a new (computed) column from given expressions.
EXPORT COLUMN – Used to export a Image specific column from the database to a flat file.
FUZZY GROUPING – Used for data cleansing by finding rows that are likely duplicates.
FUZZY LOOKUP -  Used for Pattern Matching and Ranking based on fuzzy logic.
IMPORT COLUMN - Reads image specific column from database onto a flat file.
LOOKUP - Performs the lookup (searching) of a given reference object set against a data source. It is used for exact matches only.
MERGE - Merges two sorted data sets into a single data set into a single data flow.
MERGE JOIN - Merges two data sets into a single dataset using a join junction.
MULTI CAST - Sends a copy of supplied Data Source onto multiple Destinations.
ROW COUNT - Stores the resulting row count from the data flow / transformation into a variable.
ROW SAMPLING - Captures sample data by using a row count of the total rows in dataflow specified by rows or percentage.
UNION ALL - Merge multiple data sets into a single dataset.
PIVOT – Used for Normalization of data sources to reduce analomolies by converting rows into columns
UNPIVOT – Used for demoralizing the data structure by converts columns into rows incase of building Data Warehouses.

5.       Lookup's are a key component in SQL Server Integration Services (SSIS). Explain its purpose?
 Data from two sources is combined by Lookup Transformation. There are matching fields from these sources. Case insensitive transformations is performed by the lookups. For the purpose of accessing additional information in relation to the tables is one of the purposes of lookups. Lookups can be used in data warehousing.
Lookups are used for the following purposes
- Data Cleansing
- Error Tolerance
- Data search in data warehouse
- Optimizations using cache modes.

6.       Which join does look up transformation refer to?

7.       What is Conditional Split transformation in SSIS?
This is just like IF condition which checks for the given condition and based on the condition evaluation, the output will be sent to the appropriate OUTPUT path. It has ONE input and MANY outputs. Conditional Split transformation is used to send paths to different outputs based on some conditions. For example, we can organize the transform for the students in a class who have marks greater than 40 to one path and the students who score less than 40 to another path.

8.       What is the use of Percentage Sampling transformation in SSIS?
Percentage Sampling transformation is generally used for data mining. This transformation builds a random sample of set of output rows by choosing specified percentage of input rows. For example if the input has 1000 rows and if I specify 10 as percentage sample then the transformation returns 10% of the RANDOM records from the input data.

9.       What is the use of Term Extraction transformation in SSIS?
Term Extraction transformation is used to extract nouns or noun phrases or both noun and noun phrases only from English text. It extracts terms from text in a transformation input column and then writes the terms to a transformation output column. It can be also used to find out the content of a dataset.

10.   Explain Aggregate Transformation in SSIS?
It aggregates data, similar you do in applying TSQL functions like Group By, Min, Max, Avg, and Count. For example you get total quantity and Total line item for each product in Aggregate Transformation Editor. First you determine input columns, then output column name in Output Alias table in datagrid, and also operations for each Output Alias in Operation columns of the same datagrid. Some of operation functions listed below :
• Group By
• Average
• Count
• Count Distinct : count distinct and non null column value
• Min, Max, Sum
In Advanced tab, you can do some optimization here, such as setting up Key Scale option (low, medium, high), Count Distinct scale option (low, medium, high), Auto Extend factor and Warn On Division By Zero. If you check Warn On Division By Zero, the component will give warning instead of error. Key Scale option will optimize transformation cache to certain number of key threshold. If you set it low, optimization will target to 500,000 keys written to cache, medium can handle up to 5 million keys, and high can handle up to 25 million keys, or you can specify particular number of keys here. Default value is unspecified. Similar to number of keys for Count Distinct scale option. It is used to optimize number of distinct value written to memory, default value is unspecified. Auto Extend Factor is used when you want some portion of memory is used for this component. Default value is 25% of memory.

11.   Explain Audit Transformation ?
It allows you to add auditing information as required in auditing world specified by HIPPA and Sarbanes-Oxley (SOX). Auditing options that you can add to transformed data through this transformation are :
1. Execution of Instance GUID : ID of execution instance of the package
2. PackageID : ID of the package
3. PackageName
4. VersionID : GUID version of the package
5. Execution StartTime
6. MachineName
7. UserName
8. TaskName
9. TaskID : uniqueidentifier type of the data flow task that contains audit transformation.

12.   Explain Character Map Transformation?
It transforms some character. It gives options whether output result will override the existing column or add to new column. If you define it as new column, specify new column name. Operations available here are:
1. Uppercase
2. Lowercase
3. Byte reversal : such as from 0×1234 to 0×4321
4. Full width
5. Half width
6. Hiragana/katakana/traditional Chinese/simplified Chinese
7. Linguistic casing

13.   Explain Copy column Transformation?
This component simply copies a column to another new column. Just like ALIAS Column in T-Sql.



14.   Explain Data conversion Transformation?
This component does conversion data type, similar to TSQL function CAST or CONVERT. If you wish to convery the data from one type to another then this is the best bet. But please make sure that you have COMPATABLE data in the column.

15.   Explain Data Mining query Transformation?
This component does prediction on the data or fills gap on it. Some good scenarios uses this component is:
1. Take some input columns as number of children, domestic income, and marital income to predict whether someone owns a house or not.
2. Take prediction what a customer would buy based analysis buying pattern on their shopping cart.
3. Filling blank data or default values when customer doesn’t fill some items in the questionnaire.

16.   Explain Derived column Transformation?
Derived column creates new column or put manipulation of several columns into new column. You can directly copy existing or create a new column using more than one column also.

17.   Explain Merge Transformation?
Merge transformation merges two paths into single path. It is useful when you want to break out data into path that handles errors after the errors are handled, the data are merge back into downstream or you want to merge 2 data sources. It is similar with Union All transformation, but Merge has some restrictions :
1. Data should be in sorted order
2. Data type , data length and other meta data attribute must be similar before merged.

18.   Explain Merge Join Transformation?
Merge Join transformation will merge output from 2 inputs and doing INNER or OUTER join on the data. But if you the data come from 1 OLEDB data source, it is better you join through SQL query rather than using Merge Join transformation. Merge Join is intended to join 2 different data source.
19.   WHAT IS THE MULTICAST SHAPE USED FOR?
The Multicast transformation distributes its input to one or more outputs. This transformation is similar to the Conditional Split transformation. Both transformations direct an input to multiple outputs. The difference between the two is that the Multicast transformation directs every row to every output, and the Conditional Split directs a row to a single output

20.   Explain Percentage and row sampling Transformations?
This transformation will take data from source and randomly sampling data. It gives you 2 outputs. First is selected data and second one is unselected data. It is used in situation where you train data mining model. These two are used to take the SAMPLE of data from the input data.

21.   Explain Sort Transformation?
This component will sort data, similar in TSQL command ORDER BY. Some transformations need sorted data.

22.   Explain Union all Transformation?
It works in opposite way to Merge transformation. It can take output from more than 2 input paths and combines into single output path.

      23.  Difference between Unionall and Merge Join?
a) Merge transformation can accept only two inputs whereas Union all can take more than two inputs
b) Data has to be sorted before Merge Transformation whereas Union all doesn't have any condition like that.

        24.Types of caches in look up?

21.   Types of connection managers in look up?


22.   What is slowly Changing Dimension?
SCD is Slowly Changing Dimension. As the name suggests, a dimension which changes slowly.
Type 1 (changing attribute): When the changes in any attribute or column overwrites the existing records.
Type 2 (historical attribute): when we need to maintain the history of records, whenever some particular column value changes.
Note :A third change tracking technique, called Type 3, keeps separate columns for both the old and new attribute values—sometimes called “alternate realities.” In our experience, Type 3 is less common because it involves changing the physical tables and is not very scalable.

23.   Where did you used scd?

24.   How can you configure scd?

25.   What is Change Data Capture?
Change data capture is an amazing feature in SQL Server 2008 that allows you to find changes and replicate updates, inserts and deletes to a new system.

26.   Whiteboard techniques you would use to for CDC (Change Data Capture)?
 If for some reason you’ve avoided using a whiteboard to show your ideas to this point then make sure you start on this question! For small amounts of data I may use the "Slowly Changing Dimension".
More often than not the data is too large to use in such a slow transform. I prefer to do a lookup on the key of the target table and rows that don’t match are obviously new rows that can be inserted. If they do match it’s possible they are updates or duplicates.
Determine this by using a conditional split comparing rows from the target to incoming rows. Send updates to a staging table that can then be updated in an Execute SQL Task.
Explain that putting updates in a staging table instead of updating using the OLE DB Command is much better for performance because the Execute SQL Task performs a bulk operation.



27.   Difference between Merge and Merge Join?

28.   Diff between Fuzzy Lookup and Look up?

29.   What are the most common transformations using in your project?

30.   I want to update the particular record then what can I do? Take with an example?


31.   What is the difference b/w Pivot and Unpivot Transformations?

32.   I want convert lowercase letters into uppercase how do you do?

33.   How to merge two names based on first two letters of the name?


34.   How do you convert data types instead of using data conversion transformation?

35.   I want convert rows into columns which transformation do you use?


36.   Power pivot ?

37.   How do we convert data type in SSIS?
The Data Conversion Transformation in SSIS converts the data type of an input column to a different data type

38.   WHAT SHAPE WOULD YOU USE TO CONCATENATE TWO INPUT FIELDS INTO A SINGLE OUTPUT FIELD?
Derived Column shape\Task can be used to concatenate columns

39.   How can you eliminate duplicates in SSIS?

40.   How do you eliminate duplicates data in excel destination?
41.   Difference between Full Cache and Partial Cache

42.   I want to load the data from sql to excel file run the package how do you know how many rows are loaded in excel destination?








Debugging, Error Handling, Logging, Breakpoints,
Event handler, Data Viewers and security

1.       What is Data Viewer and what are the different types of Data Viewers in SSIS?
A Data Viewer allows viewing data at a point of time at runtime. If data viewer is placed before and after the Aggregate transform, we can see data flowing to the transformation at the runtime and how it looks like after the transformation occurred. The different types of data viewers are:
1. Grid
2. Histogram
3. Scatter Plot
4. Column Chart
     2.  As per error handling in T/R, which one handle the better performance? Like fail component, redirect row or ignore failure?
a) Redirect row provides better performance for error handling.

    3. How would you do Error Handling?
A SSIS package could mainly have two types of errors
a) Procedure Error: Can be handled in Control flow through the precedence control and redirecting the execution flow.
b) Data Error: is handled in DATA FLOW TASK buy redirecting the data flow using Error Output of a component
     4. Can you explain how to setup a checkpoint file in SSIS?
The following items need to be configured on the properties tab for SSIS package:
CheckpointFileName – Specify the full path to the Checkpoint file that the package uses to save the value of package variables and log completed tasks. Rather than using a hard-coded path as shown above, it’s a good idea to use an expression that concatenates a path defined in a package variable and the package name.
CheckpointUsage – Determines if/how checkpoints are used. Choose from these options: Never(default), IfExists, or Always. Never indicates that you are not using Checkpoints. IfExists is the typical setting and implements the restart at the point of failure behavior. If a Checkpoint file is found it is used to restore package variable values and restart at the point of failure. If a Checkpoint file is not found the package starts execution with the first task. The Always choice raises an error if the Checkpoint file does not exist.
SaveCheckpoints – Choose from these options: True or False (default). You must select True to implement the Checkpoint behavior.

      5.What are the different values you can set for CheckpointUsage property ?
There are three values, which describe how a checkpoint file is used during package execution:
1) Never: The package will not use a checkpoint file and therefore will never restart.
2) If Exists: If a checkpoint file exists in the place you specified for the CheckpointFilename property, then it will be used, and the package will restart according to the checkpoints written.
3) Always: The package will always use a checkpoint file to restart, and if one does not exist, the package will fail.

6.       What is the ONLY Property you need to set on TASKS in order to configure CHECKPOINTS to RESTART package from failure?
The one property you have to set on the task is FailPackageOnFailure. This must be set for each task or container that you want to be the point for a checkpoint and restart. If you do not set this property to true and the task fails, no file will be written, and the next time you invoke the package, it will start from the beginning again.


7.       Where can we set the CHECKPOINTS, in DataFlow or ControlFlow ?
Checkpoints only happen at the Control Flow; it is not possible to checkpoint transformations or restart inside a Data Flow. The Data Flow Task can be a checkpoint, but it is treated as any other task.
Demonstrate or whiteboard how checkpoints work in a package.
When checkpoints are enabled on a package if the package fails it will save the point at which the package fails.  This way you can correct the problem then rerun from the point that it failed instead of rerunning the entire package.  The obvious benefit to this is if you load a million record file just before the package fails you don’t have to load it again.

8.       What is a breakpoint in SSIS? How is it setup? How do you disable it?
Answer: A breakpoint is a stopping point in the code. The breakpoint can give the Developer\DBA an opportunity to review the status of the data, variables and the overall status of the SSIS package.
There are 10 unique conditions exist for each breakpoint.
Breakpoints are setup in BIDS. In BIDS, navigate to the control flow interface. Right click on the object where you want to set the breakpoint and select the ‘Edit Breakpoints…’ option.

9.       How to Debug the package?
Double-click the package in which you want to set breakpoints. In SSIS Designer, do the following: To set breakpoints in the package object, click the Control Flow tab, place the cursor anywhere on the background of the design surface, right-click, and then click Edit Breakpoints.

10.   How to provide security to packages?

11.    How u track the error description?

12.    If the package fails, what steps u take

13.   How u skip the error records?
True or False
Using a checkpoint file in SSIS is just like issuing the CHECKPOINT command against the relational engine. It commits all of the data to the database.
Answer: False. SSIS provides a Checkpoint capability which allows a package to restart at the point of failure.

14.   How would you restart package from previous failure point?What are Checkpoints and how can we implement in SSIS?
When a package is configured to use checkpoints, information about package execution is written to a checkpoint file. When the failed package is rerun, the checkpoint file is used to restart the package from the point of failure. If the package runs successfully, the checkpoint file is deleted, and then re-created the next time that the package is run

15.   How do you do logging in SSIS
 SSIS includes logging features that write log entries when run-time events occur and can also write custom messages.Integration Services supports a diverse set of log providers, and gives you the ability to create custom log providers. The Integration Services log providers can write log entries to text files, SQL Server Profiler, SQL Server, Windows Event Log, or XML files.

      16.  How can u handle the errors through the help of logging in SSIS?
a) To create an on error event handler to which you add the log error execute sql task
Logs are associated with packages and are configured at the package level. Each task or container in a package can log information to any package log. The tasks and containers in a package can be enabled for logging even if the package itself is not.
To customize the logging of an event or custom message, Integration Services provides a schema of commonly logged information to include in log entries. The Integration Services log schema defines the information that you can log. You can select elements from the log schema for each log entry.
To enable logging in a package:
1). In Business Intelligence Development Studio, open the Integration Services project that contains the package you want.
2). On the SSIS menu, click Logging.
3). Select a log provider in the Provider type list, and then click Add.
17. How does Error-Handling work in SSIS?
When a data flow component applies a transformation to column data, extracts data from sources, or loads data into destinations, errors can occur. Errors frequently occur because of unexpected data values.
Type of typical Errors in SSIS:
-Data Connection Errors, which occur incase the connection manager cannot be initialized with the connection string. This applies to both Data Sources and Data Destinations along with Control Flows that use the Connection Strings.
-Data Transformation Errors, which occur while data is being transformed over a Data Pipeline from Source to Destination.
-Expression Evaluation errors, which occur if expressions that are evaluated at run time perform invalid

18. How to pass property value at Run time? How do you implement Package Configuration?
A property value like connection string for a Connection Manager can be passed to the pkg using package configurations.Package Configuration provides different options like XML File, Environment Variables, SQL Server Table, Registry Value or Parent package variable.
Logging in ssis-types of ssis (which table is fired in ssms)-(SYSSSISLOG TABLE)
Create SQL agent job to execute SSIS package
I am executing a package...there is an error row, in one of the rows.

19.I have one parent, child package in case the errors found child package how to handle that errors?

20. How do you handle this error.
Package failed in production...where will you look for the errors.

21. Three tasks are running in your package and 2 tasks are successfully executed and third task is failed, in this situation I need to rollback 2nd and 3rd tasks, so what can u do in SSIS package and sql server?
21. There are 10 records in a flat file source, among them 9 will be executed successfully and 10th record is failed, in this scenario I need to get all 10 records source level to target level, in target level then 10th record failure error will be displayed, what I need to do?



Configuration Files, SSIS Deployment,
Scheduling SSIS Packages and Jobs

1.       What are Package Configurations? SSIS

2. Can you explain different options for dynamic configurations in SSIS?
1) XML file
2) custom variables
3) Database per environment with the variables
4) Use a centralized database with all variables

3.How many types of configurations?
     XML Configuration File – Multiple values can be stored in an XML file on disk
      Environment Variable – A single value can be stored in a Windows Environment variable
      Registry Entry – A single value can be stored in a registry key
      Parent Package Variable – The parent package can pass a variable to the package which         contains    the configuration value
      SQL Server – Multiple values can be stored in a table on an SQL Server

1.       What is environment variable in SSIS?
An environment variable configuration sets a package property equal to the value in an environment variable.
Environmental configurations are useful for configuring properties that are dependent on the computer that is executing the package.

2.       If there are 100 Packages, do you create 100 configuration files or you create how many.
The answer is based on the requirement we will create 100 config files for 100     packages.If i go for master package and if i am using same kind of connections for     the child packages like source and destinations connections then we will create less     config  files, because Master Package will pass all the connections using master-         child relation using the variables. Creation of config files is dependence of the     requirement.

      6.  About multiple configurations?
a) It means including the xml configuration, environment variable, registry entry, parent package variable, SQL Server table, and direct and indirect configuration types.

       7.What configuration options have you used?
This is an important one. Configuration should always be dynamic and usually is done using XML and/or Environment Variable and SQL Table with all configurations.

8.How do you schedule ssis packages to run on the fly?
sql server and then select the package want to schedule.

1.       What is broad cast agent?
A broadcast agent allows automation of emails to be distributed. It allows reports to be sent to different business objects. It also users to choose the report format and send via SMS, fax, pagers etc. broadcast.............


2.       How to provide securIty to packages?
We can provide security in two ways
1. Package encryption
2. Password protection.

3.       What command line tools do you use with SSIS ?
Comment: dtutil (deployment), dtexec (execution), dtexecui (generation of execution code)

4.       What is the dtutil and name some of the functionality it provides?
Utility shipped with SQL Server 2005 Integration Services to copy, rename, move, delete and\or verify an SSIS package.

13. What is a logfile and how to send log file to mgr?
a) It is especially useful when the package has been deployed to the production environment, and you can not use BIDS and VSA to debug the package.
SSIS enables you to implement logging code through the Dts. Log method.
When the Dts. Log method is called in the script, the SSIS engine will route the message to the log providers that are configured in the containing package.

14. Command line utilities in ssis?Tell the utility to execute (run) the package?
a) In BIDS a package that can be executed in debug mode by using the debug menu or toolbar or from solution explorer.
In production, the package can be executed from the command line or from a Microsoft windows utility, or It can be scheduled for automated execution by using the sql server agent.
i).go to->debug menu and select the start debugging button
ii).press F5 key
iii).right click the package and choose execute package.
iv).command prompts utilities
a).DTExecUI
1. To open command prompt->run->type dtexecui->press enter
2. The execute package utilIty dialog box opens.
3. in that click execute to run the package.
WaIt until the package has executed successfully.
b).DTExec utilIty
1.open the command prompt window.
2.command prompt window->type dtexec/followed by the DTS,SQL,or file option and the package path ,including package name.
3.if the package encryption level is encrypt sensItive wIth password or encrypt all wIth password, use the decrypt option to provide the password.
If no password is included, dtexec will prompt you for the password.
4. Optionally, provide addItional command-line options
5. Press enter.
6. Optionally, view logging and reporting information before closing the command prompt window.
The execute package utilIty dialog box opens.
7. In the execute package utilIty dialog box, click execute package.
WaIt until the package has executed successfully.
v).using sql server mgmt studio to execute package
1. In SSMS right click a package, and then click run package.
Execute package utilIty opens.
2.       Execute the package as described previously.


15.What r the possible locations to save SSIS package?
You can save a package wherever you want.
SQL Server
Package Store
File System

16.   What is the difference between file system and sql server ( at the time of deployment)?

17.   How to Create deployment Utility
First step in deploying packages is to create a deployment utility for an Integration Services project. The deployment utility is a folder that contains the files you need to deploy the packages in an Integration Services project on a different server. The deployment utility is created on the computer on which the Integration Services project is stored.
You create a package deployment utility for an Integration Services project by first configuring the build process to create a deployment utility, and then building the project. When you build the project, all packages and package configurations in the project are automatically included. To deploy additional files such as a Readme file with the project, place the files in the Miscellaneous folder of the Integration Services project. When the project is built, these files are also automatically included.
 You can configure each project deployment differently. Before you build the project and create the package deployment utility, you can set the properties on the deployment utility to customize the way the packages in the project will be deployed. For example, you can specify whether package configurations can be updated when the project is deployed. To access the properties of an Integration Services project, right-click the project and click Properties.

The following table lists the deployment utility properties.
1. AllowConfigurationChange: A value that specifies whether configurations can be updated
during deployment.
2. CreateDeploymentUtility: A value that specifies whether a package deployment is created when the project is built. This property must be True to create a deployment utility.
3. DeploymentOutputPath: The location, relative to the Integration Services project, of the deployment utility.
When you build an Integration Services project, a manifest file, .SSISDeploymentManifest.xml, is created and added, together with copies of the project packages and package dependencies, to the bin\Deployment folder in the project, or to the location specified in the DeploymentOutputPath property. The manifest file lists the packages, the package configurations, and any miscellaneous files in the project.
The content of the deployment folder is refreshed every time that you build the project. This means that any file saved to this folder that is not copied to the folder again by the build process will be deleted. For example, package configuration files saved to the deployment folders will be deleted.

To create a package deployment utility

1.            In SQL Server Data Tools (SSDT), open the solution that contains the Integration Services project for which you want to create a package deployment utility.
2.            Right-click the project and click Properties.
3.            In the Property Pages dialog box, click Deployment Utility.
4.            To update package configurations when packages are deployed, set AllowConfigurationChanges to True.
5.            Set CreateDeploymentUtility to True.
6.            Optionally, update the location of the deployment utility by modifying the DeploymentOutputPath property.
7.            Click OK.
8.            In Solution Explorer, right-click the project, and then click Build.
9.            View the build progress and build errors in the Output window
After you’ve gone through these steps the next time you build your project it will create the file (YourProjectName).SSISDeploymentManifest. This file is located in the same folder as your packages in the bin\Deployment folder.
If you run this file it will open the Package Installation Wizard that will allow you to deploy all your packages that were located in the project to a desired location.

18.   What is Design time Deployment in SSIS ?
When you run a package from with in BIDS,it is built and temporarily deployed to the folder. By default the package will be deployed to the BIN folder in the Package’s Project folder and you can configure for custom folder for deployment. When the Package’s execution is completed and stopped in BIDS,the deployed package will be deleted and this is called as Design Time Deployment.

19.   I created one package with some file. I have diff servers having that package with diff configuration file. Is possible to execute that package in servers simultaneously?

20. How would you deploy a SSIS Package on production?
 A) Through Manifest
1. Create deployment utility by setting its propery as true .
2. It will be created in the bin folder of the solution as soon as package is build.
3. Copy all the files in the utility and use manifest file to deply it on the Prod.
B) Using DtsExec.exe utility
C) Import Package directly in MSDB from SSMS by logging in Integration Services

20.   New way of deployment in ssis 2012?

       21.  How to make changes in a package after deploying  into production?

22.Can we rename log file and transaction file names?

23.   What is the extension of deployment?
SSIS Development  
Other than the components already sent to you in the excel sheet concentrate on 
•             Control flow & Data Flow
•             Data Quality Check – This question has already been answered above
•             ETL Error handling
•             Package Configuration
•             Event Handler
•             Handling Multiple Database with Single SSIS Package
SSIS Deployment Process
Deployment Options
You can deploy packages either to the file system on the server or into the SQL Server database engine. The SQL Server deployment option writes the package content into the MSDB system database. This system database, which exists on every SQL Server, is also used to manage important system objects such as agent jobs, tasks, and backup information. The SQL Server deployment option is the most secure because everything is written to the database catalog rather than to the file system. Packages can be recovered by simply backing up and restoring the MSDB database.
Push Deployment
You can push a package to a server by running the Package Installation Wizard (either manually or by opening an .SSISDeploymentManifest file). You can also push a package from SQL Server to another server or to a .dtsx file from within SSMS. A convenient right-click menu option is available in SSMS to import or export a package between servers or package definition files. To push a package to another location, from Integration Services, under the File System or MSDB folder, simply right-click the package and select Export Package.
You have the option to export a deployed package to another SQL Server or to a package file in the file system. You can use the Import Package utility to set the same configuration options as in the BIDS package designer, setting the protection level and a package password.
Pull Deployment
You can also deploy a package from the server in a pull scenario by importing a package within SSMS. In the Stored Packages folder, right-click the server destination (either File System or MSDB) and select Import Package to launch the Import Package utility.
The Import Package dialog box options are nearly identical to those in the Export Package dialog box. You can import a deployed package from another SQL server or from a package file in the file system. Like the export option, you can also set the protection level and a package password.
Managing Packages on the SSIS Server
In the previous exercise, you deployed a package to the database server. In the next exercise, you will redeploy the package to the file system and to the MSDB database. You will execute a package from the file system and then monitor running packages.
Import the ImportCustomers Package to the File System
1.            In SSMS, verify that you are connected to Integration Services. If not, click the Connect button in the Object Explorer pane, select Integration Services, accept the default local server connection, and then click Connect.
2.            Expand the Stored Packages folder, right-click File System, and choose Import Package.
3.            Set the following properties:
o             Package Location: File System
o             Package Path: C:\Documents and Settings\<username>\My Documents\Microsoft Press\is2005sbs\Chap10\ImportCustomers\Mod10_Project.dtsx
4.            Click in the Package Name text box. This sets this property to the designer package name.
5.            Click the ellipsis button next to Protection Level. Note the value previously set in the package design. Leave this setting and click the Cancel button to close this dialog box.
6.            Click OK.
7.            Type the password password when prompted.
8.            Click OK.
                Tip          When you import to the File System option, Integration Services stores the package file in a known location on the server (in the \Microsoft SQL Server\90\DTS\Packages folder). You can then access the package without having to know the specific file location.
Import to MSDB
1.            Right-click MSDB and repeat the preceding steps to import the same package to the MSDB system database but, this time, choose SQL Server For Package Location in the Import Package dialog box.
                Note      If the package is already deployed, you will be prompted to overwrite it. Answer Yes if prompted.
2.            Complete the steps and note the new package listed on the tree.
Export a Deployed Package
1.            Find the ImportCustomers package in the SSMS Object Explorer under Stored Packages\MSDB.
2.            Right-click the package icon and choose Export Package.
3.            In the Export Package dialog box, select File System for Package Location.
4.            Click the Package Path ellipsis button.
5.            In the Save Package To File dialog box, select Desktop and leave all other defaults to save the package, using the default file name ImportCustomer.dtsx.
6.            Click Save to save the package file, and then click OK to save and close the Export Package dialog box.
Execute the File System Package
1.            View the computer's desktop and locate the   ImportCustomers.dtsx file.
2.            Double-click the file to open Execute Package Utility.
3.            Execute the package and view the execution progress. Depending on the speed of your computer, this might take only a few seconds or several minutes to complete. When completed, close the Package Execution Progress dialog box, and then close the Execute Package Utility dialog box.
Monitor Running Packages
1.            Repeat the preceding steps with SSMS and Package Execution Utility open in side-by-side windows.
2.            Start the package, and then open the Running Packages folder. If necessary, right-click and choose refresh to see the name of the running package.
                Note      The speed of your computer will determine how long this package runs. If the package finishes running before you have a chance to complete the preceding steps, you can extend the running time by creating duplicate copies of the input data files in the project's \Data subfolder. In Windows Explorer, select all of the data files; use the right-click menu to copy and paste options to create duplicate files. Repeat this step if necessary. There is no need to change the default file names.
3.            Click the package name on the tree to view the summary page for the package.
4.            Click the Report button on the Summary page toolbar.
                Note      Selecting the Report option in this view runs a Reporting Services report with summary and detail information about the current package execution.
                Note      Keep in mind that SSMS shows only the currently running packages. Some packages can complete in less than a second, and you might not be able to monitor these packages.
6.            Close the Execute Package Utility dialog box when completed
Setting the Protection Level of Packages
Defining Sensitive Information
In an Integration Services package, the following information is defined as sensitive:
•             The password part of a connection string. However, if you select an option that encrypts everything, the whole connection string will be considered sensitive.
•             The task-generated XML nodes that are tagged as sensitive. The tagging of XML nodes is controlled by Integration Services and cannot by changed by users.
•             Any variable that is marked as sensitive. The marking of variables is controlled by Integration Services.
Whether Integration Services considers a property sensitive depends on whether the developer of the Integration Services component, such as a connection manager or task, has designated the property as sensitive. Users cannot add properties to, nor can they remove properties from, the list of properties that are considered sensitive.
 Using Encryption
________________________________________

Encryption, as used by package protection levels, is performed by using the Microsoft Data Protection API (DPAPI), which is part of the Cryptography API (CryptoAPI).
The package protection levels that encrypt packages by using passwords require that you provide a password also. If you change the protection level from a level that does not use a password to one that does, you will be prompted for a password.
Also, for the protection levels that use a password, Integration Services uses the Triple DES cipher algorithm with a key length of 192 bits, available in the .NET Framework Class Library (FCL).

Protection Levels
1. Do not save sensitive (DontSaveSensitive)
  
Suppresses the values of sensitive properties in the package when the package is saved. This protection level does not encrypt, but instead it prevents properties that are marked sensitive from being saved with the package and therefore makes the sensitive data unavailable to other users. If a different user opens the package, the sensitive information is replaced with blanks and the user must provide the sensitive information.

When used with the dtutil utility (dtutil.exe), this protection level corresponds to the value of 0.

2. Encrypt all with password (EncryptAllWithPassword)   
Uses a password to encrypt the whole package. The package is encrypted by using a password that the user supplies when the package is created or exported. To open the package in SSIS Designer or run the package by using the dtexec command prompt utility, the user must provide the package password. Without the password the user cannot access or run the package.

When used with the dtutil utility, this protection level corresponds to the value of 3.

3. Encrypt all with user key (EncryptAllWithUserKey)    
Uses a key that is based on the current user profile to encrypt the whole package. Only the user who created or exported the package can open the package in SSIS Designer or run the package by using the dtexec command prompt utility.

When used with the dtutil utility, this protection level corresponds to the value of 4.
Note
For protection levels that use a user key, Integration Services uses DPAPI standards. For more information about DPAPI, see the MSDN Library at http://msdn.microsoft.com/library.
4. Encrypt sensitive with password (EncryptSensitiveWithPassword)   
Uses a password to encrypt only the values of sensitive properties in the package. DPAPI is used for this encryption. Sensitive data is saved as a part of the package, but that data is encrypted by using a password that the current user supplies when the package is created or exported. To open the package in SSIS Designer, the user must provide the package password. If the password is not provided, the package opens without the sensitive data and the current user must provide new values for sensitive data. If the user tries to execute the package without providing the password, package execution fails. For more information about passwords and command line execution, see dtexec Utility (SSIS Tool).

When used with the dtutil utility, this protection level corresponds to the value of 2.

5. Encrypt sensitive with user key (EncryptSensitiveWithUserKey)   
Uses a key that is based on the current user profile to encrypt only the values of sensitive properties in the package. Only the same user who uses the same profile can load the package. If a different user opens the package, the sensitive information is replaced with blanks and the current user must provide new values for the sensitive data. If the user attempts to execute the package, package execution fails. DPAPI is used for this encryption.

When used with the dtutil utility, this protection level corresponds to the value of 1.
Note For protection levels that use a user key, Integration Services uses DPAPI standards. For more information about DPAPI, see the MSDN Library at http://msdn.microsoft.com/library.

6. Rely on server storage for encryption (ServerStorage)   
Protects the whole package using SQL Server database roles. This option is supported only when a package is saved to the SQL Server msdb database. It is not supported when a package is saved to the file system from Business Intelligence Development Studio.
you change the protection level as listed in the following steps:
   1. During development, leave the protection level of packages set to the default value, EncryptSensitiveWithUserKey. This setting helps ensure that only the developer sees sensitive values in the package. Or, you can consider using EncryptAllWithUserKey, or DontSaveSensitive.
   2. When it is time to deploy the packages, you have to change the protection level to one that does not depend on the developer's user key. Therefore you typically have to select EncryptSensitiveWithPassword, or EncryptAllWithPassword. Encrypt the packages by assigning a temporary strong password that is also known to the operations team in the production environment.
   3. After the packages have been deployed to the production environment, the operations team can re-encrypt the deployed packages by assigning a strong password that is known only to them. Or, they can encrypt the deployed packages by selecting EncryptSensitiveWithUserKey or EncryptAllWithUserKey, and using the local credentials of the account that will run the packages.

24.   What is role as a SSIS Dev?
I need to develop ssis packages according to business rules and requirements.
in our company every thing we will do like creating the packages and configuring with config file..we are using configuration because its one time change in config will effect entire package.in production server connection string varies uploading into the server through accurev...
25.   tell me one critical situation u have faced when ur working with SSIS Packages?

a) sometimes I cannot upload the excel content to database table due to filed type mismatch

solution: conversion the data type transformation I have used....

b) sometimes I cannot upload the excel contect to database table due to some columns are getting null values so I have used script function to eliminate invalid data

c) configuration issues like I have 10 database.. so when ever database server changes I need to go each and every packages and change the server configuration so it’s difficult I have used configuration this is one time only....
26. What is the critical situation faced when you are doing SSIS packages?

27.   I have one package and that package is already scheduled is it possible to apply the transaction for that package?

28.   I developed one package how to know the whether the package having data or not?

29.   In my sql server one package is  there how to move  that package into some her server?

30.   I have one package that package scheduled by daily 6 am but the job is failed at Saturday  then what I need to do?(where we go how to resolve)

31.   How to schedule a package (Role of Sql Server Agent)

32.   Why we are using xml file configuration file?

33.   I have one package that package scheduled by daily 6 am but the job is failed at Saturday  then what I need to do?(where we go how to resolve)

34.   What is the difference between file system and sql server ( at the time of deployment)?

35.   How do you do dynamic path updations while deploying the package in production enverlment?

36.   How to provide security for the configuration file (xml package configuration file)?

37.   I created one package with some file. I have diff servers having that package with diff configuration file. Is possible to execute that package in servers simultaneously?

38.   How to deploy packages from one server to another server

39.   I have table like this
Sno        Sname
1,2          Sreenivas
3,4          Reddy
5,6          Raja
7,8          Reddy
I want like the following table
Sno        Sname
1              Sreenivas
2              Sreenivas
3              Reddy
4              Reddy
5              Raja
6              Raja
7                              Reddy
8              reddy
 in source table data having like this
Eno        Ename  Esloc      Deptno
1              Sreenu Hyd        10,20,30,40,50

I want like this
Eno        Ename  Esloc      Deptno
1              Sreenu Hyd        10
1              Sreenu Hyd        20
1              Sreenu Hyd        30
1              Sreenu Hyd        40
1              Sreenu Hyd        50
How to do this?

In ssis package I created a data ware house by using slowly change dimension.
Cname  Cadd      Status
Sreenu Bangalore            True
Sreenu Hyderabad          False
Sreenu Kadapa False
Sreenu Badvel  False
Sreenu Pml        false
From the above how to know second row?
Source:
Ename  EmpNo
Ename  EmpNo
Stev       100
Methew              100
John      101
Tom       101

Target:
Ename  EmpNo
2.            send Unique (Distinct) records into One target and duplicates into another tatget?
Source:
Ename  EmpNo
Stev       100
Stev       100
John      101
Mathew               102

Output:
Target_1:
Ename  EmpNo
Stev       100
John      101
Mathew               102

Target_2:
Ename  EmpNo
Stev       100

40.   We have a target source table containing 3 columns :
Col1, Col2 and Col3. There is only 1 row in the table as follows:

Col1Col2Col3
-----------------
 a      b      c
There is target table containg only 1 column Col. Design a mapping so that the target table contains 3 rows as follows:

Col
-----
a
b
c
3.            I have table like this
Sno        Sname
1,2          Sreenivas
3,4          Reddy
5,6          Raja
7,8          Reddy
I want like the following table
Sno        Sname
1              Sreenivas
2              Sreenivas
3                              Reddy
4              Reddy
5              Raja
6              Raja
7                              Reddy
8              reddy
41.   What type errors occurred commonly in your project and what are those names?

Source:
Ename  EmpNo
Stev       100
Stev       100
john       101
Mathew               102

Output:
Target_1:
Ename  EmpNo
Stev       100
John      101
Mathew               102

Target_2:
Ename  EmpNo
Stev       100

There is a source table that contains duplicate rows.Design a mapping to load all the unique rows in 1 target while all the duplicate rows (only 1 occurence) in another target.
There is a source table containing 2 columns Col1 and Col2 with data as follows:

Col1   Col2
 a          l
 b         p
 a         m
 a         n
 b         q
 x          y

Design a mapping to load a target table with following values from the above mentioned source:
Col1    Col2
  a        l,m,n
  b       p,q
  x        y

42.   suppose I have one folder with 5 file text files by using for each file enumerator we store the files in to one folder but suddenly tomorrow one file add to that folder how to store the file into same destination?

43.   Suppose I have one destination table with some data suddenly 2 excel files data want to insert into the destination table but how to know this data is already inserted into the destination and only new data is inserted into the destination?

44.   Tell me one complex packages in your project?(which task mostly we are used)

45.   T1-7 rows and T2-3 rows find out missing rows from table T1

46.   Explain the dynamic behavior of your project?


47.   How to access and execute the packages clients?

5 comments:

  1. Excellent Post..
    We wont see ever like this ...

    ReplyDelete
  2. I read this blog it was really superb Thanks for sharing valuable information keep share more content on MSBI Online Training Bangalore

    ReplyDelete
  3. Appreciate you sharing, great article post.Really looking forward to read more. Cool.
    mulesoft training

    ReplyDelete