Monday, June 3, 2019

Concepts And Technology Of Data Etl Computer Science Essay

Concepts And Technology Of Data Etl Computer Science Essay downslope- rendering-Loading (ETL) is the process of moving info guide unlike acknowledgments into a info wareho put on. In this research we will analyze the concept of ETL and illustrating using sample of Microsoft SSIS (SQL Server Integration Services) as the basis of the research. Explanation on specific steps will be show in the research such as (a) Extracting Data From single or more than external information source. (b) Transforming Data promise consistency and satisfy business requirements and (c) Loading Data To the resultant Data Warehouse. In depth analysis on Microsoft SSIS peckerwoods which supporting ETL process are including in the research for instance (a) Data pay heed Engine, (b) book of accounting Environment and (c) Data Profiler.Key Words ETL process, Microsoft SQL Server Integration, SSIS.1. IntroductionETL is the most important process in a line of work Intelligent (BI) project 1. When international companies such as Toyota want to reallocate resources, the resources must be reallocated wisely. Consolidate information to useful information from multi regions such as lacquer, US, UK and etc is difficult in many reasons including overlapping and inconsistency relationship among the region company. For example, the method of storing a name is different between the companies, in Japan its store as T.Yoon Wah, in US Yoon Wah Thoo and UK is storing as YW.Thoo. When information is being combining to generate useful information, this may lead to in uniform of selective information. In gild to solve the problem, we need to use star schema/snowflake schema data warehouse takes the data from many transactional governance, and copy the data into a putting surface format with the completely different relational database design than a transactional system containing many star schema configuration. 7. Performing the job associated with moving, correcting and transformin g the data from transaction system to star schema data warehouse, it is called Extraction, shimmy and Loading (ETL). ETL allows migrating data from relational database into data warehouse and alter to convert the various format and types to nonpareil consistent system. It is a common use for data warehousing, where regular updates from one or more systems are merged and refined so that analysis can be done using more specialized tools. Typically the same process is run over and over, as new data appears in the source natural covering 2. The ETL process consists of the avocation steps 3 1. Import data from various data sources into the staging bowl. 2. Cleanse data from inconsistencies (could be either automated or manual effort). 3.Ensure that row counts of imported data in the staging area match the counts in the original data source.4. Load data from the staging area into the dimensional instance.2. In-depth research on ETLIn Fig. 1, we abstractly describe the general fram ework for ETL processes. In the bottom layer we depict the data stores that are voluminous in the overall process. On the left side, we can observe the original data providers (typically, relational databases and files). The data from these sources are extracted (as shown in the upper left subroutine of Fig. 1) by extraction routines, which provide either complete snapshots or differentials of the data sources. Then, these data are propagated to the Data Staging Area (DSA) where they are transformed and cleaned before being loaded to the data warehouse. The data warehouse is depicted in the right portion of Fig. 1 and comprises the target data stores, i.e., fact tables and dimension tables. 42.1 ExtractionThe extraction part will gathering the data from several resources and do analysis and cleaning data. Analyzing part will be getting raw data that was written directly into the disk, data written to float file or relational tables from structured system. Data can be read tripl e propagation if needed in order to fall upon consistency. Cleansing data will be done in extraction part either. The process will be eliminating duplicate or fragmented data and excluding the unwanted or unneeded information. The next step will move forward to rendering part. In Microsoft SSIS, we could use the tools in the Data Flow control which is called Integration Service Source in order to retrieve sources from several formats with connection manager. The source format is various such as OLE DB, Flat file, ADO NET source, Raw Files source and etc 11.2.2 TransformationThe Transformation step might be the most complex part in the ETL process because it might be consist of much data processing during this step. The version part is to prepare the data to be store in the data warehouse. Converting the data such as changing data types and length, combining data, verification and standardize the data will be done in change part. Using SSIS, it provides plenty of transformation tools to help developer to achieve their target. There are categorized Transformation in SSIS to allow designer developing their project Business Intelligence,Row Transformation, Row set, Split and hook up with Transformation, Auditing Transformation, and Custom Transformation. For instance which commonly use in ETL process are Data Conversion Transformation Converts the data type of a column to a different data type , Conditional Split Transformation routes data rows to different outputs. More Transformation example can be found in SQL MSDN at 10.2.3 LoadingThe Loading step is the final step of the ETL process it uses to store generated data into the data warehouse. The gist step can follow the star schema 5 or snowflake schema 6 in order to achieve data consolidation 7. Implementing in SSIS will be using Integration Service Destination its similar with the Integration Service Source, using connection manager to choose one or more data destination to load the output. 123. Mic rosoft SQL Server Integration ServicesETL tools are created for developer to plan, configure and handle ETL process. With tools that develop by Microsoft, developer has now has the ability to more considerably automate the importing and transformation data from many system across the state. The Microsoft SQL Server 2005 which assist to automate the ETL process, its call SQL Server Integration Service (SSIS). This tool is design to deal with common issues with ETL process. We will build up the research paper from ground-up base on studying the ELT tools that build by Microsoft which is SSIS.3.1 SSIS ArchitectureIn fig 2 shows the overview of the SSIS architecture. SSIS is a cistron of SQL Server 2005/2008, it able to design ETL process from scratch to automate the process with many supportive tools such as database engine, Reporting services, Analysis services and etc. SISS has segregated the Data Flow Engine from the hold Flow Engine or SSIS Runtime Engine, designed to achieve a high degree of parallelism and improve the overall work. Figure 2 Overview of SSIS architecture.The SSIS will be consisting of two main components as listed down infraSSIS Runtime Engine The SSIS runtime engine manage the overall control flow of a package. It contains the layout of packages, runs packages and provides support for breakpoints, logging, configuration, connections and transactions. The run-time engine is a parallel control flow engine that locates the motion of tasks or units of work within SSIS and manages the engine threads that carry out those tasks. The SSIS runtime engine will performs the tasks inside a package in a conventional method. When the runtime engine meets a data flow task in a package during execution it will creates a data flow pipeline and lets that data flow task run in the pipeline. 9SSIS Data Flow Engine SSIS Data Flow Engine handles the flow of data from data sources, thru transformations, and destination. When the Data Flow task executes, the SSIS data flow engine extracts data from data sources, runs any necessary transformations on the extracted data and then generate the data to one or more destinations.The architecture of Data flow engine is buffer oriented, Data flow engine pulls data from the source and stores it in a memory and does the transformation in buffer itself rather thanprocessing on a row-by-row basis. The benefit of this in-buffer processing is that processing is much quicker as there is not necessary to copy the data physically at every step of the data integration the data flow engine processes data as it is transferred from source to destination. 9 We enable to do ETL practical in the Data Flow projection which can be found in the fig 2. Extract data from several sources, transform and manipulate the data, and load it into one or more destination.3.1.1 Data Flow EngineRegarding the SSIS Data Flow Engine mentioned previously, here to discuss intimately how it is link up with the process ETL wi th Data Flow Elements. SSIS consisting three different types of data flow components sources, transformations, and destinations.Sources extract data from data stores such as relational tables and views in files, relational databases, and Analysis Services databases as the Extraction in ETL process. Transformations modify, summarize, and clean data. Destinations load data into data stores or create in-memory datasets as the Loading process in ETL.Plus, SSIS provides paths that connect the output of one component to the introduce of an separate component. Paths will definite the sequence of components, and allow user add labels to the data flow or view the source of the column.Figure 3 Data Flow ElementsFigure 3 shows a data flow that has a source, a transformation with one input and one output, and a destination. The diagram includes the inputs, outputs, and illusion outputs in addition to the input, output, and external columns.Sources, in SSIS a source are the data flow component that generates data from several different external data sources. In a data flow, source normally has one. The regular output has output columns, which are columns the source adds to the data flow.An error output for a source has the same columns as the regular output, contains two extra columns that provide information about errors either. SSIS object model does not limit the number of normal outputs and error outputs that sources can contain. Most of the sources that SSIS includes, except the Script component, consisting one regular output, and many of the sources have one error output. Custom sources can be coded to implement multiple regular outputs and error outputs.All the output columns are available as input columns to the next data flow component in the data flow.Transformations, the possibility of transformations are infinite and vary wide. Transformations can execute tasks such as updating, summarizing, cleaning, merging, and distributing data.In and outputs of a transfo rmation define the columns of incoming and outgoing data. Depends the operation runs on the data, some transformations have individual input and several outputs, while other transformations have several inputs and a output. Transformations can include error outputs either, which give data about the error that occurred, combine with the data that failed for instance, string data that could not be converted to a date data type.Below are showing some built-in transformationsDerived column Transformation creates new column values by applying manners to transformation input columns. The output can be inserted into an existing column as a replacement value or added as a new column.Lookup Transformation execute lookups by joining data in input columns with columns in a reference dataset. Typically used in a case when working(a) with a subset of master data set and seeking related transaction records.Union All Transformation aggregates multiple inputs and gives UNION ALL to the multip le result-sets. blend Transformation aggregates two sorted datasets into an individual sorted dataset is similar to the Union All transformations. Use the Union All transformation instead of the Merge transformation in case if the inputs are not sorted, the result does not need to be sorted or the transformation has more than two inputs.Merge Join Transformation supply an output that is created by joining two sorted datasets using either a FULL, LEFT, or INNER joins.Conditional Split Transformation route data rows to different outputs depending on the content of the data. The implementation of the Conditional Split transformation is similar to a IF-ELSE decision structure in a programming language. The transformation understanding expressions, and based on the results, directs the data row to the specified output. It has a default output, so if a row matches no expression it is directed to the default output.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 is that the Multicast transformation directs every row to every output, and the Conditional Split directs a row to a single output.18Destinations, a destination is the data flow component that writes the data from a data flow to a specific data store, or creates an in-memory dataset.SSIS destination must at least have one input. The input contains input columns, which come from another data flow component. The input columns will be map to columns in the destination. 1731.1.1 sheath of Data Flow travailHere to presenting the example to create a simple data flow task a.k.a. ETL process. First thing, drag the Data Flow task from the toolbox into Control Flow.3.1.2 Scripting EnvironmentIf all the build-in tasks and transformation doesnt meets the developer needs, SSIS Script task/Script Component to code the functions that developer desire to perform.By clicking the Design Script button in the Script Task Editor, it is able to open a Visual Studio for Application to code the function. 19That is improvement in scripting environment between SSIS 2005 and 2008. In SSIS 2005, you can let out double click on Script Task and Script Task Editor will be appears. The Script language of SSIS 2005 is only for Microsoft Visual underlying .Net but in SSIS 2008, it is able to choose C or VB.net.Figure Visual Studio for Application (VSA)Script task usually used for the following purposesAchieve desire task by using other technologies that are not supported by built-in connection types.Generate a task-specific performance counter. For instance, a script can create a performance counter that is updated while a complex or poorly performing task runs. file out whether specified files are empty or how many rows they contain, and then based on that information affect the control flow in a package. For example, if a file contains zero rows , the value of a variable set to 0, and a precedence constraint that evaluates the value prevents a File System task from copying the file. 203.1.3 Data Profiler.The purpose of data profile is to approach defining data quality.A data profile is a collection of combination statistics about data that may consist the value of rows in the Customer table, the number of distinct values in the track column, the number of null or wanting(p) values in the Name column, the distribution of values in the Country column, the strength of the functional dependency of the Street column on the Name column-that is, the Street should always be the same for a given name value etc. 16SQL Server 2008 SSIS introduces the Data Profiling task in its toolbox, providing data profiling functionality inside the process of extracting, transforming, and loading data. By using the Data Profiling task, analysis of source data can be perform more efficiently, better(p) understanding of source data and avoid data quality problems before load into the data warehouse. Outcome of this analysis generate XML reports that can be relieve to an SSIS variable or a file that can be examine using the Data Profile Viewer tool. Data quality assessments can be performed on an ad hoc basis, thedata qualityprocess can also be automated by integrating quality assessment into the ETL process itself. 133.1.3.1 Example of Data Profiling TaskUsing Adventure Works DatabaseAfter drag the Data Profiling Task into the Control Flow, double click it to read properties window to do configuration. The Data profiling Task required connection manager in order to works. In properties menu, user chooses destination type in file destination or variable. Faster way to build profile using quick profile featureFigure 4 Single Task Quick Profile FormThe Data Profiling Task can compute eight different data profiles. Five of these profiles analyze individual columns, and the rest three analyze multiple columns or relationships between columns and tables for more details about each profile refer to MSDN.16 Few examples are made to inform further about Data ProfilingFigure 5 Editing the Data Profiling TaskAfter done mapping the destination and other properties, run the package.Figure 6 Data Profiling Task Successfully ExecutedThe Task successfully executed (Green), now need to use data profiler viewer to view the result. Data Profile Viewer is stand-alone tool which is used to view and analyze the result of profiling. It uses multiple panes to display the profiles requested and the computed results, with facultative details and drilldown capability. 16Column Value Distribution Profile Used to obtain number of distinct value of a table.Figure 7 Result of Column Value Distribution Profile.Column Null balance Profile Obtain the null column of the table.Figure 8 Result of Column Null Ratio Profile.Column Statistic Profile Obtain the Min, Max, Means and Deviation of a table.Figure 9 Result of Column Statistic Profile.Column Pattern Profile Obtain the radiation diagram value of the column.Figure 10 Result of Column Pattern Profile.3.3

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.