Content deleted Content added
→Features of the data flow task: [[File:SSIS workflow.png|thumb|An example of a SQL Server Integration Services (SSIS) workflow, by visually programming the steps needed to transform data from source to destination.|alt=Diagram with seven nodes. 1: OLE DB Source (Source Table), flows to 3: Sort Source Table, flows to 5: Merge Join. Another flow goes from 2: OLE DB Source (Dest Table), flows to 4: Sort Dest Table, flows to 5: Merge Join. From 5: Merge Join, the flow goes to 6: Conditional Spl |
|||
(130 intermediate revisions by 70 users not shown) | |||
Line 1:
{{short description|Database migration software}}
'''SQL Server Integration Services''' ('''SSIS''') is a component of the [[Microsoft SQL Server]] database software that can be used to perform a broad range of [[data migration]] tasks.▼
{{Infobox software
| logo =
| screenshot =
| developer = [[Microsoft]]
| latest_release_version =
| latest_release_date =
| latest_preview_version =
| latest_preview_date =
| operating_system = [[Microsoft Windows]]
| genre = ETL Tools
| license = [[Proprietary software|Proprietary]] [[commercial software]]
| website = {{URL|https://technet.microsoft.com/en-us/library/ms141026.aspx}}
}}
▲'''Microsoft SQL Server Integration Services''' ('''SSIS''') is a component of the [[Microsoft SQL Server]] database software that can be used to perform a broad range of [[data migration]] tasks.
First released with Microsoft SQL Server 2005, SSIS replaced [[Data Transformation Services]], which had been a feature of SQL Server since Version 7.0.
==Features==
The SSIS Import/Export [[Wizard (software)|Wizard]] lets the user create packages that move data from a single data source to a destination with no transformations. The Wizard can quickly move data from a variety of source types to a variety of destination types, including text files and other SQL Server instances.
Developers tasked with creating or maintaining SSIS packages use a visual development tool based on [[Microsoft Visual Studio]] called the SQL Server
; Connections
; Event handlers
; Parameters (SQL Server 2012 Integration Services)
; Precedence constraints
; Tasks
; Variables
; Streamlined Data Integration: SSIS offers a visual interface and pre-built components to simplify the process of extracting data from various sources, transforming it, and loading it into target destinations. This reduces development time and effort compared to writing custom code. <ref>{{cite web | url = https://techunwrapped.com/ssis-816-definition/ | title = SSIS-816: Definition, History, and ETL Capabilities |work=Techunwrapped | date = 6 September 2024 | publisher = Techunwrapped.com}}</ref>
▲; Connections : A connection includes the information necessary to connect to a particular data source. Tasks can reference the connection by its name, allowing the details of the connection to be changed or configured at run time.
▲; Tasks : A task is an atomic work unit that performs some action. There are a couple of dozen tasks that ship in the box, ranging from the file system task (which can copy or move files) to the data transformation task. The data transformation task actually copies data; it implements the ETL features of the product
▲; Precedence constraints : Tasks are linked by precedence constraints. The precedence constraint preceding a particular task must be met before that task executes. The run time supports executing tasks in parallel if their precedence constraints so allow. Constraints may otherwise allow different paths of execution depending on the success or failure of other tasks. Together with the tasks, precedence constraints comprise the workflow of the package.
▲; Event handlers : A workflow can be designed for a number of events in the different scopes where they might occur. In this way, tasks may be executed in response to happenings within the package —such as cleaning up after errors.
▲; Variables : Tasks may reference variables to store results, make decisions, or affect their configuration.
▲; Parameters (SQL Server 2012 Integration Services) : Parameters allow you to assign values to properties within packages at the time of package execution. You can project parameters and package parameters. In general, if you are deploying a package using the package deployment model, you should use configurations instead of parameters.
A package may be saved to a file or to a store with a hierarchical namespace within a SQL Server instance. In either case, the package content is persisted in [[XML]].
Line 22 ⟶ 38:
===Features of the data flow task===
[[File:SSIS workflow.png|thumb|An example of a SQL Server Integration Services (SSIS) workflow, by visually programming the steps needed to transform data from source to destination.|alt=Diagram with seven nodes. 1: OLE DB Source (Source Table), flows to 3: Sort Source Table, flows to 5: Merge Join. Another flow goes from 2: OLE DB Source (Dest Table), flows to 4: Sort Dest Table, flows to 5: Merge Join. From 5: Merge Join, the flow goes to 6: Conditional Split, flows to 7: OLE DB Destination.]]
SSIS provides the following built-in transformations:<ref>{{cite web | title = Integration Services Transformations | url = http://msdn.microsoft.com/en-us/library/ms141713.aspx|work=Microsoft Developer Network | publisher = Microsoft | access-date = 22 March 2013}}</ref>
{{Div col|colwidth=18em}}
* Aggregation
* [[Slowly Changing Dimension]]▼
* Script Component▼
* Audit
* Cache
* Copy/Map
* Export and Import Column▼
* Data conversion
* OLE DB Command▼
* Data mining model training
* Row Count▼
* Data mining query
* [[term extraction|Term Extraction]]▼
* Dimension processing
* [[Derived column]]
* For loop container
* Foreach loop container
* ([[Fuzzy_logic|Fuzzy]]) lookup
* [[Fuzzy_logic|Fuzzy]] grouping
* Partition processing
* Percentage sampling<ref>{{cite web | url = http://msdn.microsoft.com/en-us/library/ms139864.aspx | title = Percentage Sampling Transformation|work=Microsoft Developer Network | publisher = Microsoft | access-date = 22 March 2013}}</ref>
* [[Pivot table|Pivot]]
* [[Pivot table|Unpivot]]
* Row sampling transformation
* Term Lookup
{{div col end}}
▲* Row Sampling
The
=={{Anchor|A-tools}}Other included tools==
Aside from the Import/Export Wizard and the designer, the product includes a few other notable tools.
DTEXEC executes a package from the command line wherever it may be stored.<ref>{{cite web | url = http://msdn.microsoft.com/en-us/library/ms162810%28v=sql.105%29.aspx | title = dtexec Utility (SSIS Tool) | access-date = 2013-03-24 | publisher = Microsoft|work=Microsoft Developer Network}}</ref><ref>{{cite web | url = http://www.databasejournal.com/features/mssql/article.php/3897236/Executing-SSIS-Packages-Using-DTExec.htm | title = Executing SSIS Packages Using DTExec | access-date = 2013-03-24|date=2010-08-09 | publisher = Database Journal|author=Marcin Policht}}</ref> Before running the package, the tool may be instructed to apply configuration information, which will allow the same package to be reused with slightly different parameters, including different connection strings for its endpoints.
DTUTIL provides the ability to manage packages
The Bulk Copy Program (BCP), is a [[Console application|command-line tool]] used to import or export data against a [[Microsoft SQL Server]],<ref name="FIPADA">{{cite book|last1=Rankins|first1=Ray|last2=Bertucci|first2=Paul|last3=Jennsen|first3=Paul|date=December 2002|title=Microsoft SQL Server 2000 Unleashed|edition=2|publisher=Sams|___location=Indiana|isbn=9780672324673|oclc=474621100|pages=86–87}}</ref> or [[Sybase database]].<ref>{{cite book|url=http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc30191.1550/html/utility/X14951.htm|work=[[Sybase]]|accessdate=14 May 2021|title=Adaptive Server Enterprise 15.5|chapter=Chapter 7: Utility Commands Reference}}</ref>{{better source needed|date=May 2021}}
==Extensibility and programmability==
Users may write code to define their own connection objects, log providers, transforms, and tasks.<ref>{{cite web | title = Developing a Custom Data Flow Component | url = http://msdn.microsoft.com/en-us/library/ms136078.aspx|work=Microsoft Developer Network | publisher = Microsoft | access-date = 22 March 2013}}</ref><ref>{{cite web | title = Developing a Custom Task | url = http://msdn.microsoft.com/en-us/library/ms135965.aspx|work=Microsoft Developer Network | publisher = Microsoft | access-date = 22 March 2013}}</ref>
SSIS features a programmable object model that allows developers to write their own hosts for package execution. Such a host can respond to events, start and stop packages, and so on. The object model also allows developers to create, store, and load packages, as well as create, destroy, and modify any of the contained objects.
Line 63 ⟶ 88:
Within limits, SSIS packages can load and call [[Assembly (CLI)|CLI assembly]] [[Dynamic-link library|DLL]]s, providing access to virtually any kind of operation permissible by the .NET [[Common Language Runtime|CLR]].
SSIS can be used on all SQL Server [[
==See also==
* [[Data Transformation Services]]
==References==
{{
==External links==
* [http://www.microsoft.com/sqlserver/2008/en/us/integration.aspx SQL Server Integration Services official site]
[[Category:Microsoft database software]]
▲[[Category:ETL tools]]
[[Category:Microsoft server technology]]
[[Category:
|