You are on page 1of 13

SSIS QUESTIONS WITH SOLUTIONS

1Q.Components of SSIS? CDEPP

Control Flow (for storing containers and tasks)


Data Flow (Source, destination, and transformations)
Event Handler (for managing messages and e-mails)
Package Explorer (for offering an all-in-one view)
Parameters (for fostering user interaction)

2Q.Control flow vs data flow

Control flow

1.It helps in orchestrating workflows.


2.It is more process-oriented.
3.It can help in executing tasks either serially or parallelly.
4.It helps in processing data synchronously.
Data flow
1.It is more information-oriented, not based on processes.
2.It can group data together based on logic and transforming it into meaningful content.
3.Multiple data batches can be coordinated for effective processing.
4.Data is extracted from the source and loaded to the destination later.

3Q.Event handlers in SSIS

In SSIS (SQL Server Integration Services), an event handler is a mechanism that allows you to
define specific actions or workflows to execute in response to events during the ETL (Extract,
Transform, Load) process.These events can include package start, package completion, task
failure, and more. Event handlers help you manage errors, logging, notifications, or custom logic
by providing a way to respond dynamically to the state and progress of SSIS packages, ensuring
smoother data integration and transformation processes.

4Q.How you deploy the packages


1. In Visual Studio, with an Integration Services project open, select the package or packages
that you want to deploy.
2. Right-click and select Deploy Package.
3.Complete the wizard.
SSIS QUESTIONS WITH SOLUTIONS

5Q.Difference between package deployment and project deployed


Project deployment model
1.Project is deployed
2.Project uses parameters
3.Project is located in an .ispac file and packages have .dtsx extensions
4.Project is deployed to integration service catalog.
5.CLR Integration is required.
6.New environments in the SSIS catalog can be used with parameters.
7.Projects and packages can be validated before execution with T-SQL or Managed code.
8.Packages are executed with T-SQL. Parameters and environments can be set with T-SQL.
9.Robust logging is built in with several report.

Package deployment model


1.Package is deployed
2.Package uses Configurations files/tables
3.Packages have .dtsx extensions.
4.Packages are deployed to the MSDB or File.
5.CLR integration is not required.
6.System environment variables can be used with configuration.
7.Packages are validated just before execution and can be validated with dtexce or managed
code.
8.Packages are executed with dtexe and dtexecui. Command parameters can be passed to the
command prompt.
9.Logging is built in with no report.

6Q.Merge vs union all

merge

1.Merge Transformation always accepts sorted input data.

2.Merge Transformation only accepts two inputs.

3.Merge transformation will produce sorted output.

Union all

1.Union all no need to sort input.

2.Union all accepts multiple inputs.

3.Union all give unsorted data.


SSIS QUESTIONS WITH SOLUTIONS

7Q.How load multiple Excel sheets into on table

1.Create an SSIS Package


2.Create SSIS Variables
3.Foreach Loop Container - fetching multiple sheets from excel files.
4.Configure the Enumerator to "Foreach ADO.NET Schema Rowset Enumerator".
5.Create a Collection in the Foreach Loop Editor.
6.Foreach Loop Container Configure Schema
7.Map Variables in the Foreach Loop Container
8.Add a Data Flow Task inside the Foreach Loop Container.
9.Edit the Excel Source
10.Add OLE DB Destination Task
11.Execute the SSIS Package.
12.Review the Data

8Q.how to connect Oracle using ssis

On Connection Manager page, Oracle Source Editor dialog box is to select Oracle Database as
source, table, or view from the database.

In SQL Server Data Tools, open the SQL Server Integration Services (SSIS) package

that has the Oracle source. On the Data Flow tab, double-click the Oracle source

9Q.how you will configure the packages

1.Select the background of the Control Flow tab in SSIS Designer. This selection sets the scope
for the variable you create to the package.
2.On the SSIS menu, select Variables.
3.In the Variables window, select the Add Variable icon.
4.In the Name box, enter var FolderName.
5.Variable names are case-sensitive.
6.Verify that the Scope box shows the name of the package,
7.Set the value of the Data Type box of the var Folder Name variable to String.
8.Return to the Control Flow tab and double-click the For each File in Folder container.
9.On the Collection page of the For each Loop Editor, select Expressions and then select the
ellipsis button (...).
10.In the Property Expressions Editor, select in the Property list and then select Directory.
11.In the Expression box, select the ellipsis button (...).
12.In the Expression Builder, expand the Variables and Parameters folder and drag the variable
User::varFolderName to the Expression box.
SSIS QUESTIONS WITH SOLUTIONS

13.Select OK to exit the Expression Builder.


14.Select OK to exit the Property Expressions Editor.
15.Select OK to exit the Foreach Loop Editor.
16.Enable package configurations
On the Project Menu, select Convert to Package Deployment Model.
17.Select OK on the warning prompt and, once the conversion is complete, select OK in the
Convert to Package Deployment Model dialog box.
18.Select the background of the Control Flow tab in SSIS Designer.
19.On the SSIS menu, select Package Configurations.
20.In the Package Configurations Organizer dialog box, select Enable Package Configurations
and then select Add.
21.On the welcome page of the Package Configuration Wizard, select Next.
22.On the Select Configuration Type page, verify that the Configuration type is set to XML
configuration file.
23.On the Select Configuration Type page, select Browse.

24.The Select Configuration File Location dialog box opens to the project folder.
25.In the Select Configuration File Location dialog box, for File name enter SSISTutorial and
then select Save.
26.On the Select Configuration Type page, select Next.

27.On the Select Properties to Export page, in the Objects pane, expand Variables, expand
varFolderName, expand Properties and then select Value.

28.On the Select Properties to Export page, select Next.

29.On the Completing the Wizard page, enter a configuration name for the configuration, such as
SSIS Tutorial Directory configuration. The configuration name is displayed in the
Package Configuration Organizer dialog box.

SSIS stands for SQL Server Integration Services. SSIS is part of the Microsoft SQL
Server data software, used for many data migration tasks. It is basically an ETL tool that
is part of Microsoft's Business Intelligence Suite and is used mainly to achieve data
integration.
SSIS QUESTIONS WITH SOLUTIONS

What is SSRS and SSIS?


Although both SSIS (SQL Server Integration Services) and SSRS (SQL Server Reporting Services) are
parts of the SQL Server, they serve different purposes altogether. While SSIS is used for ETL, data
warehousing and data pumping, SSRS is used for Report building, Report Managing, and Report
Designing

Lookup transformations. As defined in the Microsoft Visual Studio SSIS toolbox, the Lookup component
is used to “join additional columns to the data flow by looking up values in a table”. This component uses
equality join to integrate the main data with the lookup table.

Deployment : Deploying is nothing but moving something from one place to another place. For
example let's say deploying doctors at rural areas for medical support. So same way ssis project
deployment is nothing but uploading / moving project to production server or main server.

1. In Visual Studio, with an Integration Services project open, select the package or
packages that you want to deploy.
2. Right-click and select Deploy Package. ...
3. Complete the wizard.

What are the package parameters in SSIS?

Package parameters allow you to modify package execution without having to edit and redeploy
the package. In SQL Server Data Tools you create, modify, or delete project parameters by using
the Project. params window. You create, modify, and delete package parameters by using the

Parameters tab in the SSIS Designer.

Integration Services (SSIS) parameters allow you to assign values to properties within packages
at the time of package execution. You can create project parameters at the project level and
package parameters at the package level

Join and Merge are two operations to combine data from several files. When merging, you are
combining several files with the same structure into a single listing. When joining, you are
combining several files with different data structure but with at least one common field.
SSIS QUESTIONS WITH SOLUTIONS

Lookup is used for comparing the data between two tables. But it will return the only first row of

the matched rows.

It does not take the duplicate records. It has a small reference dataset.

It requires only one input and produces the output.

Merge join return the all matched outputs like joins in SQL. It joins the large tables.

It takes the duplicate records in the output.

It requires two inputs. It produces the only one output.

In this, we have to sort the input records.

What are the basic SSIS transformations?


Row transformation in SSIS:

The character map transformation, copy column methods, data conversion, derived column,
export column, import column, script component transformation, and OLEDB command
transformation are used to perform row transformation in SSIS.
SQL Server Integration Services transformations are the components in the data flow of a
package that aggregate, merge, distribute, and modify data. Transformations can also perform
lookup operations and generate sample datasets

What is T-SQL vs SQL?

There are three distinct differences between the two. While T-SQL is an extension to SQL, SQL
is a programming language. T-SQL contains procedural programming and local variable, while
SQL does not. T-SQL is proprietary, while SQL is an open format.
SSIS QUESTIONS WITH SOLUTIONS

What is T-SQL used for?


T-SQL or Transact SQL is the query language specific to the Microsoft SQL Server product. It
can help perform operations like retrieving the data from a single row, inserting new rows, and
retrieving multiple rows. It is a procedural language that is used by the SQL.

What is the meaning of SQL?


Structured query language (SQL) is a programming language for storing and processing
information in a relational database. A relational database stores information in tabular form,
with rows and columns representing different data attributes and the various relationships
between the data values.

What is meant by MSBI?


MSBI stands for Microsoft Business Intelligence. This powerful suite is composed of tools
which helps in providing best solutions for Business Intelligence and Data Mining Queries.
Business intelligence software is a type of application software designed to retrieve, analyze,
transform and report data for business intelligence. The applications generally read data that has
been previously stored, often - though not necessarily - in a data warehouse or data mart

What is Microsoft data visualization?


Data visualization is the visual representation of data through graphics, such as charts or
animations. These visuals make complex data easier to understand.
SSIS QUESTIONS WITH SOLUTIONS

Defining data marts?

A data mart is a simple form of data warehouse focused on a single subject or line of business.
With a data mart, teams can access data and gain insights faster, because they don't have to spend
time searching within a more complex data warehouse or manually aggregating data from
different sources.

The DELETE command (DML) is used to delete particular records from a table. In delete yu can
roll back

The TRUNCATE command (DDL) is used to delete the complete data from the table.
IN truncate u cannot roll back .

SQL Server Analysis Services (SSAS) is a multidimensional online analytical processing


(OLAP) server and an analytics engine used for data mining. It allows IT professionals to break
up large volumes of data into more easily analyzed parts.

Agile Methodology, as the name suggests, is a set of methods and practices where software
development and project management take place to deliver customer-centric products in a short
development cycle known as sprints. Agile methodologies are open to changing requirements
over time and encourage constant feedback from end-users. It is the most popular approach
because, in this process, customers are also involved so that they can get updates regarding
their product and also make sure whether or not they are meeting their requirements.

Agile is a project management and software development approach that prioritizes flexibility,
collaboration, and customer feedback. It emphasizes iterative, incremental work, with frequent
reassessment and adaptation. Agile teams work in short cycles, or sprints, to deliver functional
increments, welcoming changing requirements even late in the project. Regular stakeholder
engagement and self-organizing teams are core principles. Popular frameworks like Scrum and
Kanban are commonly used in Agile. This methodology promotes faster product delivery, better
responsiveness to customer needs, and continuous improvement.

1. User Stories: Descriptive, user-focused requirements that outline specific functionality.


2. Product Backlog: A prioritized list of features, tasks, or user stories.
3. Sprint Backlog: The subset of items from the product backlog selected for a particular
sprint.
4. Burndown Charts: Visual representations of work remaining in a sprint.
5. Kanban Boards: Visual task boards that show the progress of work items.
6. Scrum Boards: Used in Scrum to track tasks in progress, with columns like "To Do," "In
Progress," and "Done."
7. Daily Standup Meetings: Brief, daily team meetings to discuss progress and issues.
8. Velocity Charts: Measure the team's work rate over time.
SSIS QUESTIONS WITH SOLUTIONS

9. Retrospectives: Regular meetings to reflect on the team's performance and identify


areas for improvement.
10. Continuous Integration/Continuous Delivery (CI/CD) Tools: Automation tools for
building, testing, and deploying code continuously.
11. Version Control Systems: Such as Git, to manage code changes and collaboration.
12. Issue Tracking and Project Management Tools: Jira, Trello, Asana, or similar tools for
managing tasks and projects.
13. Collaboration Software: Slack, Microsoft Teams, or other communication tools to
facilitate team interaction.
14. Testing Tools: For automated testing and ensuring quality, like Selenium or JUnit.
15. Burrup Charts: Track completed work and work scope over time.
16. Agile Project Management Software: Tools like Agilefant, Targetprocess, or Version
One designed specifically for Agile project management.
17. Customer Feedback and User Testing Tools: For gathering user feedback and
conducting usability testing.
18. Documentation Tools: Wikis, Confluence, or other tools for maintaining project
documentation.
19. Estimation Tools: Techniques like Planning Poker or tools for story point estimation.
20. Continuous Improvement Tools: Tools and techniques to support retrospectives and
process improvement.

These tools and practices help Agile teams manage their projects, communicate
effectively, and deliver value to customers in a collaborative and adaptive manner. The
specific tools used can vary depending on the Agile framework and the team's needs.

Agile methodologies typically include several ceremonies or events that help


teams collaborate, plan, and review their work throughout a project's lifecycle.
Some common ceremonies in Agile include:

1. Sprint Planning: This meeting marks the beginning of a sprint (typically a 2-4
week time frame) and involves the team selecting and committing to a set of
user stories or tasks from the product backlog.
2. Daily Standup (Daily Scrum): A brief, daily meeting where team members
share what they did yesterday, what they plan to do today, and any obstacles
they're facing. It promotes transparency and coordination.
SSIS QUESTIONS WITH SOLUTIONS

3. Sprint Review: At the end of a sprint, the team presents the work they've
completed to stakeholders, such as product owners and customers. It provides
an opportunity for feedback and discussion.
4. Sprint Retrospective: Also held at the end of a sprint, this meeting allows the
team to reflect on their process and identify areas for improvement. It focuses
on how to work more efficiently in the next sprint.
5. Backlog Refinement (Grooming): This ongoing activity involves reviewing
and updating the product backlog, clarifying user stories, and ensuring that
the backlog remains well-prioritized and ready for future sprints.
6. Release Planning: This high-level planning event involves setting goals for
multiple sprints or releases. It helps to provide a strategic view of the project
and aligns the team with long-term objectives.
7. Product Increment Review: A broader review that occurs when a significant
product increment is ready for evaluation. It might involve stakeholders and
may occur at intervals beyond individual sprint reviews.
8. Big Room Planning: A collaborative event where large Agile teams come
together to plan and coordinate their work, especially in frameworks like SAFe
(Scaled Agile Framework).
9. Demo (Show-and-Tell): A less formal presentation of completed work to
stakeholders and team members, often used in addition to sprint reviews to
share progress more frequently.
10.Value Stream Mapping: In Lean Agile methodologies, teams may use value
stream mapping to identify and optimize the value delivery process across the
organization.

These ceremonies promote transparency, collaboration, and continuous


improvement, allowing Agile teams to adapt to changing requirements and
deliver value to customers in an iterative and incremental manner. The specific
ceremonies and their frequency can vary based on the Agile framework being
used (e.g., Scrum, Kanban, Lean, etc.) and the team's preferences.

Performance tuning in SQL is the process of optimizing the execution of SQL queries
and database operations to improve their speed and efficiency. Here are some key
strategies and techniques for SQL performance tuning:
SSIS QUESTIONS WITH SOLUTIONS

1. Indexing: Properly designed and maintained indexes can significantly improve query
performance. Identify columns that are frequently used in WHERE clauses and JOIN
conditions and create indexes on them. However, don't over-index, as it can slow down
data modification operations.
2. Query Optimization: Write efficient SQL queries. Avoid using SELECT *, which retrieves
all columns, and only select the columns you need. Use WHERE clauses to filter data
early in the query execution process. Understand how the database's query optimizer
works and use query execution plans to identify bottlenecks.
3. Normalization and Denormalization: Normalize your database to reduce data
redundancy and maintain data integrity. However, in some cases, denormalization may
be necessary for performance reasons, such as creating summary tables or caching
computed values.
4. Database Design: Carefully design your database schema, taking into account the
expected workload and access patterns. Properly structure tables, use appropriate data
types, and create relationships between tables efficiently.
5. Partitioning: If your database contains large tables, consider partitioning them to
improve query performance. Partitioning involves splitting a table into smaller, more
manageable pieces based on a specific criterion (e.g., date or range).
6. Caching: Implement caching mechanisms to store frequently accessed data in memory,
reducing the need to repeatedly query the database. Popular caching solutions include
Redis and Memcached.
7. Stored Procedures: Use stored procedures to encapsulate frequently executed SQL
code. Stored procedures can be precompiled and cached, resulting in faster execution.
8. Concurrency Control: Optimize your locking and isolation strategies to prevent
contention issues, such as deadlocks. Use appropriate isolation levels to balance data
consistency and performance.
9. Hardware and Infrastructure: Ensure your database server has adequate hardware
resources (CPU, memory, and storage) to handle the expected workload. Also, consider
using solid-state drives (SSDs) for faster I/O.
10. Monitoring and Profiling: Implement monitoring tools to track query performance and
resource usage. Profiling can help you identify slow queries and bottlenecks, allowing
you to focus your optimization efforts effectively.
11. Indexes and Statistics Maintenance: Regularly update and rebuild indexes and
statistics to keep them accurate and up to date. Outdated statistics can lead to poor
query plans.
12. Database Optimization Tools: Many database management systems provide built-in
performance optimization tools and features. For example, Microsoft SQL Server has the
Database Engine Tuning Advisor, and Oracle Database has the SQL Tuning Advisor.
SSIS QUESTIONS WITH SOLUTIONS

13. Database Version and Patches: Ensure you are using the latest version of your
database management system and apply relevant patches and updates, as vendors
often release performance improvements and bug fixes.

SQL performance tuning is an ongoing process that requires continuous monitoring and
adjustment as the database workload evolves. It's essential to analyze query
performance, identify bottlenecks, and apply the appropriate strategies to optimize your
SQL database for efficiency and speed.

In SQL Server Integration Services (SSIS), environment variables are dynamic values that can be
configured externally, allowing packages to adapt to different environments without code
changes. These variables store settings, such as connection strings, and can be set at runtime,
promoting flexibility and reusability in ETL processes.

To configure environment variables in an SSIS package, follow these steps:

1. Create an Environment: Open SQL Server Data Tools (SSDT) or SQL Server
Management Studio (SSMS), go to the Integration Services Catalog, and
create an environment for your SSIS project.
2. Create Environment Variables: Within the environment, define the variables
and assign values specific to each environment (e.g., development, testing,
production).
3. Assign Variables to Packages: In your SSIS package, open the package
configurations. Add the environment variables to your package and specify
the environment to which they belong.
4. Use Variables in Package: In your SSIS package, use the variables to
configure settings like connection strings, file paths, or other dynamic values.
These values will be determined by the environment at runtime.
5. Deployment: Deploy your SSIS package to SQL Server and reference the
appropriate environment when running the package.

By configuring SSIS package environment variables, you can make your ETL
processes adaptable to different deployment environments while maintaining
a single package design.
SSIS QUESTIONS WITH SOLUTIONS

You might also like