Deployment
Question:
Question:
Question:
Question:
Question:
Question:
Question:
SSMS?
Required indicates that the container starts a transaction, unless one is already started by its
parent container. If a transaction already exists, the container joins the transaction. For
example, if a package that is not configured to support transactions includes a Sequence
container that uses the Required option, the Sequence container would start its own
transaction. If the package were configured to use the Required option, the Sequence
container would join the package transaction.
Supported indicates that the container does not start a transaction, but joins any transaction
started by its parent container. For example, if a package with four Execute SQL tasks starts a
transaction and all four tasks use the Supported option, the database updates performed by
the Execute SQL tasks are rolled back if any task fails. If the package does not start a
transaction, the four Execute SQL tasks are not bound by a transaction, and no database
updates except the ones performed by the failed task are rolled back.
NotSupported indicates that the container does not start a transaction or join an existing
transaction. A transaction started by a parent container does not affect child containers that
have been configured to not support transactions. For example, if a package is configured to
start a transaction and a For Loop container in the package uses the NotSupported option,
none of the tasks in the For Loop can roll back if they fail.
means if there is failure in data-flow task it will rerun the data-flow task again. For example there is
data-flow task where out of 50000 records 20000 transferred in to destination. At this point a general
error occurs and fails the data-flow task. Now what will checkpoint do will the data-flow continue for
rest records or it will start from new when package restart. Answer simply entire data-flow task will
restart from beginning.
Difference between Control flow and Data flow
Difference between control flow and data flow:
Control flow is for designing the flow of package. Dataflow if for ETL process.
There will be only one control flow while multiple dataflow can exists.
Control flow is the main window or interface of the package where we design entire flow i.e. Control
Flow depicts the flow of execution of task.
All the tasks in any packages are subset of control flow. So all this indicates that a package can have
only one control flow. All process base tasks are part of control flow while ETL related tasks are the
part of Dataflow which is again a subset of control flow.
For Loop and For Each Loop
For Loop and For Each loop both are used for looping the object or tasks in SSIS package. But both of
them work differently.
For Loop is like normal for loop where you defines the EVAL expression and task loops that no of
times. For example if you want to iterate some task 20 times it will loop for 20 times and then stop.
While For Each Loop works for object level let say we have a folder in which there are multiple files
and these files need be dumped into database. For this you need to iterate for each file which is
possible through for each loop task. For Each loop task will iterate for each file in the folder. You can
say its iterates for the collection. For each loop has multiple type of iterates.
What is Sequence Container?
Sequence Containers handle the flow of a subset of a package and can help you divide a
Package into smaller, more manageable pieces. Some nice applications that you can use
Sequence containers for include the following:
Grouping tasks so that you can disable a part of the package that s no longer needed
Managing the properties of multiple tasks in one step by setting the properties of the
Container
Using one method to ensure that multiple tasks have to execute successfully before the next
task executes
Creating a transaction across a series of data - related tasks, but not on the entire package
Creating event handlers on a single container, wherein you could send an email if anything
inside one container fails and perhaps page if anything else fails
The Execute SQL Task can be used for many sorts of things, like
To call stored procedures to perform business logic against sets of staged data.
The output from this can be obtained as recordset, multiple variables and other multiple
sources.
Difference between Execute TSQL Task and Execute SQL Task
In SSIS there is one tasks Execute TSQL task which is similar to Execute SQL task. Will see
what is the difference between two.
Execute TSQL Task
supported
Faster performance
Comparatively low
The SQL Server Analysis Services Execute DDL Task is the Analysis Services equivalent of the
Execute
SQL Task, but limited in scope to issuing Data Definition Language statements. The task simply
executes a DDL statement against an Analysis Services system. Typically, you would use DDL
statements to create a cube, a dimension, or any other online analytical processing (OLAP) object.
To configure the task, go to the DDL tab and select the Connection Manager that you wish to
execute the DDL statement against in the Connection option. Then in the Source Type property,
select whether the DDL statement will be directly inputted, pulled from a file, or pulled from a
variable option.
Essentially the source type option determines whether you need to key in the DDL statement
directly, provide a variable, or point to a file where the DDL statement is stored.
SSIS Interview : Data Profiling Task
Data profiling is the process of analyzing the source data to better understand what condition the
data
is in, in terms of cleanliness, patterns, number of nulls, and so on. In fact, you probably have done
data profiling before with scripts and spreadsheets, but perhaps you didn t realize that it was called
data profiling The output of the Data Profiling Task will be used to help you in your development and
design of the ETL and dimensional structures in your solution. Periodically, you may want to re - run
the Data Profile Task to see how the data has changed, but the package you develop will not include
the task in the overall recurring ETL process.
ON-ERROR event defined for it. When an error occurs, the event handler is immediately invoked for
the event defined at the failing task level. ON-ERROR events defined within a data flow (red line to a
defined task) may be configured to not fail the load and execute any defined tasks prior to going to
the next row. If no error-handling event is defined within a data flow or the error occurs in the
processes flow, control is transferred to the next highest level of the package (ie. The container
level). If an ON-ERROR event is defined there, that code is executed, then control is raised up the
chain until the package ON-EVENT is reached. Once control leaves a data flow for an ON-ERROR
event, the package will not return to the data flow.
What is a data viewer in SSIS and its uses?
Data viewers are grids that can be added to any data line within the Data Flow. Bu using the data
viewer you can debug the package at run time by viewing the data
How to configure package properties at runtime?
By using configuration feature you can doing it run time. For this there are multiple methods.
What to insert a new column in the dataset data flow?
By using derived column you can insert new column in dataset.
What is a multicast?
A dataflow transformation that multiply the single dataset into multiple output as per the
requirement.
Multicast More Detail
Explain star schema, snowflake schema, fact and dimension table?
What is lookup transformation?
Name the two Integration Services Security Properties.
Which task will you use in a package to find corrupt or incomplete information in data?
What is the alternative for Data driven query task from DTS in SSIS?
What are some ways in which a connection task can be set dynamically within an SSIS
package?
What is a UDL and what advantages does it have?
Universal Data Link defines a data source. Advantages are portability, so that moving
packages from environments is easier since data source information is stored in the UDL on
each machine. For UDLs should you use Windows or SQL Server authentication? Since the
UDL is an unencrypted text file you should use Windows Authentication otherwise the stored
password is not secure.
What is ragged right format in flat files?
Flat files with spaces at the end of the specifications are typically difficult to process in some
ETL platforms. The Ragged Right option in SSIS provides a way to handle these easily without having
to run the file through a Script Task to put a character into a consistent spot, or having the
origination system reformat their extract files.