| A community of more than 1,600,000 database professionals and growing |
| | ETL or ELT I was reading a piece on ETL patterns and found it interesting that the author noted that one way to reduce the challenge of ETL processes keeping up with changing schemas is to move to an ELT process. That's an interesting perspective, and I wonder what those who work with the relational model think. IS this a pattern you like? In a traditional ETL pattern, we get data from a source (Extract), manipulate it to suit the target schema (Transform) and then Load it into the target. The hassles here, and the reason this is hard, is that the transformations are often complex. We deal with ragged rows, various delimiters and terminators, and more. Lots of consultants have made quite a bit of money by building these transformational applications and processes and maintaining them as requirements change. The flip of the last two parts, moving from TL to LT, looks to defer some of the transform work until the data is in the destination. This means that the transformation could be a schema-on-read, as the article proposes. The idea here is that all data is ingested into the target system as is. This means that structured CSVs reside alongside spatial data and Word documents. Then, once you have the data, you can transform it as needed, to suit whatever requirements exist at that time. Certainly this sounds appealing, but for many of us in organiztions, the challenge is still determining how to transform the data. This is often dependent on what the data is and how it can be used. We still need to do the work to understand how this data is structured and change something to make data available to the end user. Whether we do this in the middle or after the data is in a target system doesn't matter. I know some products, like the MarkLogic one in the post and Azure Data Lake want to reduce must of the ETL effort, but I'm not sure that will work for really important data. For some, sure, we can collect it and sort out the transformations later. However, for useful data, data that the business wants regularly and quickly, most of us need to just get a flow working that will move data on a regular basis. I'll admit that I often prefer to transform data inside of a SQL Server target, OLTP or DW database. The reason is that mass changes are often easier with T-SQL, working sets of data rather than row by row. I recognize that doesn't always work, but I know that for most data that business people do find useful, I'd rather have an ETL process build sooner rather than later. Steve Jones from SQLServerCentral.comJoin the debate, and respond to today's editorial on the forums |
| The Voice of the DBA Podcast Listen to the MP3 Audio ( 3.8MB) podcast or subscribe to the feed at iTunes and Libsyn. The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music. | |
|
|
| ADVERTISEMENT | | How to track every change to your SQL Server database See who’s changing your database, alongside affected objects, date, time, and reason for the change with SQL Source Control. Get a full change history in your source control system. Learn more |
| | NEW SQL Provision: Create, protect, & manage SQL Server database copies for compliant DevOps Create and manage database copies effortless and keeps compliance central to the process. With SQL Provisions virtual cloning technology, databases can be created in seconds using just MB of storage, enabling business to move faster. Sensitive data can be anonymized or replaced with realistic data to ensure data is protected as it moves between environments. Download your free trial |
|
|
|
| | | Additional Articles from SimpleTalk T-SQL does not have an easy way to transpose a row and a column. Of course, there is the PIVOT statement, but it doesn’t quite accomplish the task. In this article, Darko Martinovic shares another method using a SQLCLR stored prodedure. More » |
| Help Redgate to learn more about how SQL Server teams keep on top of sensitive data. If you're planning, or are already implementing, an information audit or data-mapping exercise for your SQL Server estate, please complete their short survey. More » |
| Arun Sirpal from SQLServerCentral Blogs I was looking forward to do some work with Azure SQL Data Warehouse (DWH) when I hit the new query... More » |
| Devin Knight from SQLServerCentral Blogs In this module you will learn how to use the Enlighten Waffle Chart. The Enlighten Waffle Chart is a simple... More » |
|
|
| | Today's Question (by Ron S): I execute the following code. What is returned? ;WITH schemas_cte AS ( SELECT schema_id = 1 ) , tables_cte AS ( SELECT tablename = 'table1' , schemaid = 1 UNION ALL SELECT tablename = 'table2' , schemaid = 2 ) SELECT tablename FROM tables_cte WHERE schemaid IN ( SELECT schemaid FROM schemas_cte ); |
Think you know the answer? Click here, and find out if you are right. We keep track of your score to give you bragging rights against your peers. This question is worth 1 point in this category: IN Operator. We'd love to give you credit for your own question and answer. To submit a QOTD, simply log in to the Contribution Center. |
|
|
| |
ADVERTISEMENT | Pro Power BI Desktop This book shows how to deliver eye-catching Business Intelligence with Microsoft Power BI Desktop. You can now take data from virtually any source and use it to produce stunning dashboards and compelling reports that will seize your audience’s attention. Slice and dice the data with remarkable ease then add metrics and KPIs to project the insights that create your competitive advantage. | | |
|
|
|
|
|
| Yesterday's Question of the Day |
| Yesterday's Question (by Evgeny Garaev): What is equal to the following WHERE condition? WHERE <cond1> OR <cond2> AND <cond3> Answer: WHERE <cond1> OR (<cond2> AND <cond3>) Explanation: OR operators are evaluated after AND operators - Ref: OR - click here » Discuss this question and answer on the forums |
|
|
| Database Pros Who Need Your Help |
| Here's a few of the new posts today on the forums. To see more, visit the forums. latence in log shipping - Hello everyone I have a SQL instance configured in logshiping mode I receive alerts on latencies of log file restoration The secondary ProductionSQLA... SSIS CATALOG INSTALLATION in SQL SERVER v 13.0 - Hi, I'm trying to login into my SSIS server, and I hathe the follow situations : 1) I try to login in... Transaction log backup in Logshipping - Hi, Can any one help me with an answer pls. I have my normal housekeeping fullbackup and transaction log backup ,running under... Database Mail stuck in INACTIVE status and will not change to RECEIVES_OCCURRING. Cannot send email from test or sp_sendb_mail - Hello All, I'm unable to get Database Mail to send email from SQL 2016 EE server. When I review test emails... Cannot remove/delete SQL Server job - I have a maintenance plan that was removed and it won't delete from the SQL Server Agent Jobs. When I... SQL Server Login Failures - Hi, I can see Login Failures as below in SQL Error Logs in our production servers, but the database is not... GROUPING SETS or ROLLUP question - I've only seen this used in MS documentation, and have yet to encounter it in the "real world", but I... Table Valued Function and Linked Server - I know we cannot directly call a Table Valued Function on a linked server but my issue is a little... SQL Server Agent running DTExec 10.5 instead of 11 - I was hoping someone else might have run across this. We did an in place upgrade of SQL Server 2008... Ranking Products based on Location and NET Quantity - Hello, I am looking to create a query so that we can identify top 3 selling parts by Store based on the... Moving data from rows into single delimited field - Does someone have a solution for this. If there is more than one MyId1 it needs to be in a... Purge database - Hello I have just started a new job and my first task is to purge the database.This is a transaction... Custom parameter layout was removed from the report. SQL Server 2014 Reporting Services and earlier do not support custom parameter layout. - Hey all, Anyone have a workaround for solving what appears to be a feature issue with a report? I get the... How to retrieve all the data group types at the same time in sql server? - I'm running the code in sql server. I'm trying to obtain datagroups A, B, and C at the same time by passing 0... Looping Through Multiple Excel - Hi All, Hope someone can assist.I am using VS 2017 to try to loop through multiple excel files that a download... Depoly BIDS package to remote server - Hi all, I have the following set up (imposed by our IT team, not by choice). Locally (where i write the... Can we extract 640 columns in a pipe delimted file - hi , I have a requirement where the user is asking me to extract 643 columns in a pipe delimited file... ssis error on lookup table not sure why - Hi, I get the following errors when running an ssis package, but tnot sure why this is, it is failure on... The SQL Saturday Thread - As popular as SQL Saturday is, I'm surprised that nobody created a thread dedicated to SQL Saturday, so I created... |
|
| This email has been sent to [email protected]. To be removed from this list, please click here. If you have any problems leaving the list, please contact the [email protected]. | This newsletter was sent to you because you signed up at SQLServerCentral.com. Feel free to forward this to any colleagues that you think might be interested. If you have received this email from a colleague, you can register to receive it here. | This transmission is ©2018 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved. Contact: [email protected] |
|
|