Sei sulla pagina 1di 214

MCT USE ONLY. STUDENT USE PROHIBITED

OFFICIAL

MICROSOFT

LEARNING

10777A

PRODUCT

USE PROHIBITED OFFICIAL MICROSOFT LEARNING 10777A PRODUCT Implementing a Data Warehouse with Microsoft ® SQL

Implementing a Data Warehouse with Microsoft ® SQL Server ® 2012

MCT USE ONLY. STUDENT USE PROHIBITED

ii Implementing a Data Warehouse with Microsoft SQL Server 2012

Information in this document, including URL and other Internet Web site references, is subject to change without notice. Unless otherwise noted, the example companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted herein are fictitious, and no association with any real company, organization, product, domain name, e-mail address, logo, person, place or event is intended or should be inferred. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation.

Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property.

The names of manufacturers, products, or URLs are provided for informational purposes only and Microsoft makes no representations and warranties, either expressed, implied, or statutory, regarding these manufacturers or the use of the products with any Microsoft technologies. The inclusion of a manufacturer or product does not imply endorsement of Microsoft of the manufacturer or product. Links may be provided to third party sites. Such sites are not under the control of Microsoft and Microsoft is not responsible for the contents of any linked site or any link contained in a linked site, or any changes or updates to such sites. Microsoft is not responsible for webcasting or any other form of transmission received from any linked site. Microsoft is providing these links to you only as a convenience, and the inclusion of any link does not imply endorsement of Microsoft of the site or the products contained therein.

© 2012 Microsoft Corporation. All rights reserved.

Microsoft and the trademarks listed at http://www.microsoft.com/about/legal/en/us/IntellectualProperty /Trademarks/EN-US.aspx are trademarks of the Microsoft group of companies. All other trademarks are property of their respective owners.

Product Number: 10777A

Part Number: X18-28026

Released: 05/2012

MCT USE ONLY. STUDENT USE PROHIBITED

MICROSOFT LICENSE TERMS OFFICIAL MICROSOFT LEARNING PRODUCTS MICROSOFT OFFICIAL COURSE Pre-Release and Final Release Versions

These license terms are an agreement between Microsoft Corporation and you. Please read them. They apply to

the Licensed Content named above, which includes the media on which you received it, if any. These license terms also apply to any updates, supplements, internet based services and support services for the Licensed Content, unless other terms accompany those items. If so, those terms apply.

BY DOWNLOADING OR USING THE LICENSED CONTENT, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT

THEM, DO NOT DOWNLOAD OR USE THE LICENSED CONTENT.

If you comply with these license terms, you have the rights below.

1.

DEFINITIONS.

a. “Authorized Learning Center” means a Microsoft Learning Competency Member, Microsoft IT Academy

Program Member, or such other entity as Microsoft may designate from time to time.

b. “Authorized Training Session” means the Microsoft-authorized instructor-led training class using only MOC Courses that are conducted by a MCT at or through an Authorized Learning Center.

c. “Classroom Device” means one (1) dedicated, secure computer that you own or control that meets or

exceeds the hardware level specified for the particular MOC Course located at your training facilities or

primary business location.

d. “End User” means an individual who is (i) duly enrolled for an Authorized Training Session or Private Training Session, (ii) an employee of a MPN Member, or (iii) a Microsoft full-time employee.

e. “Licensed Content” means the MOC Course and any other content accompanying this agreement. Licensed Content may include (i) Trainer Content, (ii) sample code, and (iii) associated media.

f. “Microsoft Certified Trainer” or “MCT” means an individual who is (i) engaged to teach a training session

to End Users on behalf of an Authorized Learning Center or MPN Member, (ii) currently certified as a Microsoft Certified Trainer under the Microsoft Certification Program, and (iii) holds a Microsoft Certification in the technology that is the subject of the training session.

g. “Microsoft IT Academy Member” means a current, active member of the Microsoft IT Academy Program.

h. “Microsoft Learning Competency Member” means a Microsoft Partner Network Program Member in good standing that currently holds the Learning Competency status.

i. “Microsoft Official Course” or “MOC Course” means the Official Microsoft Learning Product instructor-

led courseware that educates IT professionals or developers on Microsoft technologies.

MCT USE ONLY. STUDENT USE PROHIBITED

j. “Microsoft Partner Network Member” or “MPN Member” means a silver or gold-level Microsoft Partner

Network program member in good standing.

k. “Personal Device” means one (1) device, workstation or other digital electronic device that you personally own or control that meets or exceeds the hardware level specified for the particular MOC Course.

l. “Private Training Session” means the instructor-led training classes provided by MPN Members for corporate customers to teach a predefined learning objective. These classes are not advertised or promoted to the general public and class attendance is restricted to individuals employed by or contracted by the corporate customer.

m.

“Trainer Content” means the trainer version of the MOC Course and additional content designated solely for trainers to use to teach a training session using a MOC Course. Trainer Content may include Microsoft PowerPoint presentations, instructor notes, lab setup guide, demonstration guides, beta

feedback form and trainer preparation guide for the MOC Course. To clarify, Trainer Content does not

include virtual hard disks or virtual machines.

2. INSTALLATION AND USE RIGHTS. The Licensed Content is licensed not sold. The Licensed Content is licensed on a one copy per user basis, such that you must acquire a license for each individual that accesses or uses the Licensed Content.

2.1 Below are four separate sets of installation and use rights. Only one set of rights apply to you.

a. If you are a Authorized Learning Center:

i. If the Licensed Content is in digital format for each license you acquire you may either:

1. install one (1) copy of the Licensed Content in the form provided to you on a dedicated, secure

server located on your premises where the Authorized Training Session is held for access and

use by one (1) End User attending the Authorized Training Session, or by one (1) MCT teaching

the Authorized Training Session, or

2. install one (1) copy of the Licensed Content in the form provided to you on one (1) Classroom

Device for access and use by one (1) End User attending the Authorized Training Session, or by

one (1) MCT teaching the Authorized Training Session.

ii. You agree that:

1. you will acquire a license for each End User and MCT that accesses the Licensed Content,

2. each End User and MCT will be presented with a copy of this agreement and each individual

will agree that their use of the Licensed Content will be subject to these license terms prior to

their accessing the Licensed Content. Each individual will be required to denote their

acceptance of the EULA in a manner that is enforceable under local law prior to their accessing

the Licensed Content,

3. for all Authorized Training Sessions, you will only use qualified MCTs who hold the applicable

competency to teach the particular MOC Course that is the subject of the training session,

4. you will not alter or remove any copyright or other protective notices contained in the Licensed Content,

MCT USE ONLY. STUDENT USE PROHIBITED

5. you will remove and irretrievably delete all Licensed Content from all Classroom Devices and

servers at the end of the Authorized Training Session,

6. you will only provide access to the Licensed Content to End Users and MCTs,

7. you will only provide access to the Trainer Content to MCTs, and

8. any Licensed Content installed for use during a training session will be done in accordance

with the applicable classroom set-up guide.

b. If you are a MPN Member.

i. If the Licensed Content is in digital format for each license you acquire you may either:

1. install one (1) copy of the Licensed Content in the form provided to you on (A) one (1)

Classroom Device, or (B) one (1) dedicated, secure server located at your premises where

the training session is held for use by one (1) of your employees attending a training session

provided by you, or by one (1) MCT that is teaching the training session, or

2. install one (1) copy of the Licensed Content in the form provided to you on one (1)

Classroom Device for use by one (1) End User attending a Private Training Session, or one (1)

MCT that is teaching the Private Training Session.

ii. You agree that:

1. you will acquire a license for each End User and MCT that accesses the Licensed Content,

2. each End User and MCT will be presented with a copy of this agreement and each individual

will agree that their use of the Licensed Content will be subject to these license terms prior

to their accessing the Licensed Content. Each individual will be required to denote their acceptance of the EULA in a manner that is enforceable under local law prior to their accessing the Licensed Content,

3. for all training sessions, you will only use qualified MCTs who hold the applicable

competency to teach the particular MOC Course that is the subject of the training session,

4. you will not alter or remove any copyright or other protective notices contained in the Licensed Content,

5. you will remove and irretrievably delete all Licensed Content from all Classroom Devices and

servers at the end of each training session,

6. you will only provide access to the Licensed Content to End Users and MCTs,

7. you will only provide access to the Trainer Content to MCTs, and

8. any Licensed Content installed for use during a training session will be done in accordance

with the applicable classroom set-up guide.

c. If you are an End User:

You may use the Licensed Content solely for your personal training use. If the Licensed Content is in

digital format, for each license you acquire you may (i) install one (1) copy of the Licensed Content in

the form provided to you on one (1) Personal Device and install another copy on another Personal

Device as a backup copy, which may be used only to reinstall the Licensed Content; or (ii) print one (1)

copy of the Licensed Content. You may not install or use a copy of the Licensed Content on a device

you do not own or control.

MCT USE ONLY. STUDENT USE PROHIBITED

d.

If you are a MCT.

i. For each license you acquire, you may use the Licensed Content solely to prepare and deliver an Authorized Training Session or Private Training Session. For each license you acquire, you may

install and use one (1) copy of the Licensed Content in the form provided to you on one (1) Personal

Device and install one (1) additional copy on another Personal Device as a backup copy, which may

be used only to reinstall the Licensed Content. You may not install or use a copy of the Licensed Content on a device you do not own or control.

ii. Use of Instructional Components in Trainer Content. You may customize, in accordance with the

most recent version of the MCT Agreement, those portions of the Trainer Content that are logically

associated with instruction of a training session. If you elect to exercise the foregoing rights, you

agree: (a) that any of these customizations will only be used for providing a training session, (b) any

customizations will comply with the terms and conditions for Modified Training Sessions and

Supplemental Materials in the most recent version of the MCT agreement and with this agreement.

For clarity, any use of “customize” refers only to changing the order of slides and content, and/or

not using all the slides or content, it does not mean changing or modifying any slide or content.

2.2

may not separate the components and install them on different devices.

Separation of Components. The Licensed Content components are licensed as a single unit and you

2.3 Reproduction/Redistribution Licensed Content. Except as expressly provided in the applicable

installation and use rights above, you may not reproduce or distribute the Licensed Content or any portion

thereof (including any permitted modifications) to any third parties without the express written permission

of Microsoft.

2.4 Third Party Programs. The Licensed Content may contain third party programs or services. These

license terms will apply to your use of those third party programs or services, unless other terms accompany

those programs and services.

2.5 Additional Terms. Some Licensed Content may contain components with additional terms,

conditions, and licenses regarding its use. Any non-conflicting terms in those conditions and licenses also

apply to that respective component and supplements the terms described in this Agreement.

3.

PRE-RELEASE VERSIONS. If the Licensed Content is a pre-release (“beta”) version, in addition to the other

provisions in this agreement, then these terms also apply:

a. Pre-Release Licensed Content. This Licensed Content is a pre-release version. It may not contain the

same information and/or work the way a final version of the Licensed Content will. We may change it

for the final version. We also may not release a final version. Microsoft is under no obligation to provide you with any further content, including the final release version of the Licensed Content.

b. Feedback. If you agree to give feedback about the Licensed Content to Microsoft, either directly or through its third party designee, you give to Microsoft without charge, the right to use, share and commercialize your feedback in any way and for any purpose. You also give to third parties, without

charge, any patent rights needed for their products, technologies and services to use or interface with

any specific parts of a Microsoft software, Microsoft product, or service that includes the feedback. You

will not give feedback that is subject to a license that requires Microsoft to license its software, technologies, or products to third parties because we include your feedback in them. These rights

MCT USE ONLY. STUDENT USE PROHIBITED

survive this agreement.

c. Term. If you are an Authorized Training Center, MCT or MPN, you agree to cease using all copies of the

beta version of the Licensed Content upon (i) the date which Microsoft informs you is the end date for

using the beta version, or (ii) sixty (60) days after the commercial release of the Licensed Content, whichever is earliest (“beta term”). Upon expiration or termination of the beta term, you will irretrievably delete and destroy all copies of same in the possession or under your control.

4.

INTERNET-BASED SERVICES. Classroom Devices located at Authorized Learning Center’s physical location

may contain virtual machines and virtual hard disks for use while attending an Authorized Training Session. You may only use the software on the virtual machines and virtual hard disks on a Classroom Device solely to perform the virtual lab activities included in the MOC Course while attending the Authorized Training Session. Microsoft may provide Internet-based services with the software included with the virtual machines and virtual hard disks. It may change or cancel them at any time. If the

software is pre-release versions of software, some of its Internet-based services may be turned on by

default. The default setting in these versions of the software do not necessarily reflect how the features

will be configured in the commercially released versions. If Internet-based services are included with the

software, they are typically simulated for demonstration purposes in the software and no transmission

over the Internet takes place. However, should the software be configured to transmit over the Internet,

the following terms apply:

a. Consent for Internet-Based Services. The software features described below connect to Microsoft or service provider computer systems over the Internet. In some cases, you will not receive a separate

notice when they connect. You may switch off these features or not use them. By using these features,

you consent to the transmission of this information. Microsoft does not use the information to identify

or contact you.

b. Computer Information. The following features use Internet protocols, which send to the appropriate systems computer information, such as your Internet protocol address, the type of operating system, browser and name and version of the software you are using, and the language code of the device

where you installed the software. Microsoft uses this information to make the Internet-based services

available to you.

Accelerators. When you use click on or move your mouse over an Accelerator, the title and full web

address or URL of the current webpage, as well as standard computer information, and any content

you have selected, might be sent to the service provider. If you use an Accelerator provided by Microsoft, the information sent is subject to the Microsoft Online Privacy Statement, which is available at go.microsoft.com/fwlink/?linkid=31493. If you use an Accelerator provided by a third party, use of the information sent will be subject to the third party’s privacy practices.

Automatic Updates. This software contains an Automatic Update feature that is on by default. For

more information about this feature, including instructions for turning it off, see go.microsoft.com/fwlink/?LinkId=178857. You may turn off this feature while the software is running (“opt out”). Unless you expressly opt out of this feature, this feature will (a) connect to

Microsoft or service provider computer systems over the Internet, (b) use Internet protocols to send

to the appropriate systems standard computer information, such as your computer’s Internet

protocol address, the type of operating system, browser and name and version of the software you

are using, and the language code of the device where you installed the software, and (c)

automatically download and install, or prompt you to download and/or install, current Updates to

the software. In some cases, you will not receive a separate notice before this feature takes effect.

MCT USE ONLY. STUDENT USE PROHIBITED

By installing the software, you consent to the transmission of standard computer information and

the automatic downloading and installation of updates.

Auto Root Update. The Auto Root Update feature updates the list of trusted certificate authorities.

you can switch off the Auto Root Update feature.

Customer Experience Improvement Program (CEIP), Error and Usage Reporting; Error Reports. This

software uses CEIP and Error and Usage Reporting components enabled by default that

automatically send to Microsoft information about your hardware and how you use this software.

This software also automatically sends error reports to Microsoft that describe which software components had errors and may also include memory dumps. You may choose not to use these software components. For more information please go to

<http://go.microsoft.com/fwlink/?LinkID=196910>.

Digital Certificates. The software uses digital certificates. These digital certificates confirm the

identity of Internet users sending X.509 standard encrypted information. They also can be used to

digitally sign files and macros, to verify the integrity and origin of the file contents. The software

retrieves certificates and updates certificate revocation lists. These security features operate only

when you use the Internet.

Extension Manager. The Extension Manager can retrieve other software through the internet from

the Visual Studio Gallery website. To provide this other software, the Extension Manager sends to

Microsoft the name and version of the software you are using and language code of the device

This other software is provided by third parties to Visual Studio

Gallery. It is licensed to users under terms provided by the third parties, not from Microsoft. Read

the Visual Studio Gallery terms of use for more information.

where you installed the software.

IPv6 Network Address Translation (NAT) Traversal service (Teredo). This feature helps existing home Internet gateway devices transition to IPv6. IPv6 is a next generation Internet protocol. It helps enable end-to-end connectivity often needed by peer-to-peer applications. To do so, each time you start up the software the Teredo client service will attempt to locate a public Teredo

Internet service. It does so by sending a query over the Internet. This query only transfers standard

Domain Name Service information to determine if your computer is connected to the Internet and

can locate a public Teredo service. If you

· use an application that needs IPv6 connectivity or

· configure your firewall to always enable IPv6 connectivity

by default standard Internet Protocol information will be sent to the Teredo service at Microsoft at

regular intervals. No other information is sent to Microsoft. You can change this default to use non-

Microsoft servers. You can also switch off this feature using a command line utility named “netsh”.

Malicious Software Removal. During setup, if you select “Get important updates for installation”,

the software may check and remove certain malware from your device. “Malware” is malicious software. If the software runs, it will remove the Malware listed and updated at www.support.microsoft.com/?kbid=890830. During a Malware check, a report will be sent to

Microsoft with specific information about Malware detected, errors, and other information about

your device. This information is used to improve the software and other Microsoft products and

services. No information included in these reports will be used to identify or contact you. You may

disable the software’s reporting functionality by following the instructions found at

MCT USE ONLY. STUDENT USE PROHIBITED

www.support.microsoft.com/?kbid=890830. For more information, read the Windows Malicious Software Removal Tool privacy statement at go.microsoft.com/fwlink/?LinkId=113995.

Microsoft Digital Rights Management. If you use the software to access content that has been protected with Microsoft Digital Rights Management (DRM), then, in order to let you play the content, the software may automatically request media usage rights from a rights server on the Internet and download and install available DRM updates. For more information, see

go.microsoft.com/fwlink/?LinkId=178857.

Microsoft Telemetry Reporting Participation. If you choose to participate in Microsoft Telemetry

Reporting through a “basic” or “advanced” membership, information regarding filtered URLs,

malware and other attacks on your network is sent to Microsoft. This information helps Microsoft

improve the ability of Forefront Threat Management Gateway to identify attack patterns and

mitigate threats. In some cases, personal information may be inadvertently sent, but Microsoft will

not use the information to identify or contact you. You can switch off Telemetry Reporting. For more information on this feature, see http://go.microsoft.com/fwlink/?LinkId=130980.

Microsoft Update Feature. To help keep the software up-to-date, from time to time, the software

connects to Microsoft or service provider computer systems over the Internet. In some cases, you

will not receive a separate notice when they connect. When the software does so, we check your

version of the software and recommend or download updates to your devices. You may not receive

notice when we download the update. You may switch off this feature.

Network Awareness. This feature determines whether a system is connected to a network by either

passive monitoring of network traffic or active DNS or HTTP queries. The query only transfers standard TCP/IP or DNS information for routing purposes. You can switch off the active query feature through a registry setting.

Plug and Play and Plug and Play Extensions. You may connect new hardware to your device, either

directly or over a network. Your device may not have the drivers needed to communicate with that

hardware. If so, the update feature of the software can obtain the correct driver from Microsoft and

install it on your device. An administrator can disable this update feature.

Real Simple Syndication (“RSS”) Feed. This software start page contains updated content that is supplied by means of an RSS feed online from Microsoft.

Search Suggestions Service. When you type a search query in Internet Explorer by using the Instant

Search box or by typing a question mark (?) before your search term in the Address bar, you will see

search suggestions as you type (if supported by your search provider). Everything you type in the Instant Search box or in the Address bar when preceded by a question mark (?) is sent to your

search provider as you type it. In addition, when you press Enter or click the Search button, all the

text that is in the search box or Address bar is sent to the search provider. If you use a Microsoft search provider, the information you send is subject to the Microsoft Online Privacy Statement, which is available at go.microsoft.com/fwlink/?linkid=31493. If you use a third-party search

provider, use of the information sent will be subject to the third party’s privacy practices. You can

turn search suggestions off at any time in Internet Explorer by using Manage Add-ons under the Tools button. For more information about the search suggestions service, see

go.microsoft.com/fwlink/?linkid=128106.

SQL Server Reporting Services Map Report Item. The software may include features that retrieve

content such as maps, images and other data through the Bing Maps (or successor branded)

MCT USE ONLY. STUDENT USE PROHIBITED

application programming interface (the “Bing Maps APIs”). The purpose of these features is to create reports displaying data on top of maps, aerial and hybrid imagery. If these features are

included, you may use them to create and view dynamic or static documents. This may be done only

in conjunction with and through methods and means of access integrated in the software. You may

not otherwise copy, store, archive, or create a database of the content available through the Bing

Maps APIs. you may not use the following for any purpose even if they are available through the Bing Maps APIs:

Bing Maps APIs to provide sensor based guidance/routing, or

Any Road Traffic Data or Bird’s Eye Imagery (or associated metadata).

Your use of the Bing Maps APIs and associated content is also subject to the additional terms and conditions at http://www.microsoft.com/maps/product/terms.html.

URL Filtering. The URL Filtering feature identifies certain types of web sites based upon predefined

URL categories, and allows you to deny access to such web sites, such as known malicious sites and

sites displaying inappropriate or pornographic materials. To apply URL filtering, Microsoft queries

the online Microsoft Reputation Service for URL categorization. You can switch off URL filtering. For

more information on this feature, see http://go.microsoft.com/fwlink/?LinkId=130980

Web Content Features. Features in the software can retrieve related content from Microsoft and

provide it to you. To provide the content, these features send to Microsoft the type of operating

system, name and version of the software you are using, type of browser and language code of the

device where you run the software. Examples of these features are clip art, templates, online training, online assistance and Appshelp. You may choose not to use these web content features.

Windows Media Digital Rights Management. Content owners use Windows Media digital rights

management technology (WMDRM) to protect their intellectual property, including copyrights. This

software and third party software use WMDRM to play and copy WMDRM-protected content. If the

software fails to protect the content, content owners may ask Microsoft to revoke the software’s

ability to use WMDRM to play or copy protected content. Revocation does not affect other content.

When you download licenses for protected content, you agree that Microsoft may include a revocation list with the licenses. Content owners may require you to upgrade WMDRM to access their content. Microsoft software that includes WMDRM will ask for your consent prior to the

upgrade. If you decline an upgrade, you will not be able to access content that requires the upgrade.

You may switch off WMDRM features that access the Internet. When these features are off, you can

still play content for which you have a valid license.

Windows Media Player. When you use Windows Media Player, it checks with Microsoft for

· compatible online music services in your region;

· new versions of the player; and

· codecs if your device does not have the correct ones for playing content.

You can switch off this last feature. For more information, go to

www.microsoft.com/windows/windowsmedia/player/11/privacy.aspx.

Windows Rights Management Services. The software contains a feature that allows you to create

content that cannot be printed, copied or sent to others without your permission. For more information, go to www.microsoft.com/rms. you may choose not to use this feature

MCT USE ONLY. STUDENT USE PROHIBITED

Windows Time Service. This service synchronizes with time.windows.com once a week to provide

your computer with the correct time. You can turn this feature off or choose your preferred time

source within the Date and Time Control Panel applet. The connection uses standard NTP protocol.

Windows Update Feature. You may connect new hardware to the device where you run the

software. Your device may not have the drivers needed to communicate with that hardware. If so,

the update feature of the software can obtain the correct driver from Microsoft and run it on your

device. You can switch off this update feature.

c. Use of Information. Microsoft may use the device information, error reports, and malware reports to

improve our software and services. We may also share it with others, such as hardware and software vendors. They may use the information to improve how their products run with Microsoft software.

d. Misuse of Internet-based Services. You may not use any Internet-based service in any way that could

harm it or impair anyone else’s use of it. You may not use the service to try to gain unauthorized access

to any service, data, account or network by any means.

5. SCOPE OF LICENSE. The Licensed Content is licensed, not sold. This agreement only gives you some rights

to use the Licensed Content. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the Licensed Content only as expressly permitted in this

agreement. In doing so, you must comply with any technical limitations in the Licensed Content that only

allows you to use it in certain ways. Except as expressly permitted in this agreement, you may not:

install more copies of the Licensed Content on devices than the number of licenses you acquired;

allow more individuals to access the Licensed Content than the number of licenses you acquired;

publicly display, or make the Licensed Content available for others to access or use;

install, sell, publish, transmit, encumber, pledge, lend, copy, adapt, link to, post, rent, lease or lend,

make available or distribute the Licensed Content to any third party, except as expressly permitted

by this Agreement.

reverse engineer, decompile, remove or otherwise thwart any protections or disassemble the

Licensed Content except and only to the extent that applicable law expressly permits, despite this

limitation;

access or use any Licensed Content for which you are not providing a training session to End Users

using the Licensed Content;

access or use any Licensed Content that you have not been authorized by Microsoft to access and

use; or

transfer the Licensed Content, in whole or in part, or assign this agreement to any third party.

6. RESERVATION OF RIGHTS AND OWNERSHIP. Microsoft reserves all rights not expressly granted to you in

this agreement. The Licensed Content is protected by copyright and other intellectual property laws and

treaties. Microsoft or its suppliers own the title, copyright, and other intellectual property rights in the Licensed Content. You may not remove or obscure any copyright, trademark or patent notices that appear on the Licensed Content or any components thereof, as delivered to you.

7. EXPORT RESTRICTIONS. The Licensed Content is subject to United States export laws and regulations. You

must comply with all domestic and international export laws and regulations that apply to the Licensed Content. These laws include restrictions on destinations, End Users and end use. For additional information, see www.microsoft.com/exporting.

MCT USE ONLY. STUDENT USE PROHIBITED

8. LIMITATIONS ON SALE, RENTAL, ETC. AND CERTAIN ASSIGNMENTS. You may not sell, rent, lease, lend or

sublicense the Licensed Content or any portion thereof, or transfer or assign this agreement.

9. SUPPORT SERVICES. Because the Licensed Content is “as is”, we may not provide support services for it.

10. TERMINATION. Without prejudice to any other rights, Microsoft may terminate this agreement if you fail

to comply with the terms and conditions of this agreement. Upon any termination of this agreement, you

agree to immediately stop all use of and to irretrievable delete and destroy all copies of the Licensed Content in your possession or under your control.

11. LINKS TO THIRD PARTY SITES. You may link to third party sites through the use of the Licensed Content.

The third party sites are not under the control of Microsoft, and Microsoft is not responsible for the

contents of any third party sites, any links contained in third party sites, or any changes or updates to third

party sites. Microsoft is not responsible for webcasting or any other form of transmission received from

any third party sites. Microsoft is providing these links to third party sites to you only as a convenience,

and the inclusion of any link does not imply an endorsement by Microsoft of the third party site.

12. ENTIRE AGREEMENT. This agreement, and the terms for supplements, updates and support services are

the entire agreement for the Licensed Content.

13. APPLICABLE LAW.

a. United States. If you acquired the Licensed Content in the United States, Washington state law governs

the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws

principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.

b. Outside the United States. If you acquired the Licensed Content in any other country, the laws of that country apply.

14. LEGAL EFFECT. This agreement describes certain legal rights. You may have other rights under the laws of

your country. You may also have rights with respect to the party from whom you acquired the Licensed Content. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.

15. DISCLAIMER OF WARRANTY. THE LICENSED CONTENT IS LICENSED "AS-IS," "WITH ALL FAULTS," AND "AS

AVAILABLE." YOU BEAR THE RISK OF USING IT. MICROSOFT CORPORATION AND ITS RESPECTIVE

AFFILIATES GIVE NO EXPRESS WARRANTIES, GUARANTEES, OR CONDITIONS UNDER OR IN RELATION TO

THE LICENSED CONTENT. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS UNDER YOUR LOCAL LAWS

WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS,

MICROSOFT CORPORATION AND ITS RESPECTIVE AFFILIATES EXCLUDE ANY IMPLIED WARRANTIES OR

CONDITIONS, INCLUDING THOSE OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.

16. LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. TO THE EXTENT NOT PROHIBITED BY LAW, YOU CAN RECOVER FROM MICROSOFT CORPORATION AND ITS SUPPLIERS ONLY DIRECT

DAMAGES UP TO USD$5.00. YOU AGREE NOT TO SEEK TO RECOVER ANY OTHER DAMAGES, INCLUDING

CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES FROM MICROSOFT CORPORATION AND ITS RESPECTIVE SUPPLIERS.

MCT USE ONLY. STUDENT USE PROHIBITED

This limitation applies to

o

o

anything related to the Licensed Content, services made available through the Licensed Content, or

content (including code) on third party Internet sites or third-party programs; and

claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence,

or other tort to the extent permitted by applicable law.

It also applies even if Microsoft knew or should have known about the possibility of the damages. The

above limitation or exclusion may not apply to you because your country may not allow the exclusion or

limitation of incidental, consequential or other damages.

Please note: As this Licensed Content is distributed in Quebec, Canada, some of the clauses in this agreement

are provided below in French.

Remarque : Ce le contenu sous licence étant distribué au Québec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en français.

EXONÉRATION DE GARANTIE. Le contenu sous licence visé par une licence est offert « tel quel ». Toute

utilisation de ce contenu sous licence est à votre seule risque et péril. Microsoft n’accorde aucune autre garantie

expresse. Vous pouvez bénéficier de droits additionnels en vertu du droit local sur la protection dues consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties

implicites de qualité marchande, d’adéquation à un usage particulier et d’absence de contrefaçon sont exclues.

LIMITATION DES DOMMAGES-INTÉRÊTS ET EXCLUSION DE RESPONSABILITÉ POUR LES DOMMAGES. Vous

pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement

à hauteur de 5,00 $ US. Vous ne pouvez prétendre à aucune indemnisation pour les autres dommages, y compris les dommages spéciaux, indirects ou accessoires et pertes de bénéfices. Cette limitation concerne:

tout ce qui est relié au le contenu sous licence , aux services ou au contenu (y compris le code)

figurant sur des sites Internet tiers ou dans des programmes tiers ; et

les réclamations au titre de violation de contrat ou de garantie, ou au titre de responsabilité stricte, de négligence ou d’une autre faute dans la limite autorisée par la loi en vigueur.

Elle s’applique également, même si Microsoft connaissait ou devrait connaître l’éventualité d’un tel dommage.

Si votre pays n’autorise pas l’exclusion ou la limitation de responsabilité pour les dommages indirects,

accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l’exclusion ci-dessus ne s’appliquera

pas à votre égard.

EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous pourriez avoir d’autres droits prévus

par les lois de votre pays. Le présent contrat ne modifie pas les droits que vous confèrent les lois de votre pays

si celles-ci ne le permettent pas.

Revised March 2012

xiv Implementing a Data Warehouse with Microsoft SQL Server 2012 MCT USE ONLY. STUDENT USE
xiv
Implementing a Data Warehouse with Microsoft SQL Server 2012
MCT USE ONLY. STUDENT USE PROHIBITED

MCT USE ONLY. STUDENT USE PROHIBITED

Implementing a Data Warehouse with Microsoft SQL Server 2012

xv

Acknowledgments

Microsoft Learning would like to acknowledge and thank the following for their contribution towards developing this title. Their effort at various stages in the development has ensured that you have a good classroom experience.

Graeme Malcolm – Lead Content Developer

Graeme Malcolm is a Microsoft SQL Server subject matter expert and professional content developer at Content Master—a division of CM Group Ltd. As a Microsoft Certified Trainer, Graeme has delivered training courses on SQL Server since version 4.2; as an author, Graeme has written numerous books, articles, and training courses on SQL Server; and as a consultant, Graeme has designed and implemented business solutions based on SQL Server for customers all over the world.

Geoff Allix – Content Developer

Geoff Allix is a Microsoft SQL Server subject matter expert and professional content developer at Content

Master—a division of CM Group Ltd. Geoff is a Microsoft Certified IT Professional for SQL Server with extensive experience in designing and implementing database and BI solutions on SQL Server

technologies, and has provided consultancy services to organizations seeking to implement and optimize

data warehousing and OLAP solutions.

Martin Ellis – Content Developer

Martin Ellis is a Microsoft SQL Server subject matter expert and professional content developer at Content

Master—a division of CM Group Ltd. Martin is a Microsoft Certified Technical Specialist on SQL Server and

an MCSE. He has been working with SQL Server since version 7.0, as a DBA, consultant and Microsoft Certified Trainer, and has developed a wide range of technical collateral for Microsoft Corp. and other technology enterprises.

Chris Testa-O’Neill – Technical Reviewer

Chris Testa-O’Neil is a Senior Consultant at Coeo (www.coeo.com), a leading provider of SQL Server

Managed Support and Consulting in the UK and Europe. He is also a Microsoft Certified Trainer, Microsoft

Most Valuable Professional for SQL Server, and lead author of Microsoft E-Learning MCTS courses for SQL

Server 2008. Chris has spoken at a range of SQL Server events in the UK, Europe, Australia and the United

States. He is also one of the organizers of SQLBits, SQLServerFAQ and a UK Regional Mentor for SQLPASS.

You can contact Chris at chris@coeo.com, @ctesta_oneill or through his blog at http://www.coeo.com/sql-server-events/sql-events-and-blogs.aspx.

MCT USE ONLY. STUDENT USE PROHIBITED

xvi Implementing a Data Warehouse with Microsoft SQL Server 2012

Contents

Module 1: Introduction to Data Warehousing

Lesson 1: Overview of Data Warehousing

1-3

Lesson 2: Considerations for a Data Warehouse Solution

1-14

Lab 1: Exploring a Data Warehousing Solution

1-28

Module 2: Data Warehouse Hardware

Lesson 1: Considerations for Building a Data Warehouse

2-3

Lesson 2: Data Warehouse Reference Architectures and Appliances

2-11

Module 3: Designing and Implementing a Data Warehouse

Lesson 1: Logical Design for a Data Warehouse

3-3

Lesson 2: Physical Design for a Data Warehouse

3-17

Lab 3: Implementing a Data Warehouse Schema

3-27

Module 4: Creating an ETL Solution with SSIS

Lesson 1: Introduction to ETL with SSIS

4-3

Lesson 2: Exploring Source Data

4-10

Lesson 3: Implementing Data Flow

4-21

Lab 4: Implementing Data Flow in an SSIS Package

4-38

Module 5: Implementing Control Flow in an SSIS Package

Lesson 1: Introduction to Control Flow

5-3

Lesson 2: Creating Dynamic Packages

5-14

Lesson 3: Using Containers

5-21

Lab 5A: Implementing Control Flow in an SSIS Package

5-33

Lesson 4: Managing Consistency

5-41

Lab 5B: Using Transactions and Checkpoints

5-51

Module 6: Debugging and Troubleshooting SSIS Packages

Lesson 1: Debugging an SSIS Package

6-3

Lesson 2: Logging SSIS Package Events

6-12

Lesson 3: Handling Errors in an SSIS Package

6-21

Lab 6: Debugging and Troubleshooting an SSIS Package

6-30

Module 7: Implementing an Incremental ETL Process

Lesson 1: Introduction to Incremental ETL

7-3

Lesson 2: Extracting Modified Data

7-9

Lab 7A: Extracting Modified Data

7-31

Lesson 3: Loading Modified Data

7-54

Lab 7B: Loading Incremental Changes

7-73

MCT USE ONLY. STUDENT USE PROHIBITED

Implementing a Data Warehouse with Microsoft SQL Server 2012

xvii

Module 8: Incorporating Data from the Cloud into a Data Warehouse

Lesson 1: Overview of Cloud Data Sources Lesson 2: SQL Azure Lesson 3: The Windows Azure Marketplace DataMarket Lab: Using Cloud Data in a Data Warehouse Solution

Module 9: Enforcing Data Quality

Lesson 1: Introduction to Data Quality Lesson 2: Using Data Quality Services to Cleanse Data Lab 9A: Cleansing Data Lesson 3: Using Data Quality Services to Match Data Lab 9B: Deduplicating Data

Module 10: Using Master Data Services

Lesson 1: Introduction to Master Data Services Lesson 2: Implementing a Master Data Services Model Lesson 3: Managing Master Data Lesson 4: Creating a Master Data Hub Lab 10: Implementing Master Data Services

8-3

8-9

8-19

8-26

9-3

9-13

9-20

9-29

9-38

10-3

10-10

10-23

10-36

10-46

Module 11: Extending SQL Server Integration Services

Lesson 1: Using Custom Components in SSIS Lesson 2: Using Scripts in SSIS Lab 11: Using Custom Components and Scripts

11-3

11-10

11-21

Module 12: Deploying and Configuring SSIS Packages

Lesson 1: Overview of SSIS Deployment Lesson 2: Deploying SSIS Projects Lesson 3: Planning SSIS Package Execution Lab 12: Deploying and Configuring SSIS Packages

12-3

12-9

12-19

12-30

Module 13: Consuming Data in a Data Warehouse

Lesson 1: Introduction to Business Intelligence Lesson 2: Introduction to Reporting Lesson 3: Introduction to Data Analysis Lab 13: Using Business Intelligence Tools

13-3

13-8

13-12

13-18

MCT USE ONLY. STUDENT USE PROHIBITED

xviii Implementing a Data Warehouse with Microsoft SQL Server 2012

Appendix: Lab Answer Keys

Module 1 Lab 1: Exploring a Data Warehousing Solution

L1-1

Module 3 Lab 3: Implementing a Data Warehouse Schema

L3-7

Module 4 Lab 4: Implementing Data Flow in an SSIS Package

L4-13

Module 5 Lab 5A: Implementing Control Flow in an SSIS Package

L5-25

Module 5 Lab 5B: Using Transactions and Checkpoints

L5-33

Module 6 Lab 6: Debugging and Troubleshooting an SSIS Package

L6-37

Module 7 Lab 7A: Extracting Modified Data

L7-45

Module 7 Lab 7B: Loading Incremental Changes

L7-65

Module 8 Lab 8: Using Cloud Data in a Data Warehouse Solution

L8-81

Module 9 Lab 9A: Cleansing Data

L9-91

Module 9 Lab 9B: Deduplicating Data

L9-99

Module 10 Lab 10: Implementing Master Data Services

L10-105

Module 11 Lab 11: Using Custom Components and Scripts

L11-117

Module 12 Lab 12: Deploying and Configuring SSIS Packages

L12-123

Module 13 Lab 13: Using Business Intelligence Tools

L13-129

MCT USE ONLY. STUDENT USE PROHIBITED

About This Course

xix

About This Course

This section provides you with a brief description of the course, audience, suggested prerequisites, and course objectives.

Course Description

This course describes how to implement a BI platform to support information worker analytics. Students will learn how to create a data warehouse with Microsoft®SQL Server® 2012, implement ETL with SQL Server Integration Services, and validate and cleanse data with SQL Server Data Quality Services and SQL Server Master Data Services.

Audience

This course is intended for database professionals who need to fulfill a Business (BI) Intelligence Developer

role. They will need to focus on hands-on work creating BI solutions including Data Warehouse implementation, ETL, and data cleansing. Primary responsibilities include:

Implementing a data warehouse.

Developing SSIS packages for data extraction, transformation, and loading.

Enforcing data integrity by using Master Data Services.

Cleansing data by using Data Quality Services.

Student Prerequisites

This course requires that you meet the following prerequisites:

At least 2 years’ experience of working with relational databases, including:

Designing a normalized database.

Creating tables and relationships.

Querying with Transact-SQL.

Some exposure to basic programming constructs (such as looping and branching).

An awareness of key business priorities such as revenue, profitability, and financial accounting is desirable.

Course Objectives

After completing this course, students will be able to:

Describe data warehouse concepts and architecture considerations.

Select an appropriate hardware platform for a data warehouse.

Design and implement a data warehouse.

Implement Data Flow in an SSIS Package.

Implement Control Flow in an SSIS Package.

Debug and Troubleshoot SSIS packages.

Implement an SSIS solution that supports incremental data warehouse loads and changing data.

Integrate cloud data into a data warehouse ecosystem infrastructure.

MCT USE ONLY. STUDENT USE PROHIBITED

xx About This Course

Implement data cleansing by using Microsoft Data Quality Services.

Implement Master Data Services to enforce data integrity.

Extend SSIS with custom scripts and components.

Deploy and Configure SSIS packages.

Describe how information workers can consume data from the data warehouse.

Course Outline

This section provides an outline of the course:

Module 1, “Introduction to Data Warehousing” Module 2, “Data Warehouse Hardware” Module 3, “Designing and Implementing a Data Warehouse” Module 4, “Creating an ETL Solution with SSIS” Module 5, “Implementing Control Flow in an SSIS Package” Module 6, “Debugging and Troubleshooting SSIS Packages” Module 7, “Implementing an Incremental ETL Process” Module 8, “Incorporating Data from the Cloud into a Data Warehouse” Module 9, “Enforcing Data Quality” Module 10, “Using Master Data Services” Module 11, “Extending SQL Server Integration Services” Module 12, “Deploying and Configuring SSIS Packages” Module 13, “Consuming Data in a Data Warehouse”

MCT USE ONLY. STUDENT USE PROHIBITED

About This Course

xxi

Course Materials

The following materials are included with your kit:

Course Handbook

A succinct classroom learning guide that provides all the critical technical

information in a crisp, tightly-focused format, which is just right for an effective in-class learning experience.

Lessons: Guide you through the learning objectives and provide the key points that are critical to

the success of the in-class learning experience.

Labs: Provide a real-world, hands-on platform for you to apply the knowledge and skills learned

in the module.

Module Reviews and Takeaways: Provide improved on-the-job reference material to boost knowledge and skills retention.

Lab Answer Keys: Provide step-by-step lab solution guidance at your finger tips when it’s needed.

Course Companion Content on the http://www.microsoft.com/learning/companionmoc/ Site:

Searchable, easy-to-navigate digital content with integrated premium on-line resources designed to supplement the Course Handbook. m on-line resources designed to supplement the Course Handbook.

Modules: Include companion content, such as questions and answers, detailed demo steps and

additional reading links, for each lesson. Additionally, they include Lab Review questions and answers

and Module Reviews and Takeaways sections, which contain the review questions and answers, best practices, common issues and troubleshooting tips with answers, and real-world issues and scenarios with answers.

Resources: Include well-categorized additional resources that give you immediate access to the most

up-to-date premium content on TechNet, MSDN®, Microsoft Press®.

Student Course files on the http://www.microsoft.com/learning/companionmoc/ Site: Includes the Allfiles.exe, a self-extracting executable file that http://www.microsoft.com/learning/companionmoc/ Site: Includes the Allfiles.exe, a self-extracting executable file that contains all the files required for the labs and demonstrations.

Course evaluation

At the end of the course, you will have the opportunity to complete an online

evaluation to provide feedback on the course, training facility, and instructor.

To provide additional comments or feedback on the course, send e-mail to support@mscourseware.com. To inquire about the Microsoft Certification Program, send e-mail to mcphelp@microsoft.com.

MCT USE ONLY. STUDENT USE PROHIBITED

xxii About This Course

Virtual Machine Environment

This section provides the information for setting up the classroom environment to support the business scenario of the course.

Virtual Machine Configuration

In this course, you will use Microsoft Hyper-V to perform the labs.

The following table shows the role of each virtual machine used in this course:

Virtual machine

Role

10777-8A-MIA-SQLBI

Application Server

10777-8-MIA-DC1

Domain Controller

MT11-MSL-TMG1

Internet Gateway

Software Configuration

The following software is installed on each VM:

Windows Server® 2008 R2 SP1

Microsoft SQL Server 2012 (on 10777-8A-MIA-SQLBI only)

Microsoft SharePoint Server 2010 (on 10777-8A-MIA-SQLBI only)

Microsoft Office 2010 (on 10777-8A-MIA-SQLBI only)

Course Files

There are files associated with the labs in this course. The lab files are located in the folder D:\10777A\Labfiles\LabXX on the 10777-8A-MIA-SQLBI VM.

Classroom Setup

Each classroom computer will have the same virtual machine configured in the same way.

Course Hardware Level 6+

To ensure a satisfactory student experience, Microsoft Learning requires a minimum equipment configuration for trainer and student computers in all Microsoft Certified Partner for Learning Solutions (CPLS) classrooms in which Official Microsoft Learning Product courseware are taught.

MCT USE ONLY. STUDENT USE PROHIBITED

1-1

Module 1

Introduction to Data Warehousing

Contents:

Lesson 1: Overview of Data Warehousing Lesson 2: Considerations for a Data Warehouse Solution Lab 1: Exploring a Data Warehousing Solution

1-3

1-14

1-28

MCT USE ONLY. STUDENT USE PROHIBITED

1-2

Introductio n to Data Warehous ing

Modu le Over view

1-2 Introductio n to Data Warehous ing Modu le Ove r view Dat a warehousing ana

Dat a warehousing

ana lysis. Impleme nting a data w arehouse sol ution can prov ide a business sign ificant benefi ts, including:

is a solution that organizat ions can use t o centralize b usiness data f or reporting a nd

or other orga anization with

Comprehensi ve and accura te reporting o f key business

information.

A centralized source of bus iness data for analysis and d ecision makin g.

The foundati on for an ente rprise busines s intelligence (BI) solution.

This

module prov ides an introd uction to the key compone nts of a data w arehousing s olution and th e

hig h-level consid erations that y ou must take into account proj ect.

Afte r completing this module, y ou will be abl e to:

Describe the key elements of a data ware housing solut ion.

Describe the key considera tions for a dat a warehousin g project.

when you em bark on a data warehousing

MCT USE ONLY. STUDENT USE PROHIBITED

10777A:

Implementing a Da ta Warehouse with M icrosoft SQL Server 2012

1-3

Lesson

1

Over view of Data W areho using

2012 1-3 Lesso n 1 Over v iew of Data W areho u sing D ata

D ata warehousi ng is a well-es tablished tech nique for cen tralizing busin ess data for r eporting and

A lthough the s pecific details of individual s olutions can v ary, there are some commo n elements in most d ata warehousi ng implement ations. Familia rity with thes e elements wil l enable you t o better plan and b uild an effecti ve data wareh ousing solutio n.

A fter completin g this lesson, you will be ab le to:

Describe th e business pr oblem that da ta warehouses address.

Define a da ta warehouse .

Describe th e commonly

Identify the

Describe a high-level ap

Describe th e component s and features of Microsoft® you can us e in a data wa rehousing sol ution.

analysis.

used data war ehouse archite ectures.

components of a data war ehousing solu tion.

roles that are

roach to impl ementing a d ata warehousi ng project.

involved in a data warehou sing project.

® SQL Server®

Identify the

and other M icrosoft produ cts that

MCT USE ONLY. STUDENT USE PROHIBITED

1-4

Introductio n to Data Warehous ing

Th e Business

Problem

Introductio n to Data Warehous ing Th e Busines s Problem Run ning a busine ss

Run ning a busine ss effectively c an present a s ignificant cha llenge, particu larly as the b usiness grows or is affe cted by trend s in the busine ss’s target ma rket or the gl obal economy . To be succes sful, a busines s mu st adapt to ch anging condit ions, which re quires individu als within the organization to make good

stra tegic and tact ical business d ecisions. How ever, the follo wing business problems can effe ctive business decision mak ing difficult:

Key business data is distribu ted across mu ltiple

often make

This makes it hard to collat e all of the

information n ecessary for a

particular bu siness decision n.

Finding the in formation req uired for busin ess decision m aking is time -consuming an d error-prone . The

need to gath er and reconc ile data from

processes tha t can be furth er undermine d through inc onsistencies b etween duplic ate, contradic tory

sources of th e same inform ation.

multiple sourc es results in sl ow, inefficient decision mak ing

Fundamental business ques tions are hard to answer. M ost business d ecisions requi re a knowledg e of fundamental facts, such as “How many c ustomers do w e have?” or “ Which produc ts do we sell m ost often?” Altho ugh these ma y seem like si mple question s, the distribut ion of data th roughout mu ltiple systems in a t ypical organiz ation can ma ke them diffic ult, or even im possible, to a nswer.

By r esolving thes e problems, it is possible to

mo re successful— both at the st rategic, execu tive level and during day-to -day business operations.

make effective

decisions tha t will help the business to b e

MCT USE ONLY. STUDENT USE PROHIBITED

10777A:

Implementing a Da ta Warehouse with M icrosoft SQL Server 2012

1-5

hat Is a D ata Ware house?

icrosoft SQL Server 2012 1-5 hat Is a D ata Ware h ouse? A data wareho

A data warehou se provides a solution to th e problem of distributed da ta that preven ts effective bu usiness d ecision makin g. There are m any definition s for the term “data wareho use,” and disa greements ov er s pecific implem entation deta ils, but it is ge nerally agreed that a data w arehouse is a centralized st ore of b usiness data t hat can be use d for reportin g and analysis to inform bu siness decision s.

T ypically, a dat

Contains a large volume of data that re lates to histor rical business t ransactions.

Is optimize d for read ope rations that s upport queryi ng the data. T his is in contra st to a typical online

warehouse:

transaction processing (O LTP) databas e that is desig ned to suppor t data insert, u pdate, and d elete operations, too.

Is loaded w ith new or up dated data at regular interv als.

Provides th e basis for ent erprise BI app lications.

MCT USE ONLY. STUDENT USE PROHIBITED

1-6

Introductio n to Data Warehous ing

Da ta Wareh ouse Archi tectures

n to Data Warehous ing Da ta Wareh o use Arch i tectures The re are

The re are many w ays that you c an implemen t a data wareh ouse solution in an organiz ation. Some com mon approac hes include:

Creating a sin gle, central e nterprise data warehouse fo r all business

Creating sma ll, department al data wareh ouses for indi vidual busines s units.

Creating a hu b-and-spoke architecture t hat synchroniz es a central e nterprise data warehouse w ith departmenta l data marts th at contain a s ubset of the d ata warehous e data.

The right architec ture for a give n business mi ght be one of these, or a co mbination of various eleme nts fro m all three app roaches.

units.

MCT USE ONLY. STUDENT USE PROHIBITED

10777A:

Implementing a Da ta Warehouse with M icrosoft SQL Server 2012

1-7

C omponen ts of a Da ta Wareho using Sol ution

1-7 C ompone n ts of a Da ta Wareho using Sol ution A data wareho

A data warehou sing solution usually consis ts of the follo wing elements :

Data sourc es. Sources of business data for the data w arehouse, oft en including

OLTP applicati on

databases

and data that has been expo rted from pro prietary syste ms such as ac counting appl ications.

An extract, transform, an d load (ETL) pr ocess. A work flow for acces sing data in th e data source s, modifying it to conform to the data m odel for the d ata warehouse , and loading it into the dat a warehouse .

Data stagin g areas. Inter mediary locati ons where the

data that is b eing transferr ed to the data

warehouse is stored to p repare it for im warehouse loads.

port into the data warehou se and synch ronize data

A data war ehouse. A rela tional databas e that has bee en designed to querying o f historical bu siness data for reporting and d analysis.

In

provide high -performance

addition, ma ny data wareh ousing solutio ns also includ e:

Data clean sing and dedu plication. A so lution for reso lving quality i ssues in the d ata before it is loaded

into the da ta warehouse.

Master dat a managemen t (MDM). A so lution that pr ovides an aut horitative data definition for business en tities that mu ltiple systems across the org anization use .

MCT USE ONLY. STUDENT USE PROHIBITED

1-8

Introductio n to Data Warehous ing

Da ta Wareh ousing Pro jects

n to Data Warehous ing Da ta Wareh ousing Pro jects A d a ta warehousi

A d ata warehousi ng project has a great deal i n common wi th any other I T implementa tion project, s o it is

pos sible to apply most commo nly used meth odologies, suc h as Agile or Microsoft Solu tions Framew ork

(MS F). However, a

obj ectives and m etrics that are used to drive decision maki ng than other software dev elopment or infr astructure pro jects.

A h igh-level appr oach to imple menting a dat a warehousin g project usua lly includes th e following st eps:

1. Work with bu siness stakeh olders and inf ormation work ers to determ ine the busine ss questions t o

data wareho using project often requires a deeper und erstanding of the key busin ess

which the da ta warehouse must provide answers. They may include

questions such

as:

What wa s the total sal es revenue for each geograp hic sales terri tory in a given

month?

What are

Are our c osts growing or reducing o ver time?

Which sa les employee

our most pro fitable produ cts or services? ?

are meeting their sales tar gets?

2. Determine th e data that is required to an swer these qu estions. It is n ormal to thin k of this data i n

terms of “dim ensions” and “facts.” Facts c ontain the nu merical meas ures that you

so that you c an answer the business ques tions that we re identified in

determine sa les revenue, y ou may need t he sales amou unt for each in dividual sales transaction).

Dimensions r epresent the d ifferent aspec ts of the busi ness by which you want to a ggregate the

measures (fo r example, to

two dimensio ns: a geograp hic dimension so that you c an aggregate sales by territ ory, and a tim e dimension so that you can aggregate sal es by month).

need to aggre gate

step 1 (for ex ample, to

determine sale s revenue for each territory in a given mo nth, you may need

for each territory in a g iven m o nth, you may need Note and Implem

Note

and Implem enting a Data Warehouse.”

Fact and dimensio nal modeling is covered in

more detail in Module 3, “D esigning

MCT USE ONLY. STUDENT USE PROHIBITED

10777A: Implementing a Data Warehouse with Microsoft SQL Server 2012

1-9

3. Identify data sources that contain the data that is required to answer the business questions. These are commonly relational databases that existing line-of-business applications use, but they can also include:

Flat files or XML documents that have been extracted from proprietary systems.

Data in Microsoft SharePoint® lists.

Commercially available data that has been purchased from a data supplier such as the Microsoft

Windows Azure™ Marketplace.

4. Determine the priority of each business question based on:

The importance of answering the question in relation to driving key business objectives.

The feasibility of answering the question from the data available.

A common approach to prioritizing the business questions that you will address in the data warehousing solution is to work with key business stakeholders and plot each question on a quadrant-based matrix like the one shown below. The position of the questions in the matrix helps you to agree the scope of the data warehousing project.

Business importance of the question >

High importance,

High importance,

low feasibility

high feasibility

Low importance,

Low importance,

low feasibility

high feasibility

 

Feasibility of answering the question >

If a large number of questions fall into the high importance, high feasibility category, you may want to consider taking an incremental approach to the project in which you break down the challenge into a number of sub-projects. Each sub-project tackles the problem of implementing the data warehouse schema, ETL solution, and data quality procedures for a specific area of the business, starting with the highest-priority business questions. If you take this incremental approach, you should take care to create an overall design for dimension and fact tables in early iterations of the solution so that subsequent additions to the solution can reuse them.

MCT USE ONLY. STUDENT USE PROHIBITED

1-10

Introduct ion to Data Warehou sing

Da ta Wareh ousing Pro ject Roles

to Data Warehou sin g Da ta Wareh ousing Pro ject Role s A d a

A d ata warehousi ng project typ ically involves several roles. These roles in clude:

A project ma nager. Coordin ates project t asks and sche dules and ens ures that the p roject is com pleted

on time and

A solution arc hitect. Has ov erall responsib ility for the te chnical desig n of the data

solution.

A data model er. Designs th e data wareho use schema.

A database a dministrator.

database. In

within budget .

warehousing

Designs the ph ysical architec ture and conf iguration of t he data wareh ouse

addition, data base administ rators who ha ve responsibili ty for data so urces that are used

in the data w arehousing so lution must b e involved in t he project to provide acces s to the data

sources that t he ETL proces s uses.

An infrastruc ure specialist. Implements t he server and warehousing solution.

An ETL devel oper. Builds th e ETL workflo w for the data warehousing solution.

Business user s. Provide req uirements and help to priori tize the busin ess questions that the data warehousing solution will a nswer. Often, the team incl udes a busines s analyst as a full-time mem ber to help to int erpret the bus iness question s and ensure that the soluti on design me ets the needs of the users.

network infras structure for t he data

Testers. Verif y the business and operatio

Data steward s for each key subject area i n the data war rehousing solu tion. Determi ne data quality and validate data before it enters the dat a warehouse. Data steward s are sometim es referred to as data governo rs.

al functionali ty of the solut ion as it is dev eloped.

rules

MCT USE ONLY. STUDENT USE PROHIBITED

10777A: Implementing a Data Warehouse with Microsoft SQL Server 2012

1-11

In addition to ensuring the appropriate assignment of these roles, you should also consider the importance of executive-level sponsorship of the data warehousing project. The project is significantly more likely to succeed if a high-profile executive sponsor is seen to actively support the creation of the data warehousing solution.

MCT USE ONLY. STUDENT USE PROHIBITED

1-12

Introduct ion to Data Warehou sing

SQ L Server A s a Data

Warehousi ng Platfo rm

sin g SQ L Server A s a Data Warehousi ng Platfo rm SQL ele ments

SQL

ele ments of a dat a warehousin g solution. The se componen ts and feature s include:

The SQL Serv er database en gine. A highly scalable relat ional databas e managemen t system (RDB MS)

can impleme nt a data war ehouse. SQL S erver Enterpris se includes fea tures that ma ke it

Server includ es componen ts and feature s that you can use to imple ment various a rchitectural

on which you

particularly a ppropriate for data wareho using solution s. One feature is optimizatio n of star join queries, whic h significantly enhances the performance of queries in a a typical data warehouse sch ema. Another feat ure is column store indexes, which can sig nificantly enh ance the perfo rmance of da ta warehouse w orkloads.

SQL Server In tegration Serv ices. A compr ehensive and e extensible plat form for creat ing ETL soluti ons,

including sup port for a wid e range of da ta sources and and control f low tasks for c ommon ETL r equirements.

numerous bu uilt-in data flo w transformat ions

SQL Server M aster Data Se rvices. A maste r data manag ement solutio n that enable s organization s to create autho itative data d efinitions for k ey business e ntities, and en sure data con sistency across multiple appl ications and s ystems.

SQL Server D ata Quality Se rvices. A know ledge-based s solution for va lidating, clean sing, and

deduplicating

data.

Microsoft SQ L Azure™. A cl oud-based da tabase platfor m that could in a data war ehousing solu tion.

The Windows Azure Marke tplace DataMa rket. A cloud- based reposit ory of comme rcially availab le datasets that can be incorp orated into yo ur data ware house or that SQL Server Da ta Quality Ser vices can use to va lidate and cle anse data.

be used to pro vide a data so urce

MCT USE ONLY. STUDENT USE PROHIBITED

10777A: Implementing a Data Warehouse with Microsoft SQL Server 2012

1-13

In addition, you can use some SQL Server components and other Microsoft products to build an

enterprise BI solution that extends the value of your data warehouse significantly. These components and

products include:

SQL Server Analysis Services. A service for creating multidimensional and tabular analytical data

models for so-called “slice and dice” analysis, and for implementing data mining models that you can

use to identify trends and patterns in your data.

SQL Server Reporting Services. A solution for creating and distributing reports in a variety of formats for online viewing or printing.

Microsoft SharePoint Server. A web-based portal through which information workers can consume reports and other BI deliverables.

Microsoft Excel®. The world’s most commonly used spreadsheet and data analysis tool.

Microsoft PowerPivot technologies. A powerful analytical engine that enables analysis of large volumes

of data in Excel and sharing of tabular data models in SharePoint Server.

Microsoft Power View. A data visualization tool that provides an intuitive, interactive experience for users who need to perform unstructured analysis of data in a BI semantic model.

MCT USE ONLY. STUDENT USE PROHIBITED

1-14

Introduct ion to Data Warehou sing

Lesson 2

Consid eration s for a Data W arehou use Solu ution

2 Consid eratio n s for a Data W arehou use Solu ution Bef ore starting

Bef ore starting a data warehou sing project, t here are sever al consideratio ns of which y ou should be awa re. Understan ding these co nsiderations w ill help you to create a data warehousing solution that add resses your sp ecific needs a nd constraints .

This

com pleting this le sson, you will be able to:

Describe con siderations for designing a d ata warehous e database.

Describe con siderations for data sources.

Describe con siderations for designing an ETL process.

Describe con siderations for implementin g data quality and master d ata managem ent.

lesson descri bes some of t he key conside rations for pla anning a data warehousing solution. After

MCT USE ONLY. STUDENT USE PROHIBITED

10777A: I mplementing a Data Warehouse with Mi crosoft SQL Server 2 012

1-15

D ata Ware house Dat abase and Storage

2 012 1-15 D ata Ware h ouse Dat abase an d Storage A data wareho

A

data warehou se is a relatio nal database t hat is optimiz ed for reading data for anal ysis and repor ting.

W

hen you are

planning a dat a warehouse, you should ta ke the followi ng considerati ons into acco unt.

D atabase Sc hema

T he logical sche ma of a data warehouse is typically desig ned to denor malize the dat a into a struct ure that

m inimizes the n umber of JOI N operations t hat are requir ed in the que ries that are u sed to retrieve and

a ggregate data . A common a pproach is to design a star s schema in whi ch numerical

in fact tables th at have foreig n keys to mul tiple dimensio n tables that c ontain the bu siness entities by

which

d imensions you r business use rs need to use

a nd at what gra nularity, and

u sed to link fac ts to dimensio ns carefully, a nd consider w hether your d ata warehous e must suppor t the u se of dimensio ns that chang e over time (f or example, h andling dimen sion records f or customers who c hange their ad dress).

w hich the meas ures can be a ggregated. Be fore you desig n your data w arehouse, yo u must know

measures are stored

need to be a nalyzed

when aggreg ating data, w hich measures

which facts inc lude those m easures. You

must also plan the keys that will be

Y ou must also c onsider the p hysical implem entation of t he database, b ecause this w ill affect the p erformance an d manageabi lity of the dat a warehouse. I t is common t o use table pa rtitioning to

d istribute large fact data acro ss multiple fil egroups, each on a different

q uery performa nce and enab les you to imp lement a fileg roup-based b ackup strateg y that can hel p

re

st

physical disk. This can incr ease

duce downti me in the even t of a single-d isk failure. Yo u should also consider the a ppropriate in dexing

rategy for you r data, and w hether to use data compres sion when sto ring the data.

h ether to use data compres s ion when sto ring the data. Note “Designin g

Note

“Designin g and Implem enting a Data Warehouse.”

De signing a dat a warehouse s chema is cove red in more d etail in Modul le 3,

MCT USE ONLY. STUDENT USE PROHIBITED

1-16

Introduction to Data Warehousing

Hardware

The choice of hardware for your data warehouse solution can make a significant difference to the performance, manageability, and cost of your data warehouse. The hardware considerations for a data warehouse include:

Query processing requirements—including anticipated peak memory and CPU utilization.

Storage volume and disk input/output requirements.

Network connectivity and bandwidth.

Component redundancy for high availability.

You can choose to build your own data warehouse solution by purchasing and assembling individual components, use a pretested reference architecture, or purchase a hardware appliance that includes preconfigured components in a ready-to-use package. Factors that influence your choice of hardware include:

Budget.

Existing enterprise agreements with hardware vendors.

Time to solution.

Hardware assembly and configuration expertise.

• Hardware assembly and configuration expertise. Note “Data Warehouse Hardware.” Hardware for data

Note

“Data Warehouse Hardware.”

Hardware for data warehousing solutions is discussed in more detail in Module 2,

High Availability and Disaster Recovery

A data warehouse can very quickly become a business-critical part of your overall application infrastructure, so it is essential to consider how you will ensure its availability. SQL Server includes support for several high-availability techniques including database mirroring and server clustering. You must assess these technologies and choose the best one for your individual solution based on:

Failover time requirements.

Hardware requirements and cost.

Configuration and management complexity.

In addition to a server-level high-availability solution, you must also consider redundancy at the individual component level for network interfaces and storage arrays.

MCT USE ONLY. STUDENT USE PROHIBITED

10777A: Implementing a Data Warehouse with Microsoft SQL Server 2012

1-17

The most robust high-availability solution cannot protect your data warehouse from every eventuality, so

you must also plan a suitable disaster recovery solution that includes a comprehensive backup strategy. Your backup strategy should take into account:

The volume of data in the data warehouse.

The frequency of changes to data in the data warehouse.

The effect of the backup process on data warehouse performance.

The time to recover the database in the event of a failure.

The time to recover the database in the event of a failure. For More Information For

For More Information

For more information about high availability and disaster

recovery techniques for SQL Server, you should attend Course 10775A, Administering Microsoft SQL Server 2012 Databases.

Security

Your data warehouse contains a huge volume of data that is typically commercially sensitive. In addition,

you may want to provide access to some data by all users, but restrict access to some data for a subset of

users.

Considerations for securing your data warehouse include:

The authentication mechanisms that you must support to provide access to the data warehouse.

The permissions that the various users who access the data warehouse will require.

The connections over which data is accessed.

The physical security of the database and backup media.

For More Information• The physical security of the database and backup media. For more information about security features

For more information about security features in SQL Server, you

should attend Course 10775A, Administering Microsoft SQL Server 2012 Databases.

MCT USE ONLY. STUDENT USE PROHIBITED

1-18

Introduct ion to Data Warehou sing

Da ta Source s

1-18 Introduct ion to Data Warehou sin g Da ta Source s You foll o win

You

foll owing factors when plannin g your solutio n.

must identify the data sour ces that provi de the data fo r your data w arehouse, and consider the

Da ta Source C onnection

Types

You r data wareho use may requ ire data from a variety of da ta sources. Fo r each source, you must co nsider

how

rela tional databas es for which y ou can use an OLE DB or O pen Database Connectivity (ODBC) provid er.

Ho wever, some d ata sources m ay use proprie tary storage t hat requires a bespoke prov ider or for wh ich

no

you must deve lop a custom provider or d etermine whe ther it is possi ble to

exp ort data from the data sour ce in a format that the ETL p rocess can ea sily consume

com ma-delimited text).

your ETL pro cess can conn ect and extrac t the required

provider exists . In this case,

data. In man y cases, your d ata sources w ill be

(such as XML

or

Cre dentials an d Permissi ons

Mo st data source s require secu re access in th e form of user r authenticatio n and potenti ally individual

per missions on th e data. You m ust work with the owners o f the data sou rces that you war ehousing solu tion to establi sh:

Credentials t hat your ETL p rocess can use

The required permissions t o access the d ata that the d ata warehouse

use in your da ta

to access the data source.

uses.

MCT USE ONLY. STUDENT USE PROHIBITED

10777A: Implementing a Data Warehouse with Microsoft SQL Server 2012

1-19

Data Formats

A data source may store data in a different format. Your solution must take into account issues arising from this, including:

Conversion of data from one data type to another—for example, extracting numeric values from a text file.

Truncation of data when copying data to a destination that has a limited data length.

Date and time formats that are used in data sources.

Numeric formats, scales, and precisions.

Support for Unicode characters.

Data Acquisition Windows

Depending on the workload patterns of the business, each data source may have time periods where the

data source is unavailable or the level of usage is such that the additional overhead of a data extraction is

undesirable. When you plan a data warehousing solution, you must work with each data source owner to

determine appropriate data acquisition windows based on:

The workload pattern of the data source, and its resource utilization and capacity levels.

The volume of data to be extracted, and the time that it takes to extract it.

The frequency with which you need to update the data warehouse with fresh data.

If applicable, the time zones in which business users are accessing the data.

MCT USE ONLY. STUDENT USE PROHIBITED

1-20

Introduct ion to Data Warehou sing

Ex tract, Tran sform, an d Load Pr ocesses

sin g Ex t ract, Tra n sform, an d Load Pr o cesses A si

A si gnificant part of the effort i n creating a d ata warehouse

pro cess. When yo u design an E TL process for a data wareh ousing solutio n, you must c onsider the foll owing factors.

Sta ging

In s ome data war ehousing solu tions, you can transfer data directly from

war ehouse witho ut any interme diary staging. However, in

dat a to:

solution is th e implementa tion of an ETL

data sources t o the data

many cases, yo u should con sider staging

Synchronize

a data wareho use refresh th at includes so urce data that has been extr acted during

multiple data acquisition w indows.

Perform data validation, cl the data war ehouse.

ansing, and d eduplication

operations on the data befo re it is loaded into

Perform tran sformations o n the data tha t cannot be pe erformed duri ng the data ex traction or da ta flow processe s.

If

a staging area i s required in y our solution,

you must deci de on a forma t for the stag ed data. Possi ble

for mats include:

A relational d atabase.

Raw files (bin ary files in a p roprietary for mat of the ETL

The decision on f ormat is based

The need to

The time that

Text or XML

iles.

platform bei ng used).

on several fa ctors includin g:

access and mo dify the stage d data.

is taken to st ore and read t he staging da ta.

MCT USE ONLY. STUDENT USE PROHIBITED

10777A: Implementing a Data Warehouse with Microsoft SQL Server 2012

1-21

Finally, if a relational database is used as the staging area, you must decide where this database will reside.

Possible choices include:

A dedicated staging server.

A dedicated SQL Server instance on the data warehouse server.

A dedicated staging database in the same instance of SQL Server as the data warehouse.

A collection of staging tables (perhaps in a dedicated schema) in the data warehouse database.

Factors that you should consider when deciding the location of the staging database include:

Server hardware requirements and cost.

The time that is taken to transfer data across network connections.

The use of Transact-SQL loading techniques that perform better when the staging data and data warehouse are co-located on the same SQL Server instance.

The server resource overheads that are associated with the staging and data warehouse load processes.

Required Transformations

Most ETL processes require that the data that is being extracted from data sources is modified to match the schema of the data warehouse. When you plan an ETL process for a data warehousing solution, you must examine the source data and destination schema, and identify what transformations are required. Then you must determine the optimal place within the ETL process to perform these transformations. Choices for implementing data transformations include:

During the data extraction. For example, by concatenating two fields in a SQL Server data source into

a single field in the Transact-SQL query that is used to extract the data.

In the data flow. For example, by using a Derived Column data transformation task in a SQL Server Integration Services data flow.

In the staging area. For example, by using a Transact-SQL query to apply default values to null fields in a staging table.

Factors that affect the choice of data transformation technique include:

The performance overhead of the transformation. Typically, it is best to use the approach that has the

least performance overhead. Set-based operations that are performed in Transact-SQL queries usually

perform better than row-based transformations that are applied in a data flow.

The level of support for querying and updating in the data source or staging area. In cases where you are extracting data from a comma-delimited file and staging it in a raw file, your options to perform transformations are limited to row-by-row transformations in the data flow.

Dependencies on data that is required for the transformation. For example, you might need to look up

value in one data source to obtain additional data from another data source. In this case, you must

a

perform the data transformation in a location where both data sources are accessible.

The complexity of the logic that is involved in the transformation. In some cases, a transformation may

require multiple steps and branches depending on the presence or value of specific data fields. In this

case, it is often easier to apply the transformation by combining several steps in a data flow than it is

to create a Transact-SQL statement to perform the transformation.

MCT USE ONLY. STUDENT USE PROHIBITED

1-22

Introduction to Data Warehousing

Incremental ETL

After the initial load of the data warehouse, you will usually need to incrementally load new or updated source data into the data warehouse. When you plan your data warehousing solution, you must consider the following factors that relate to incremental ETL:

How will you identify new or modified records in the data sources?

Do you need to delete records in the data warehouse when corresponding records in the data sources are deleted? If so, will you physically delete the records, or simply mark them as inactive (often referred to as a logical delete)?

How will you determine whether a record that is to be loaded into the data warehouse should be a new record or an update to an existing record?

Are there records in the data warehouse for which historical values must be preserved by creating a new version of the record instead of updating the existing record?

of the record instead of updating the existing record? Note Module 7, “Implementing an Incremental ETL

Note

Module 7, “Implementing an Incremental ETL Process.”

Managing data changes in an incremental ETL process is discussed in more detail in

MCT USE ONLY. STUDENT USE PROHIBITED

10777A: I mplementing a Data Warehouse with Mi crosoft SQL Server 2 012

1-23

D ata Quali ty and Ma ster Data Managem ent

012 1-23 D ata Quali t y and Ma ster Data Manage m ent by the

by the qualit y of the data t hat it contain s. For

th is reason, wh en you plan a data warehou sing project, y ou should det ermine how y ou will ensure data q uality and you should consi der the use of a master data management solution.

T he usefulness of a data ware house is large ly determined

D ata Quality

T o validate and enforce the q uality of the d ata in your da ta warehouse , it is recomm ended that bu siness u sers who have knowledge o f each subject area that the data warehou se addresses t ake on the rol e of d ata steward fo r that area. A data steward i s responsible for:

Building an d maintaining

Validating data against t he knowledge base.

Ensuring th at consistent values are use d for data attr ibutes where multiple form s of the value may be

a knowledge base that ide ntifies commo n data errors and correctio ns.

considered valid (for exa mple, ensuring

when refer ring to Americ a, even thoug h “USA,” “The U.S.” and “Am erica” are als o valid values) .

that a Count ry field always

uses the valu e “United Stat es”

Identifying and correctin g missing data

Identifying and consolida ting duplicate

values.

data entities (such as a cus tomer record for “Robert S mith”