SlideShare a Scribd company logo
1 of 26
How Microsoft protects its Network Remus Rusanu High Volume Real Time Contiguous ETL and Audit
Agenda Network Access Protection NAP Audit as implemented by Microsoft IT Service Broker in 5 slides High Availability, Scale Out and Real Time Demo Similar Projects Q&A
Network Risks Highly connected Distributed data Mobile workers Remote access  Web services Wireless Mobile smart devices
Network Access Protection Policy ValidationEvaluates company security policies and determines compliant computers (“healthy”) vs. non-compliant ones (“unhealthy”) Network RestrictionRestricts network access based on computer “health” RemediationApplies necessary updates for non-compliant computers to become compliant, “healthy”. Once healthy, the network restrictions are lifted Ongoing ComplianceChanges to the company’s security policy or to the computers compliance trigger a new evaluation of network restrictions Health Agents Windows Security Health Agent, SCCM, IPSec, Wireless, VPN, Forefront, DHCP, BitLocker
NAP Overview
NAP Modes Reporting Mode Backend receives metrics, no client impact Capture/analyze daily statistics of unhealthy vs. healthy clients Estimate impact to user base if enforcement enabled Deferred Enforcement Mode No network restrictions during the deferment period End users receive notifications when non-compliant Helpdesk contacted by end users in regards to notifications Enforced Mode Non compliant systems are quarantined. Productivity affected during quarantine. Health certificate required to access other NAP enable clients/servers
NAP Audit Network Protection Server logging: Text files SQL: exec dbo.ReportEvent @event; @event is an XML. Correlated by a session-id: Network access request (session start) Request Accepted/Request Denied Accounting information (for VPN every 10 min) The Health status is part of the second packet Status of each SHA on the computer: OS updates, firewall, anti-virus  etc
NAP Reporting Aggregate all NAP audit events into a DW Allow analysis of Compliant/Non-compliant status and evolution Reasons for non-compliance Most frequent causes of computer quarantine Efficiency of automatic remediation Forensic analysis of computers and users activity
Processing NAP Audit Events Service Broker Delivery XML Shredding Transactional Replication 47 geo-distributed  NPS Servers Local ReportEvent Mirrored Publication Mirroring allows for Maintenance Downtimes Mirrored Routes
A Crash Course on Service Broker Message based communication between SQL Server instances SEND is a T-SQL verb to send a message SEND ON CONVERSATION @handle (‘Hello, World’); RECEIVE is a T-SQL verb to receive messages Conversations are message exchange sessions Durable, persisted in the database Long lived, can be reused for days, years BEGIN CONVERSATION starts a conversation END CONVERSATION ends a conversation Any message belongs to exactly one conversation Order of delivery is guaranteed within a conversation
A Service Broker Application
The small print: all the Broker Objects Service An addressable Broker destination. Think mailing address. Message Types, Contracts Formalize the messages a Service can accept.  Think COM Interfaces. Queues Where a Service keeps its messages until they are Received. Think mailbox. Remote Service Bindings Associate a targeted service with an identity (certificate) ‘when you send to service Foo, encrypt the data with certificate Bar’ Routes Specify the physical location of a Service.  Think Post Master. Endpoints Configure the communication protocol to be used TCP listener port Authentication and authorization Encryption scheme Allows two SQL Server instances to connect
The Nugget: Activation Attach a stored procedure to a Service Broker Queue Will run when there are messages in the queue Will run a stored procedure inside SQL Server No external connection required Fully contained within the database No external process No msdb configuration No SQL Agent requirement Magically tunes itself to the load Launches new procedure instances as needed WAITFOR (RECEIVE …) is internationally LIFO When load is reduced, procedures timeout and exit Transactional semantics Will launch after a server shutdown and restart Will launch after a mirroring failover Will launch after a cluster failover Will launch after an attach or a restore The Server can crash and burn the procedure will launch when your DR procedure is complete
Local Availability: SQL Express If the NPS Server is running, the SQL Express is likely running too Express is light on resource usage  Single CPU 1 GB RAM buffer pool 4Gb (10GB in R2) DB size Transact-SQL programming Cheap to distribute to hundreds of sites
Reliable Delivery: Service Broker SEND is a local transaction Never affected by the target availability Guarantees Exactly Once In Order delivery Handles retries Target downtime Connection problems can be resolved day, months even years after occurred without data loss Security can traverse domains NTLM/Kerberos  Certificates Authentication, Authorization, Encryption handled at SQL endpoint configuration level
Scale Out: Service Broker Hundreds and thousands of peers EdConhandles +1500 data sources Abstracts physical location with ROUTEs Server relocation Heterogeneous SQL 2005/SQL 2008 Rolling upgrade of the deployed servers Available on all editions including Express High Throughput Spikes can be delivered at +6000 msgs/sec  Highly optimized code path to insert into target
Process XML: XPath and Activation Service Broker Internal Activation readers launched when messages arrive Self-tuning reader count MAX_QUEUE_READERS No pulling! XML payload projected into columns  XPath XQuery Automatic processing batching RECEIVE TOP 1000 creates a 1000 size batch to process Correlation awareness  NPS packets 1 (Start) and 2/3 (Accept/Reject) processed by the same reader Original order is preserved during processing
DW: Transactional Replication Isolate the XML shredding from reporting Different indexes for processing vs. reporting Processing server delete data after 10 days DW retains 1 year of data (~1.5 TB) Transactional Replication Preserves order of operations Preserves transaction boundaries Easy to deploy and manage between few peers Supports mirrored publishers
Availability: Mirroring Activation processing is entirely DB contained No msdb jobs, no master dependencies Transactional consistent  Automatically starts up on new host after failover Service Broker Routing is mirroring aware CREATE ROUTE … WITH ADDRESS = ‘tcp://principalname’,MIRROR_ADDRESS = ‘tcp://mirorrname’; Will instantly follow a failover Mirroring allows for maintenance to occur Apply CU and SP Apply OS patches
DEMO
Similar Projects Real Time Analytics with SQL Server 2008 R2 StreamInsight Silverlight media content delivery metrics nbcolympics.com, March Madness Real Time metrics with R2 StreamInsight Trends and analysis in DW Aggregated with Service Broker Processed with Activation SSIS for upload into DW
Silverlight Metrics Collection WCF to reportUsage Metrics StreamInsight Real Time Service Broker Local SEND Silverlight media player Activation Processing SSIS Extraction into OLAP DW
Critical for Performance Reuse Broker conversations Each SEND on its own conversation: ~15 writes into 6 tables (for a full round-trip) SEND on an existing conversation: 2 writes on 2 tables RECEIVE cannot batch process messages on distinct conversations
Gotchas Mirroring support for DB master key sp_control_dbmasterkey_password Allows Service Broker to open the database master key on the new principal, after a failover Mirroring and Service Broker routes If the mirroring session is suspended, rotes must be modified Replication and mirroring Only publisher can be mirrored Principal and Mirror must share the same distributor –PublisherFailoverPartner parameter added to the Log Reader agent Replication and SQL 2008 Upgrade rollout Publisher version must be less than Distributor version SQL Express is the have-not of monitoring No Data Collection Sets support
Acknowledgements Tom Baker, Senior SE Systems Engineer Roger Doherty, Senior Technical Evangelist
Q&A slideshare.net/rusanu @rusanu

More Related Content

What's hot

Large Scale Deployment of SOA-P
Large Scale Deployment of SOA-PLarge Scale Deployment of SOA-P
Large Scale Deployment of SOA-PC2B2 Consulting
 
Overture carrier classorchestration_sd_nandnfv_ctopraysonpate_10-2013
Overture carrier classorchestration_sd_nandnfv_ctopraysonpate_10-2013Overture carrier classorchestration_sd_nandnfv_ctopraysonpate_10-2013
Overture carrier classorchestration_sd_nandnfv_ctopraysonpate_10-2013Overture Networks
 
Designing apps for resiliency
Designing apps for resiliencyDesigning apps for resiliency
Designing apps for resiliencyMasashi Narumoto
 
Etl, esb, mq? no! es Apache Kafka®
Etl, esb, mq?  no! es Apache Kafka®Etl, esb, mq?  no! es Apache Kafka®
Etl, esb, mq? no! es Apache Kafka®confluent
 
Data Pipelines with Apache Kafka
Data Pipelines with Apache KafkaData Pipelines with Apache Kafka
Data Pipelines with Apache KafkaBen Stopford
 
Redis and Kafka - Simplifying Advanced Design Patterns within Microservices A...
Redis and Kafka - Simplifying Advanced Design Patterns within Microservices A...Redis and Kafka - Simplifying Advanced Design Patterns within Microservices A...
Redis and Kafka - Simplifying Advanced Design Patterns within Microservices A...HostedbyConfluent
 
Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...
Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...
Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...confluent
 
A Day in the Life of a Metro-veloper
A Day in the Life of a Metro-veloperA Day in the Life of a Metro-veloper
A Day in the Life of a Metro-veloperDucas Francis
 
Psdot 15 performance analysis of cloud computing
Psdot 15 performance analysis of cloud computingPsdot 15 performance analysis of cloud computing
Psdot 15 performance analysis of cloud computingZTech Proje
 
Grinding the java monolith
Grinding the java monolithGrinding the java monolith
Grinding the java monolithMichael Nygard
 
Migration of Microsoft Workloads
Migration of Microsoft WorkloadsMigration of Microsoft Workloads
Migration of Microsoft WorkloadsAmazon Web Services
 
Hard Truths About Streaming and Eventing (Dan Rosanova, Microsoft) Kafka Summ...
Hard Truths About Streaming and Eventing (Dan Rosanova, Microsoft) Kafka Summ...Hard Truths About Streaming and Eventing (Dan Rosanova, Microsoft) Kafka Summ...
Hard Truths About Streaming and Eventing (Dan Rosanova, Microsoft) Kafka Summ...confluent
 
Event driven architecture
Event driven architectureEvent driven architecture
Event driven architectureVinod Wilson
 
Microservices, Monoliths, SOA and How We Got Here
Microservices, Monoliths, SOA and How We Got HereMicroservices, Monoliths, SOA and How We Got Here
Microservices, Monoliths, SOA and How We Got HereLightbend
 
A Year of “Testing” the Cloud for Development and Test
A Year of “Testing” the Cloud for Development and TestA Year of “Testing” the Cloud for Development and Test
A Year of “Testing” the Cloud for Development and TestTechWell
 

What's hot (20)

Large Scale Deployment of SOA-P
Large Scale Deployment of SOA-PLarge Scale Deployment of SOA-P
Large Scale Deployment of SOA-P
 
Overture carrier classorchestration_sd_nandnfv_ctopraysonpate_10-2013
Overture carrier classorchestration_sd_nandnfv_ctopraysonpate_10-2013Overture carrier classorchestration_sd_nandnfv_ctopraysonpate_10-2013
Overture carrier classorchestration_sd_nandnfv_ctopraysonpate_10-2013
 
Designing apps for resiliency
Designing apps for resiliencyDesigning apps for resiliency
Designing apps for resiliency
 
Etl, esb, mq? no! es Apache Kafka®
Etl, esb, mq?  no! es Apache Kafka®Etl, esb, mq?  no! es Apache Kafka®
Etl, esb, mq? no! es Apache Kafka®
 
Data Pipelines with Apache Kafka
Data Pipelines with Apache KafkaData Pipelines with Apache Kafka
Data Pipelines with Apache Kafka
 
Redis and Kafka - Simplifying Advanced Design Patterns within Microservices A...
Redis and Kafka - Simplifying Advanced Design Patterns within Microservices A...Redis and Kafka - Simplifying Advanced Design Patterns within Microservices A...
Redis and Kafka - Simplifying Advanced Design Patterns within Microservices A...
 
CloudStack Scalability
CloudStack ScalabilityCloudStack Scalability
CloudStack Scalability
 
Designing microservices
Designing microservicesDesigning microservices
Designing microservices
 
Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...
Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...
Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...
 
A Day in the Life of a Metro-veloper
A Day in the Life of a Metro-veloperA Day in the Life of a Metro-veloper
A Day in the Life of a Metro-veloper
 
Going Serverless on AWS
Going Serverless on AWSGoing Serverless on AWS
Going Serverless on AWS
 
Psdot 15 performance analysis of cloud computing
Psdot 15 performance analysis of cloud computingPsdot 15 performance analysis of cloud computing
Psdot 15 performance analysis of cloud computing
 
Grinding the java monolith
Grinding the java monolithGrinding the java monolith
Grinding the java monolith
 
Uncoupling
UncouplingUncoupling
Uncoupling
 
Migration of Microsoft Workloads
Migration of Microsoft WorkloadsMigration of Microsoft Workloads
Migration of Microsoft Workloads
 
Hard Truths About Streaming and Eventing (Dan Rosanova, Microsoft) Kafka Summ...
Hard Truths About Streaming and Eventing (Dan Rosanova, Microsoft) Kafka Summ...Hard Truths About Streaming and Eventing (Dan Rosanova, Microsoft) Kafka Summ...
Hard Truths About Streaming and Eventing (Dan Rosanova, Microsoft) Kafka Summ...
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Event driven architecture
Event driven architectureEvent driven architecture
Event driven architecture
 
Microservices, Monoliths, SOA and How We Got Here
Microservices, Monoliths, SOA and How We Got HereMicroservices, Monoliths, SOA and How We Got Here
Microservices, Monoliths, SOA and How We Got Here
 
A Year of “Testing” the Cloud for Development and Test
A Year of “Testing” the Cloud for Development and TestA Year of “Testing” the Cloud for Development and Test
A Year of “Testing” the Cloud for Development and Test
 

Viewers also liked

Using Continuous Etl With Real Time Queries To Eliminate My Sql Bottlenecks
Using Continuous Etl With Real Time Queries To Eliminate My Sql BottlenecksUsing Continuous Etl With Real Time Queries To Eliminate My Sql Bottlenecks
Using Continuous Etl With Real Time Queries To Eliminate My Sql BottlenecksMySQLConference
 
Processing Near Real-Time Global Vessel Data
Processing Near Real-Time Global Vessel DataProcessing Near Real-Time Global Vessel Data
Processing Near Real-Time Global Vessel DataSafe Software
 
Hand Coding ETL Scenarios and Challenges
Hand Coding ETL Scenarios and ChallengesHand Coding ETL Scenarios and Challenges
Hand Coding ETL Scenarios and Challengesmark madsen
 
Real time ETL processing using Spark streaming
Real time ETL processing using Spark streamingReal time ETL processing using Spark streaming
Real time ETL processing using Spark streamingdatamantra
 
Introduction to Real-time data processing
Introduction to Real-time data processingIntroduction to Real-time data processing
Introduction to Real-time data processingYogi Devendra Vyavahare
 

Viewers also liked (7)

Using Continuous Etl With Real Time Queries To Eliminate My Sql Bottlenecks
Using Continuous Etl With Real Time Queries To Eliminate My Sql BottlenecksUsing Continuous Etl With Real Time Queries To Eliminate My Sql Bottlenecks
Using Continuous Etl With Real Time Queries To Eliminate My Sql Bottlenecks
 
Processing Near Real-Time Global Vessel Data
Processing Near Real-Time Global Vessel DataProcessing Near Real-Time Global Vessel Data
Processing Near Real-Time Global Vessel Data
 
ETL DW-RealTime
ETL DW-RealTimeETL DW-RealTime
ETL DW-RealTime
 
kafka for db as postgres
kafka for db as postgreskafka for db as postgres
kafka for db as postgres
 
Hand Coding ETL Scenarios and Challenges
Hand Coding ETL Scenarios and ChallengesHand Coding ETL Scenarios and Challenges
Hand Coding ETL Scenarios and Challenges
 
Real time ETL processing using Spark streaming
Real time ETL processing using Spark streamingReal time ETL processing using Spark streaming
Real time ETL processing using Spark streaming
 
Introduction to Real-time data processing
Introduction to Real-time data processingIntroduction to Real-time data processing
Introduction to Real-time data processing
 

Similar to High volume real time contiguous etl and audit

Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"
Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"
Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"Fwdays
 
GWAB 2015 - Data Plaraform
GWAB 2015 - Data PlaraformGWAB 2015 - Data Plaraform
GWAB 2015 - Data PlaraformMarcelo Paiva
 
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...MongoDB
 
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...MongoDB
 
Jeffrey Richter
Jeffrey RichterJeffrey Richter
Jeffrey RichterCodeFest
 
Handling Data in Mega Scale Systems
Handling Data in Mega Scale SystemsHandling Data in Mega Scale Systems
Handling Data in Mega Scale SystemsDirecti Group
 
Migrating your Databases to AWS: Deep Dive on Amazon RDS and AWS Database Mig...
Migrating your Databases to AWS: Deep Dive on Amazon RDS and AWS Database Mig...Migrating your Databases to AWS: Deep Dive on Amazon RDS and AWS Database Mig...
Migrating your Databases to AWS: Deep Dive on Amazon RDS and AWS Database Mig...Amazon Web Services
 
Continuent Tungsten - Scalable Saa S Data Management
Continuent Tungsten - Scalable Saa S Data ManagementContinuent Tungsten - Scalable Saa S Data Management
Continuent Tungsten - Scalable Saa S Data Managementguest2e11e8
 
Day Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure PlatformDay Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure PlatformWade Wegner
 
lec3_10.ppt
lec3_10.pptlec3_10.ppt
lec3_10.pptImXaib
 
Microservices: Breaking Apart the Monolith
Microservices:  Breaking Apart the Monolith Microservices:  Breaking Apart the Monolith
Microservices: Breaking Apart the Monolith Iron.io
 
Introduction To .Net Compact Framework and SQL Server CE Development
Introduction To .Net Compact Framework and SQL Server CE DevelopmentIntroduction To .Net Compact Framework and SQL Server CE Development
Introduction To .Net Compact Framework and SQL Server CE Developmentchristopherfairbairn
 
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...MSDEVMTL
 
Datavail Accelerates AWS Adoption for Sony DADC New Media Solutions PPT
 Datavail Accelerates AWS Adoption for Sony DADC New Media Solutions PPT Datavail Accelerates AWS Adoption for Sony DADC New Media Solutions PPT
Datavail Accelerates AWS Adoption for Sony DADC New Media Solutions PPTAmazon Web Services
 
Brk3288 sql server v.next with support on linux, windows and containers was...
Brk3288 sql server v.next with support on linux, windows and containers   was...Brk3288 sql server v.next with support on linux, windows and containers   was...
Brk3288 sql server v.next with support on linux, windows and containers was...Bob Ward
 
"The latest and greatest from Azure Service Bus", Eldert Grootenboer
"The latest and greatest from Azure Service Bus", Eldert Grootenboer"The latest and greatest from Azure Service Bus", Eldert Grootenboer
"The latest and greatest from Azure Service Bus", Eldert GrootenboerFwdays
 
SQL Azure Dec 2010 Update
SQL Azure Dec 2010 UpdateSQL Azure Dec 2010 Update
SQL Azure Dec 2010 UpdateEric Nelson
 
SQL Azure Dec Update
SQL Azure Dec UpdateSQL Azure Dec Update
SQL Azure Dec UpdateEric Nelson
 
Real Time Apps with SignalR Core
Real Time Apps with SignalR CoreReal Time Apps with SignalR Core
Real Time Apps with SignalR CoreSam Basu
 

Similar to High volume real time contiguous etl and audit (20)

Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"
Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"
Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"
 
GWAB 2015 - Data Plaraform
GWAB 2015 - Data PlaraformGWAB 2015 - Data Plaraform
GWAB 2015 - Data Plaraform
 
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
 
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
Transforming a Large Mission-Critical E-Commerce Platform from a Relational A...
 
Jeffrey Richter
Jeffrey RichterJeffrey Richter
Jeffrey Richter
 
Handling Data in Mega Scale Systems
Handling Data in Mega Scale SystemsHandling Data in Mega Scale Systems
Handling Data in Mega Scale Systems
 
Introduction To Cloud Computing
Introduction To Cloud ComputingIntroduction To Cloud Computing
Introduction To Cloud Computing
 
Migrating your Databases to AWS: Deep Dive on Amazon RDS and AWS Database Mig...
Migrating your Databases to AWS: Deep Dive on Amazon RDS and AWS Database Mig...Migrating your Databases to AWS: Deep Dive on Amazon RDS and AWS Database Mig...
Migrating your Databases to AWS: Deep Dive on Amazon RDS and AWS Database Mig...
 
Continuent Tungsten - Scalable Saa S Data Management
Continuent Tungsten - Scalable Saa S Data ManagementContinuent Tungsten - Scalable Saa S Data Management
Continuent Tungsten - Scalable Saa S Data Management
 
Day Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure PlatformDay Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure Platform
 
lec3_10.ppt
lec3_10.pptlec3_10.ppt
lec3_10.ppt
 
Microservices: Breaking Apart the Monolith
Microservices:  Breaking Apart the Monolith Microservices:  Breaking Apart the Monolith
Microservices: Breaking Apart the Monolith
 
Introduction To .Net Compact Framework and SQL Server CE Development
Introduction To .Net Compact Framework and SQL Server CE DevelopmentIntroduction To .Net Compact Framework and SQL Server CE Development
Introduction To .Net Compact Framework and SQL Server CE Development
 
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
 
Datavail Accelerates AWS Adoption for Sony DADC New Media Solutions PPT
 Datavail Accelerates AWS Adoption for Sony DADC New Media Solutions PPT Datavail Accelerates AWS Adoption for Sony DADC New Media Solutions PPT
Datavail Accelerates AWS Adoption for Sony DADC New Media Solutions PPT
 
Brk3288 sql server v.next with support on linux, windows and containers was...
Brk3288 sql server v.next with support on linux, windows and containers   was...Brk3288 sql server v.next with support on linux, windows and containers   was...
Brk3288 sql server v.next with support on linux, windows and containers was...
 
"The latest and greatest from Azure Service Bus", Eldert Grootenboer
"The latest and greatest from Azure Service Bus", Eldert Grootenboer"The latest and greatest from Azure Service Bus", Eldert Grootenboer
"The latest and greatest from Azure Service Bus", Eldert Grootenboer
 
SQL Azure Dec 2010 Update
SQL Azure Dec 2010 UpdateSQL Azure Dec 2010 Update
SQL Azure Dec 2010 Update
 
SQL Azure Dec Update
SQL Azure Dec UpdateSQL Azure Dec Update
SQL Azure Dec Update
 
Real Time Apps with SignalR Core
Real Time Apps with SignalR CoreReal Time Apps with SignalR Core
Real Time Apps with SignalR Core
 

Recently uploaded

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 

Recently uploaded (20)

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 

High volume real time contiguous etl and audit

  • 1. How Microsoft protects its Network Remus Rusanu High Volume Real Time Contiguous ETL and Audit
  • 2. Agenda Network Access Protection NAP Audit as implemented by Microsoft IT Service Broker in 5 slides High Availability, Scale Out and Real Time Demo Similar Projects Q&A
  • 3. Network Risks Highly connected Distributed data Mobile workers Remote access Web services Wireless Mobile smart devices
  • 4. Network Access Protection Policy ValidationEvaluates company security policies and determines compliant computers (“healthy”) vs. non-compliant ones (“unhealthy”) Network RestrictionRestricts network access based on computer “health” RemediationApplies necessary updates for non-compliant computers to become compliant, “healthy”. Once healthy, the network restrictions are lifted Ongoing ComplianceChanges to the company’s security policy or to the computers compliance trigger a new evaluation of network restrictions Health Agents Windows Security Health Agent, SCCM, IPSec, Wireless, VPN, Forefront, DHCP, BitLocker
  • 6. NAP Modes Reporting Mode Backend receives metrics, no client impact Capture/analyze daily statistics of unhealthy vs. healthy clients Estimate impact to user base if enforcement enabled Deferred Enforcement Mode No network restrictions during the deferment period End users receive notifications when non-compliant Helpdesk contacted by end users in regards to notifications Enforced Mode Non compliant systems are quarantined. Productivity affected during quarantine. Health certificate required to access other NAP enable clients/servers
  • 7. NAP Audit Network Protection Server logging: Text files SQL: exec dbo.ReportEvent @event; @event is an XML. Correlated by a session-id: Network access request (session start) Request Accepted/Request Denied Accounting information (for VPN every 10 min) The Health status is part of the second packet Status of each SHA on the computer: OS updates, firewall, anti-virus etc
  • 8. NAP Reporting Aggregate all NAP audit events into a DW Allow analysis of Compliant/Non-compliant status and evolution Reasons for non-compliance Most frequent causes of computer quarantine Efficiency of automatic remediation Forensic analysis of computers and users activity
  • 9. Processing NAP Audit Events Service Broker Delivery XML Shredding Transactional Replication 47 geo-distributed NPS Servers Local ReportEvent Mirrored Publication Mirroring allows for Maintenance Downtimes Mirrored Routes
  • 10. A Crash Course on Service Broker Message based communication between SQL Server instances SEND is a T-SQL verb to send a message SEND ON CONVERSATION @handle (‘Hello, World’); RECEIVE is a T-SQL verb to receive messages Conversations are message exchange sessions Durable, persisted in the database Long lived, can be reused for days, years BEGIN CONVERSATION starts a conversation END CONVERSATION ends a conversation Any message belongs to exactly one conversation Order of delivery is guaranteed within a conversation
  • 11. A Service Broker Application
  • 12. The small print: all the Broker Objects Service An addressable Broker destination. Think mailing address. Message Types, Contracts Formalize the messages a Service can accept. Think COM Interfaces. Queues Where a Service keeps its messages until they are Received. Think mailbox. Remote Service Bindings Associate a targeted service with an identity (certificate) ‘when you send to service Foo, encrypt the data with certificate Bar’ Routes Specify the physical location of a Service. Think Post Master. Endpoints Configure the communication protocol to be used TCP listener port Authentication and authorization Encryption scheme Allows two SQL Server instances to connect
  • 13. The Nugget: Activation Attach a stored procedure to a Service Broker Queue Will run when there are messages in the queue Will run a stored procedure inside SQL Server No external connection required Fully contained within the database No external process No msdb configuration No SQL Agent requirement Magically tunes itself to the load Launches new procedure instances as needed WAITFOR (RECEIVE …) is internationally LIFO When load is reduced, procedures timeout and exit Transactional semantics Will launch after a server shutdown and restart Will launch after a mirroring failover Will launch after a cluster failover Will launch after an attach or a restore The Server can crash and burn the procedure will launch when your DR procedure is complete
  • 14. Local Availability: SQL Express If the NPS Server is running, the SQL Express is likely running too Express is light on resource usage Single CPU 1 GB RAM buffer pool 4Gb (10GB in R2) DB size Transact-SQL programming Cheap to distribute to hundreds of sites
  • 15. Reliable Delivery: Service Broker SEND is a local transaction Never affected by the target availability Guarantees Exactly Once In Order delivery Handles retries Target downtime Connection problems can be resolved day, months even years after occurred without data loss Security can traverse domains NTLM/Kerberos Certificates Authentication, Authorization, Encryption handled at SQL endpoint configuration level
  • 16. Scale Out: Service Broker Hundreds and thousands of peers EdConhandles +1500 data sources Abstracts physical location with ROUTEs Server relocation Heterogeneous SQL 2005/SQL 2008 Rolling upgrade of the deployed servers Available on all editions including Express High Throughput Spikes can be delivered at +6000 msgs/sec Highly optimized code path to insert into target
  • 17. Process XML: XPath and Activation Service Broker Internal Activation readers launched when messages arrive Self-tuning reader count MAX_QUEUE_READERS No pulling! XML payload projected into columns XPath XQuery Automatic processing batching RECEIVE TOP 1000 creates a 1000 size batch to process Correlation awareness NPS packets 1 (Start) and 2/3 (Accept/Reject) processed by the same reader Original order is preserved during processing
  • 18. DW: Transactional Replication Isolate the XML shredding from reporting Different indexes for processing vs. reporting Processing server delete data after 10 days DW retains 1 year of data (~1.5 TB) Transactional Replication Preserves order of operations Preserves transaction boundaries Easy to deploy and manage between few peers Supports mirrored publishers
  • 19. Availability: Mirroring Activation processing is entirely DB contained No msdb jobs, no master dependencies Transactional consistent Automatically starts up on new host after failover Service Broker Routing is mirroring aware CREATE ROUTE … WITH ADDRESS = ‘tcp://principalname’,MIRROR_ADDRESS = ‘tcp://mirorrname’; Will instantly follow a failover Mirroring allows for maintenance to occur Apply CU and SP Apply OS patches
  • 20. DEMO
  • 21. Similar Projects Real Time Analytics with SQL Server 2008 R2 StreamInsight Silverlight media content delivery metrics nbcolympics.com, March Madness Real Time metrics with R2 StreamInsight Trends and analysis in DW Aggregated with Service Broker Processed with Activation SSIS for upload into DW
  • 22. Silverlight Metrics Collection WCF to reportUsage Metrics StreamInsight Real Time Service Broker Local SEND Silverlight media player Activation Processing SSIS Extraction into OLAP DW
  • 23. Critical for Performance Reuse Broker conversations Each SEND on its own conversation: ~15 writes into 6 tables (for a full round-trip) SEND on an existing conversation: 2 writes on 2 tables RECEIVE cannot batch process messages on distinct conversations
  • 24. Gotchas Mirroring support for DB master key sp_control_dbmasterkey_password Allows Service Broker to open the database master key on the new principal, after a failover Mirroring and Service Broker routes If the mirroring session is suspended, rotes must be modified Replication and mirroring Only publisher can be mirrored Principal and Mirror must share the same distributor –PublisherFailoverPartner parameter added to the Log Reader agent Replication and SQL 2008 Upgrade rollout Publisher version must be less than Distributor version SQL Express is the have-not of monitoring No Data Collection Sets support
  • 25. Acknowledgements Tom Baker, Senior SE Systems Engineer Roger Doherty, Senior Technical Evangelist