scale out - wordpress.com · scale-what? scalability is the capability of a system, network, or...

40
Scale Out mit SSIS 2017 Wolfgang Strasser [email protected] @wstrasser http://workingondata.wordpress.com/passcamp2017

Upload: others

Post on 03-Jun-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Outmit SSIS 2017

Wolfgang [email protected]

@wstrasser

http://workingondata.wordpress.com/passcamp2017

Page 2: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

SSIS 2017

https://docs.microsoft.com/en-us/sql/integration-services/what-s-new-in-integration-services-in-sql-server-2017

Page 3: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scalability

Page 4: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale-What?

Scalability is the capability of a system, network, or process to handle a growing amount of work,

or its potential to be enlarged to accommodate that growth.(Bondi, André B. (2000). Characteristics of scalability and their impact on performance. Proceedings of the second international workshop on Software and performance – WOSP '00. p. 195. )

Page 5: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scalability

Scalability is the capability of a system, network, or process to handle a growing amount of work,

or its potential to be enlarged to accommodate that growth.(Bondi, André B. (2000). Characteristics of scalability and their impact on performance. Proceedings of the second international workshop on Software and performance – WOSP '00. p. 195. )

Page 6: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Types of Scalability

Functional

Geographic

Administrative

Load

Generation

ScalabilityMore users? No problem!

New functionality with minimal effort

No problems with going global

Add new generations of components

React to changing loadsHigher number of requests

https://en.wikipedia.org/wiki/Scalability

Page 7: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Vertical versus Horizontal Scaling

Scale Up/Down„Vertical Scalability“

More CPU, Memory

Virtualization

Scale Out/In„Horizontal Scalability“

More Nodes

„Cluster“

Page 8: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Out - Personas

Master Workers

Gets instructions from client

Knows the list of active workers

Job overview

Current state of work

Claim tasks from Master

Work on tasks

Return results and work report

Know their profession

Page 9: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale-Out in SSIS 2017

Page 10: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Out in SSIS 2017

Master

SSISDB

SSIS

Mas

ter

Serv

ice

Worker

Wo

rke

r Se

rvic

e

….

Worker

Wo

rker

Se

rvic

e

Worker

Wo

rker

Se

rvic

e

Page 11: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Installation & Configuration

Page 12: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Out Master - Installation

PrerequisitesDB-Engine: Mixed Authentication

Page 13: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

SSIS Scale Out Master - Configuration

Port NumberDefault: 8391

Do not forget Firewall

SSL Certificate! „self“ Self-signed certificates

Page 14: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Out Master – SSISDB

Page 15: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Out Worker - Installation

Page 16: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

SSS Scale Out - Certificates

Every machine in SSIS Scale Out topology needs own certificate

Master needs workers-certificates

Workers need master-certificate

During (master and worker) setup, certificates are created

But you can use your own certificates!

M w1 w2 wx

Page 17: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

SSIS Scale Out – Certificates Workflow

Install SSIS Scale Out Master service

Copy worker certificate from worker machine

Install worker certificate (storage location)

Copy Master certificate to worker

Install master certificate (storage location)

Install Scale Out Worker service

Restart Worker service

M w1 w2 wx

C:\Program Files\Microsoft SQL Server\140\DTS\Binn

Master Machine Worker Machine

Page 18: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Improve the Worker Setup experience

setup.exe/ACTION=Install/FEATURES=IS_Worker/ISWORKERSVCACCOUNT="NT SERVICE\SSISScaleOutWorker140"/ISWORKERSVCSTARTUPTYPE=Automatic/ISWORKERSVCMASTER=https://ssismaster01:8391/ISWORKERSVCCERT="\\pathTo\SSISScaleOutMaster.cer" /QS/IACCEPTSQLSERVERLICENSETERMS

Certificates, certificates, certificates!!

Page 19: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

SSIS Scale-Out Manager

Page 20: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

SSIS Scale-Out Manager - Worker Manager

Page 21: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Add New Worker

Page 22: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Out – Check the Environment (SSISDB)

Page 23: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

SSIS Scale Out Workers

Page 24: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Execute in Scale Out

Page 25: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Catalog Option – Default Execution Mode

Page 26: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Execute in Scale-Out (SSMS)

Page 27: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Out Execution (T-SQL)

Create execution

Set parameters

Define workers

Start execution

Page 28: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Execution Monitoring

Page 29: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Execution Monitoring

Page 30: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Execution Monitoring (T-SQL) SSISDB

Page 31: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Execution Monitoring (behind the scenes)

Worker – Execution LoggingC:\Users\SSISScaleOutWorker140\AppData\Local\SSIS\ScaleOut\AgentC:\Users\SSISScaleOutWorker140\AppData\Local\SSIS\ScaleOut\Tasks

Master – LoggingC:\Users\SSISScaleOutMaster140\AppData\Local\SSIS\ScaleOut\Master

Worker

Page 32: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Execution Monitoring (behind the scenes)

How are logging messages transferred to the server?##MS_SSISLogDBWorkerAgentUser##

Works fine if network is available

Documentations states, that logging is cached locally..

Master Worker

Page 33: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

SSIS DB Roles

Page 34: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Configuration Options

Page 35: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Out – Configuration Options

C:\Program Files\Microsoft SQL Server\140\DTS\Binn

Restart services!

Page 36: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Out in SSIS 2017

Master

SSISDB

SSIS

Mas

ter

Serv

ice

certificates

M w1 w2 wx

Worker

Wo

rke

r Se

rvic

e

Package Executions

certificates

w1Mconfiglogs

config

logs

….

Worker

Wo

rker

Se

rvic

e

Package Executions

certificates

w2Mconfiglogs

Worker

Wo

rker

Se

rvic

e

Package Executions

certificates

wxMconfiglogs

Page 37: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Licensing

Page 38: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Licensing

As of 2017-09-14: https://docs.microsoft.com/en-us/sql/integration-services/integration-services-features-supported-by-the-editions-of-sql-server

Page 39: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Scale Outmit SSIS 2017

Wolfgang [email protected]

@wstrasser

workingondata.wordpress.com

Page 40: Scale Out - WordPress.com · Scale-What? Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to be enlarged to accommodate

Some Links

• https://docs.microsoft.com/en-us/sql/integration-services/scale-out/troubleshooting-scale-out

• https://docs.microsoft.com/en-us/sql/integration-services/scale-out/integration-services-ssis-scale-out