SlideShare a Scribd company logo
1 of 47
Become Azure
SQL Database
Rockstar
RaghdaAbdAldeen
April2017
JoTechies
www.jotechies.com
raabdald@Microsoft.com
@RaghdaAldwaimeh
www.linkedin.com/in/
raghda-abd-al-deen-15408839/
raghda.aldawaimeh
RaghdaAbdAldeen
Jo Techies
JoTechies is a Tech community that
provides education, help and social
events for IT professional in Jordan
and helps you network with local IT
peers.
@JoTechies
JoTechies
www.JoTechies.com
 Understanding Azure SQL
 What is it
 Five Goals
 Database Levels/DTUs
 Migration Process
 Performance and tuning
 Secure and protect Data
 Geo-Replication and Geo-Restore
Low Control
Shared
Lowercost
Dedicated
Highercost
High Control
Hybrid Cloud
100% Compatibility
Rapid self-service provisioning
SQL Server in WA VM - IaaS
Virtualized Machine
SQL Server
Physical Machine (raw iron)
Full h/w control
Roll-your-own HA/DR/scale
Managed database service
Focus on business logic
Virtualized Database
WA SQL Database - PaaS
Elastic/Self-Service capabilities
Full h/w control
SQL Server PrivateVirtualized Machine
SQL Server on Azure - IaaS
 SQL Server as Service
 Service managed by Microsoft
 Almost 0 maintenance
 Resources oriented to use your database
 Based on DTU (Data Throughput Unit) (Basic,
Standard, Premium, Elastic DB Pool, ADW)
→ Each database in Azure SQL Database is associated with a logical server. The
database can be:
•A single database with its own set of resources (DTUs)
•Part of an elastic pool that shares a set of resources (eDTUs)
DTU is defined by the bounding box for the
resources required by a database workload and
measures power across performance levels..
% CPU
% read % write
% memory
Across Basic, Standard, and Premium, Premium RS,
each performance level is assigned a defined level of
throughput
Introducing the Database Throughput Unit (DTU)
which represents database power and replaces
hardware specs
Redefined
Measure of
power
Single
Database
ElasticPool
Database
Basic — 5 DTU
S0 — 10 DTU
S1 — 20 DTU
S2 — 50 DTU
S3 — 100 DTU
P1 — 125 DTU
P2 — 250 DTU
P4 — 500 DTU
P6 — 1,000 DTU
P11 — 1,750 DTU
P15 – 4,000 DTU
IO-intensive workloads
that do not require the
highest availability
guarantees
PRS1 — 125 DTU
PRS2 — 250 DTU
PRS4 — 500 DTU
PRS6 — 1000 DTU
Area Limit Description
Databases per server Up to 5000 Up to 5000 databases are
allowed per server on V12
servers.
DTUs per server 45000 45000 DTUs are allowed per
server on V12 servers for
provisioning standalone
databases and elastic pools. The
total number of standalone
databases and pools allowed per
server is limited only by the
number of server DTUs.
Other SQL Database limits
Tools to manage & develop with Azure SQL Database
Elastic Databases
Provisioning resources for the entire pool
rather than for single databases simplifies
your management tasks. Plus you have a
predictable budget for the pool.
eDTUS consumption
Individual databases are
given the flexibility to auto-
scale within set parameters.
Under heavy load a
database can consume
more eDTUs to meet
demand.
Databases under light
loads consume less, and
databases under no load
don’t consume any eDTUs.
16
Elastic Databases
17
Workers & requests limits
equivalent to single DBs DTU
% CPU
% read % write
% memory
Elastic Databases
Memory
impact on
performance -
I/O
In case of
problem,
scale up
•Online Process
•Found the issue with QDS.
Check
your
Database
•Metrics
•Alerts
•Monitoring tools
Migration
Process
•Transactional Replication without
downtime.
•SQL Azure Migration Wizard
Choose
the
Model
•Single/Elastic
•Performance counters.
•Reviewed instance configuration.
•Azure SQL database calculator tool.
http://dtucalculator.azurewebsites.net/
• Azure SQL DB as a subscriber of SQL
Server Transactional Replication.
• Two main scenarios:
1. Migrate your data to Azure SQL DB with no
downtime.
2. Bridge SQL Server on-premises/on VMs to
Azure SQL DB.
for archiving or for moving to another platform.
 database schema and data to a BACPAC file.
 BACPAC file can be stored in Azure blob storage or in local storage in an on-premises
location and later imported back into Azure SQL Database or into a SQL Server on-premises installation
no write activity is occurring during the export.
 exporting from a transactionally consistent copy of your Azure SQL database.
SQLPackage utility
SQL Server Management Studio
PowerShell
a snapshot of the source database as of the time of the copy request.
same server or a different server.
different performance level within the same service tier (edition).
fully functional, independent database.
can upgrade or downgrade it to any edition
logins, users, and permissions can be managed independently.
Azure portal, Transact-SQL,Powershell
Copy Azure SQL DB
Long Term
Retention – 10
years of backup
High availability
Disaster Recovery
3 copies of the data
Geo-Replication (additional)
Geo-Replicated Storage
Point-In-Time Restore with Data Center
change
Recover a DB deleted.
• Backup Full, Differential and Transaction Log every
5-10 minutes.
* Estimated Recovery Time (ERT) - The estimated duration
for the database to be fully functional after a restore/failover
request. † Recovery Point Objective (RPO) - The amount of
most recent data changes (time interval) the application
could lose after recovery.
•The vault must be created in the same Azure subscription that created
the SQL server and in the same geographic region and resource group.
•You then configure a retention policy for any database. The policy
causes the weekly full database backups be copied to the Recovery
Services vault and retained for the specified retention period (up to 10
years).
•You can then restore from any of these backups to a new database in
any server in the subscription. The copy is performed by Azure storage
from existing backups and has no performance impact on the existing
database
GEO-Replication
30
• Recovery from an outage
• Standard Geo-replicación
• Geo-restore
• Configure geo-replication for Azure SQL Database with the Azure Portal
Security Approach in SQL Server
Sessions
Active Directory
Security
Azure Active Directory
Security
Firewall
Encryption
Transparent Data
Encryption
Always Encrypted
TLS (connection
string)
Data protection
Row-level security
Dynamic data
masking
Analysis
SQL Auditing
Threat Detection
C2 common
SQL Server Audit
Azure SQL PaaS SQL Server IaaS/On-Premise All implementations
Security Approach – Control Database Access
Port: 1433
Protocol: TCP
Encrypted
Proxy:
• Protect
connection
• Check
firewall rules
Authentication
Method.
ADO
.NET 4.6
ADALSQL
AAD
Security Approach – Control Application Access
Dynamic Data Masking
Row-Level Security
Centralize your
row access logic
within the
database.
Limit the exposure of
sensitive data by
obfuscating query results
for app users and
engineer
Demo - Dynamic Data Masking
CREATE USER Peter FOR LOGIN Peter;
GRANT SELECT ON Contacto TO Peter;
CREATE TABLE Contacto
(ID int IDENTITY PRIMARY KEY,
Nombre varchar(100) MASKED WITH (FUNCTION = 'partial(1,"XXXXXXX",0)') NULL,
Apellido varchar(100) NOT NULL,
NrTlf varchar(12) MASKED WITH (FUNCTION = 'default()') NULL,
Email varchar(100) MASKED WITH (FUNCTION = 'email()') NULL);
INSERT Contacto (Nombre, Apellido, NrTlf, Email) VALUES
('Roberto', 'Torres', '91551234567', 'RTorres@contoso.com'),
('Juan', 'Galvin', '95551234568', 'JGalvin@contoso.com'),
('José', 'Garcia', '95551234569', 'Jgarcia@contoso.net');
EXECUTE AS USER = 'Peter';
SELECT * FROM Contacto;
REVERT;
Demo - Row Level Security
CREATE TABLE Protegido
(ID int IDENTITY PRIMARY KEY,
Nombre varchar(100) MASKED WITH (FUNCTION =
'partial(1,"XXXXXXX",0)') NULL,
Apellido varchar(100) NOT NULL,
NrTlf varchar(12) MASKED WITH (FUNCTION = 'default()') NULL,
Email varchar(100) MASKED WITH (FUNCTION = 'email()') NULL,
UserID int );
select * from sys.database_principals
INSERT Protegido (Nombre, Apellido, NrTlf, Email, UserId) VALUES
('Roberto', 'Torres', '91551234567', 'RTorres@contoso.com', 5),
('Juan', 'Galvin', '95551234568', 'JGalvin@contoso.com', 5),
('José', 'Garcia', '95551234569', 'Jgarcia@contoso.net',1);
CREATE FUNCTION SecPred(@userId int)
RETURNS TABLE
WITH SCHEMABINDING
AS
RETURN SELECT 1 as valor WHERE @userId = user_id()
CREATE SECURITY POLICY [secpol] ADD FILTER PREDICATE
[dbo].[SecPred]([UserId]) on [dbo].[Protegido]
GRANT SELECT ON protegido TO Peter;
GRANT SELECT ON protegido TO Ken;
EXECUTE AS USER = 'Kent';
SELECT * FROM protegido;
REVERT;
EXECUTE AS USER = 'Peter';
SELECT * FROM protegido;
REVERT;
Security Approach – Proactive monitoring
SQL Auditing
Threat Detection
Logged Database events
Detects suspicious database activities indicating
possible malicious intent to access, breach or
exploit data in the database
Analyzing
Security Approach – How Connections work
SQL Auditing
servername.database.windows.net
TCP, Port: 1433
P S
S
S
servername.database.secure.windows.net
TCP, Port: 1433
Connection is redirected
via TDS protocol
TDS <3.2 – JDBC
SQL Auditing Enabled
Security Approach - SQL Auditing
Audit Records Example
Security Approach - SQL Auditing
Setup
Security Approach - SQL Auditing
Data Captured Visualization
40
Security Approach - SQL Auditing
Threat Detection Example
Threat Detection detects anomalous database activities indicating
potential security threats to the database.
Troubleshooting Steps
Always
• Investigate
Update
Statistics.
Then
• Investigate
Missing
Indexes.
Consider
• Reducing
Fragmentatio
n levels.
Queries
• Right
Workload
for DTU
Level?
Tools
• QDS
• Extende
d Events
• QPI.
Engage
Microsoft
• We can
help!
TroubleshootingSteps
Query Data Store
 It is a persisted database with query execution information for
 SQL Server 2016
 Azure SQL DB V12
 Query Performance Tuning and Troubleshooting
 SQL Profiler replacement in some parts.
 Minimum impact for SQL Engine in SQL Server or Azure SQL DB.
 Other tools like Query Performance Insight, Index Advisor are using QDS Information.
 SSMS Reports Supported for SQL Server and Azure SQL Database.
 Catalog Views all available.
 Active or disable this feature demand.
 Use Extended Events to capture the information.
Alerts and events
Define
rule
Specify
threshold
Threshold
violated
Alert rule
active
Registers
an alert
Send E-
mail
(optional)
Alert Rules
Blocked by
Firewall
Failed
Connections
Successful
Connections
CPU
Percentage
Deadlocks
DTU
Percentage
Log IO
Percentage
Data IO
Percentage
Total
Database Size
Thank You
JoTechies
www.jotechies.com
Q & A
Event Sessions

More Related Content

What's hot

Using Spark to Load Oracle Data into Cassandra
Using Spark to Load Oracle Data into CassandraUsing Spark to Load Oracle Data into Cassandra
Using Spark to Load Oracle Data into CassandraJim Hatcher
 
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...Ludovico Caldara
 
RMOUG 18 - Winning Performance Challenges in Oracle Multitenant
RMOUG 18 - Winning Performance Challenges in Oracle MultitenantRMOUG 18 - Winning Performance Challenges in Oracle Multitenant
RMOUG 18 - Winning Performance Challenges in Oracle MultitenantPini Dibask
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACKristofferson A
 
Database Cloud Services Office Hours - 0421 - Migrate AWS to OCI
Database Cloud Services Office Hours - 0421 - Migrate AWS to OCIDatabase Cloud Services Office Hours - 0421 - Migrate AWS to OCI
Database Cloud Services Office Hours - 0421 - Migrate AWS to OCITammy Bednar
 
IOUG Collaborate 18 - Data Guard for Beginners
IOUG Collaborate 18 - Data Guard for BeginnersIOUG Collaborate 18 - Data Guard for Beginners
IOUG Collaborate 18 - Data Guard for BeginnersPini Dibask
 
Everyday I’m scaling... Cassandra
Everyday I’m scaling... CassandraEveryday I’m scaling... Cassandra
Everyday I’m scaling... CassandraInstaclustr
 
IOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
IOUG Collaborate 18 - ASM Concepts, Architecture and Best PracticesIOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
IOUG Collaborate 18 - ASM Concepts, Architecture and Best PracticesPini Dibask
 
Amazon RDS for MySQL: Best Practices and Migration
Amazon RDS for MySQL: Best Practices and MigrationAmazon RDS for MySQL: Best Practices and Migration
Amazon RDS for MySQL: Best Practices and MigrationAmazon Web Services
 
Amazon RDS for MySQL: Best Practices and Migration
Amazon RDS for MySQL: Best Practices and MigrationAmazon RDS for MySQL: Best Practices and Migration
Amazon RDS for MySQL: Best Practices and MigrationAmazon Web Services
 
NewSQL - Deliverance from BASE and back to SQL and ACID
NewSQL - Deliverance from BASE and back to SQL and ACIDNewSQL - Deliverance from BASE and back to SQL and ACID
NewSQL - Deliverance from BASE and back to SQL and ACIDTony Rogerson
 
Introduction to Apache Cassandra™ + What’s New in 4.0
Introduction to Apache Cassandra™ + What’s New in 4.0Introduction to Apache Cassandra™ + What’s New in 4.0
Introduction to Apache Cassandra™ + What’s New in 4.0DataStax
 
An Engineer's Intro to Oracle Coherence
An Engineer's Intro to Oracle CoherenceAn Engineer's Intro to Oracle Coherence
An Engineer's Intro to Oracle CoherenceOracle
 
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...Pini Dibask
 
Presentation Template - NCOAUG Conference Presentation - 16 9
Presentation Template - NCOAUG Conference Presentation - 16 9Presentation Template - NCOAUG Conference Presentation - 16 9
Presentation Template - NCOAUG Conference Presentation - 16 9Mohamed Sadek
 
How DBAs can garner the power of the Oracle Public Cloud?
How DBAs can garner the  power of the Oracle Public  Cloud?How DBAs can garner the  power of the Oracle Public  Cloud?
How DBAs can garner the power of the Oracle Public Cloud?Gustavo Rene Antunez
 

What's hot (20)

Using Spark to Load Oracle Data into Cassandra
Using Spark to Load Oracle Data into CassandraUsing Spark to Load Oracle Data into Cassandra
Using Spark to Load Oracle Data into Cassandra
 
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
 
RMOUG 18 - Winning Performance Challenges in Oracle Multitenant
RMOUG 18 - Winning Performance Challenges in Oracle MultitenantRMOUG 18 - Winning Performance Challenges in Oracle Multitenant
RMOUG 18 - Winning Performance Challenges in Oracle Multitenant
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
 
Database Cloud Services Office Hours - 0421 - Migrate AWS to OCI
Database Cloud Services Office Hours - 0421 - Migrate AWS to OCIDatabase Cloud Services Office Hours - 0421 - Migrate AWS to OCI
Database Cloud Services Office Hours - 0421 - Migrate AWS to OCI
 
IOUG Collaborate 18 - Data Guard for Beginners
IOUG Collaborate 18 - Data Guard for BeginnersIOUG Collaborate 18 - Data Guard for Beginners
IOUG Collaborate 18 - Data Guard for Beginners
 
Everyday I’m scaling... Cassandra
Everyday I’m scaling... CassandraEveryday I’m scaling... Cassandra
Everyday I’m scaling... Cassandra
 
Hadoop security
Hadoop securityHadoop security
Hadoop security
 
Advanced Cassandra
Advanced CassandraAdvanced Cassandra
Advanced Cassandra
 
IOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
IOUG Collaborate 18 - ASM Concepts, Architecture and Best PracticesIOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
IOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
 
Amazon RDS for MySQL: Best Practices and Migration
Amazon RDS for MySQL: Best Practices and MigrationAmazon RDS for MySQL: Best Practices and Migration
Amazon RDS for MySQL: Best Practices and Migration
 
Amazon RDS for MySQL: Best Practices and Migration
Amazon RDS for MySQL: Best Practices and MigrationAmazon RDS for MySQL: Best Practices and Migration
Amazon RDS for MySQL: Best Practices and Migration
 
NewSQL - Deliverance from BASE and back to SQL and ACID
NewSQL - Deliverance from BASE and back to SQL and ACIDNewSQL - Deliverance from BASE and back to SQL and ACID
NewSQL - Deliverance from BASE and back to SQL and ACID
 
Disaster Recovery Synapse
Disaster Recovery SynapseDisaster Recovery Synapse
Disaster Recovery Synapse
 
Introduction to Apache Cassandra™ + What’s New in 4.0
Introduction to Apache Cassandra™ + What’s New in 4.0Introduction to Apache Cassandra™ + What’s New in 4.0
Introduction to Apache Cassandra™ + What’s New in 4.0
 
An Engineer's Intro to Oracle Coherence
An Engineer's Intro to Oracle CoherenceAn Engineer's Intro to Oracle Coherence
An Engineer's Intro to Oracle Coherence
 
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
 
Hadoop security
Hadoop securityHadoop security
Hadoop security
 
Presentation Template - NCOAUG Conference Presentation - 16 9
Presentation Template - NCOAUG Conference Presentation - 16 9Presentation Template - NCOAUG Conference Presentation - 16 9
Presentation Template - NCOAUG Conference Presentation - 16 9
 
How DBAs can garner the power of the Oracle Public Cloud?
How DBAs can garner the  power of the Oracle Public  Cloud?How DBAs can garner the  power of the Oracle Public  Cloud?
How DBAs can garner the power of the Oracle Public Cloud?
 

Similar to JoTechies - Azure SQL DB

Azure Data platform
Azure Data platformAzure Data platform
Azure Data platformMostafa
 
Azure SQL - more or/and less than SQL Server
Azure SQL - more or/and less than SQL ServerAzure SQL - more or/and less than SQL Server
Azure SQL - more or/and less than SQL ServerRafał Hryniewski
 
Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019Jovan Popovic
 
Azure SQL DB Managed Instances Built to easily modernize application data layer
Azure SQL DB Managed Instances Built to easily modernize application data layerAzure SQL DB Managed Instances Built to easily modernize application data layer
Azure SQL DB Managed Instances Built to easily modernize application data layerMicrosoft Tech Community
 
Introducing Azure SQL Data Warehouse
Introducing Azure SQL Data WarehouseIntroducing Azure SQL Data Warehouse
Introducing Azure SQL Data WarehouseJames Serra
 
Azure SQL Database & Azure SQL Data Warehouse
Azure SQL Database & Azure SQL Data WarehouseAzure SQL Database & Azure SQL Data Warehouse
Azure SQL Database & Azure SQL Data WarehouseMohamed Tawfik
 
Azure SQL Database
Azure SQL DatabaseAzure SQL Database
Azure SQL Databaserockplace
 
Azure SQL Database Managed Instance - technical overview
Azure SQL Database Managed Instance - technical overviewAzure SQL Database Managed Instance - technical overview
Azure SQL Database Managed Instance - technical overviewGeorge Walters
 
GWAB 2015 - Data Plaraform
GWAB 2015 - Data PlaraformGWAB 2015 - Data Plaraform
GWAB 2015 - Data PlaraformMarcelo Paiva
 
Stretch Database
Stretch DatabaseStretch Database
Stretch DatabaseSolidQ
 
Scalable relational database with SQL Azure
Scalable relational database with SQL AzureScalable relational database with SQL Azure
Scalable relational database with SQL AzureShy Engelberg
 
Introducing Azure SQL Database
Introducing Azure SQL DatabaseIntroducing Azure SQL Database
Introducing Azure SQL DatabaseJames Serra
 
Be05 introduction to sql azure
Be05   introduction to sql azureBe05   introduction to sql azure
Be05 introduction to sql azureDotNetCampus
 
Self-service Big Data Analytics on Microsoft Azure
Self-service Big Data Analytics on Microsoft AzureSelf-service Big Data Analytics on Microsoft Azure
Self-service Big Data Analytics on Microsoft AzureCloudera, Inc.
 
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmurTobias Koprowski
 
High Availability And Oracle Data Guard 11g R2
High Availability And Oracle Data Guard 11g R2High Availability And Oracle Data Guard 11g R2
High Availability And Oracle Data Guard 11g R2Mario Redón Luz
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersTobias Koprowski
 

Similar to JoTechies - Azure SQL DB (20)

Azure Data platform
Azure Data platformAzure Data platform
Azure Data platform
 
Optimiser votre infrastructure SQL Server avec Azure
Optimiser votre infrastructure SQL Server avec AzureOptimiser votre infrastructure SQL Server avec Azure
Optimiser votre infrastructure SQL Server avec Azure
 
AZURE Data Related Services
AZURE Data Related ServicesAZURE Data Related Services
AZURE Data Related Services
 
Azure SQL - more or/and less than SQL Server
Azure SQL - more or/and less than SQL ServerAzure SQL - more or/and less than SQL Server
Azure SQL - more or/and less than SQL Server
 
Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019
 
Azure SQL DB Managed Instances Built to easily modernize application data layer
Azure SQL DB Managed Instances Built to easily modernize application data layerAzure SQL DB Managed Instances Built to easily modernize application data layer
Azure SQL DB Managed Instances Built to easily modernize application data layer
 
Introducing Azure SQL Data Warehouse
Introducing Azure SQL Data WarehouseIntroducing Azure SQL Data Warehouse
Introducing Azure SQL Data Warehouse
 
Azure SQL Database & Azure SQL Data Warehouse
Azure SQL Database & Azure SQL Data WarehouseAzure SQL Database & Azure SQL Data Warehouse
Azure SQL Database & Azure SQL Data Warehouse
 
Azure SQL Database
Azure SQL DatabaseAzure SQL Database
Azure SQL Database
 
Azure SQL Database Managed Instance - technical overview
Azure SQL Database Managed Instance - technical overviewAzure SQL Database Managed Instance - technical overview
Azure SQL Database Managed Instance - technical overview
 
GWAB 2015 - Data Plaraform
GWAB 2015 - Data PlaraformGWAB 2015 - Data Plaraform
GWAB 2015 - Data Plaraform
 
Stretch Database
Stretch DatabaseStretch Database
Stretch Database
 
Scalable relational database with SQL Azure
Scalable relational database with SQL AzureScalable relational database with SQL Azure
Scalable relational database with SQL Azure
 
Day2
Day2Day2
Day2
 
Introducing Azure SQL Database
Introducing Azure SQL DatabaseIntroducing Azure SQL Database
Introducing Azure SQL Database
 
Be05 introduction to sql azure
Be05   introduction to sql azureBe05   introduction to sql azure
Be05 introduction to sql azure
 
Self-service Big Data Analytics on Microsoft Azure
Self-service Big Data Analytics on Microsoft AzureSelf-service Big Data Analytics on Microsoft Azure
Self-service Big Data Analytics on Microsoft Azure
 
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
 
High Availability And Oracle Data Guard 11g R2
High Availability And Oracle Data Guard 11g R2High Availability And Oracle Data Guard 11g R2
High Availability And Oracle Data Guard 11g R2
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
 

More from JoTechies

Azure multi factor authentication - Global Azure bootcamp 2018 security
Azure multi factor authentication - Global Azure bootcamp 2018  securityAzure multi factor authentication - Global Azure bootcamp 2018  security
Azure multi factor authentication - Global Azure bootcamp 2018 securityJoTechies
 
Microsoft Intune - Global Azure Bootcamp 2018
Microsoft Intune - Global Azure Bootcamp 2018Microsoft Intune - Global Azure Bootcamp 2018
Microsoft Intune - Global Azure Bootcamp 2018JoTechies
 
Microsoft AI: Cognitive Service - Global Azure bootcamp 2018
Microsoft AI: Cognitive Service - Global Azure bootcamp 2018Microsoft AI: Cognitive Service - Global Azure bootcamp 2018
Microsoft AI: Cognitive Service - Global Azure bootcamp 2018JoTechies
 
Building an MVVM based Xamarin Forms application
Building an MVVM based Xamarin Forms applicationBuilding an MVVM based Xamarin Forms application
Building an MVVM based Xamarin Forms applicationJoTechies
 
JoTechies -Azure Machine Learning
JoTechies -Azure Machine LearningJoTechies -Azure Machine Learning
JoTechies -Azure Machine LearningJoTechies
 
Introduction to Microsoft bot | JoTechies | Amjad Alhusseini
Introduction to Microsoft bot | JoTechies | Amjad AlhusseiniIntroduction to Microsoft bot | JoTechies | Amjad Alhusseini
Introduction to Microsoft bot | JoTechies | Amjad AlhusseiniJoTechies
 
JoTechies - Infrastructure as a Service IaaS
JoTechies - Infrastructure as a Service IaaSJoTechies - Infrastructure as a Service IaaS
JoTechies - Infrastructure as a Service IaaSJoTechies
 
JoTechies - Azure Cloud Security
JoTechies - Azure Cloud SecurityJoTechies - Azure Cloud Security
JoTechies - Azure Cloud SecurityJoTechies
 
Azure api management
Azure api managementAzure api management
Azure api managementJoTechies
 
JoTechies - Azure App Services Using NodeJS
JoTechies - Azure App Services Using NodeJSJoTechies - Azure App Services Using NodeJS
JoTechies - Azure App Services Using NodeJSJoTechies
 
JoTechies - Azure Backup
JoTechies - Azure BackupJoTechies - Azure Backup
JoTechies - Azure BackupJoTechies
 
JoTechies - Azure Functions Using c#
JoTechies - Azure Functions Using c#JoTechies - Azure Functions Using c#
JoTechies - Azure Functions Using c#JoTechies
 
JoTechies - Cloud identity
JoTechies - Cloud identityJoTechies - Cloud identity
JoTechies - Cloud identityJoTechies
 
JoTechies cloud productivity with office 365
JoTechies   cloud productivity with office 365JoTechies   cloud productivity with office 365
JoTechies cloud productivity with office 365JoTechies
 

More from JoTechies (14)

Azure multi factor authentication - Global Azure bootcamp 2018 security
Azure multi factor authentication - Global Azure bootcamp 2018  securityAzure multi factor authentication - Global Azure bootcamp 2018  security
Azure multi factor authentication - Global Azure bootcamp 2018 security
 
Microsoft Intune - Global Azure Bootcamp 2018
Microsoft Intune - Global Azure Bootcamp 2018Microsoft Intune - Global Azure Bootcamp 2018
Microsoft Intune - Global Azure Bootcamp 2018
 
Microsoft AI: Cognitive Service - Global Azure bootcamp 2018
Microsoft AI: Cognitive Service - Global Azure bootcamp 2018Microsoft AI: Cognitive Service - Global Azure bootcamp 2018
Microsoft AI: Cognitive Service - Global Azure bootcamp 2018
 
Building an MVVM based Xamarin Forms application
Building an MVVM based Xamarin Forms applicationBuilding an MVVM based Xamarin Forms application
Building an MVVM based Xamarin Forms application
 
JoTechies -Azure Machine Learning
JoTechies -Azure Machine LearningJoTechies -Azure Machine Learning
JoTechies -Azure Machine Learning
 
Introduction to Microsoft bot | JoTechies | Amjad Alhusseini
Introduction to Microsoft bot | JoTechies | Amjad AlhusseiniIntroduction to Microsoft bot | JoTechies | Amjad Alhusseini
Introduction to Microsoft bot | JoTechies | Amjad Alhusseini
 
JoTechies - Infrastructure as a Service IaaS
JoTechies - Infrastructure as a Service IaaSJoTechies - Infrastructure as a Service IaaS
JoTechies - Infrastructure as a Service IaaS
 
JoTechies - Azure Cloud Security
JoTechies - Azure Cloud SecurityJoTechies - Azure Cloud Security
JoTechies - Azure Cloud Security
 
Azure api management
Azure api managementAzure api management
Azure api management
 
JoTechies - Azure App Services Using NodeJS
JoTechies - Azure App Services Using NodeJSJoTechies - Azure App Services Using NodeJS
JoTechies - Azure App Services Using NodeJS
 
JoTechies - Azure Backup
JoTechies - Azure BackupJoTechies - Azure Backup
JoTechies - Azure Backup
 
JoTechies - Azure Functions Using c#
JoTechies - Azure Functions Using c#JoTechies - Azure Functions Using c#
JoTechies - Azure Functions Using c#
 
JoTechies - Cloud identity
JoTechies - Cloud identityJoTechies - Cloud identity
JoTechies - Cloud identity
 
JoTechies cloud productivity with office 365
JoTechies   cloud productivity with office 365JoTechies   cloud productivity with office 365
JoTechies cloud productivity with office 365
 

Recently uploaded

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Recently uploaded (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

JoTechies - Azure SQL DB

  • 3. Jo Techies JoTechies is a Tech community that provides education, help and social events for IT professional in Jordan and helps you network with local IT peers. @JoTechies JoTechies www.JoTechies.com
  • 4.  Understanding Azure SQL  What is it  Five Goals  Database Levels/DTUs  Migration Process  Performance and tuning  Secure and protect Data  Geo-Replication and Geo-Restore
  • 5. Low Control Shared Lowercost Dedicated Highercost High Control Hybrid Cloud 100% Compatibility Rapid self-service provisioning SQL Server in WA VM - IaaS Virtualized Machine SQL Server Physical Machine (raw iron) Full h/w control Roll-your-own HA/DR/scale Managed database service Focus on business logic Virtualized Database WA SQL Database - PaaS Elastic/Self-Service capabilities Full h/w control SQL Server PrivateVirtualized Machine SQL Server on Azure - IaaS
  • 6.  SQL Server as Service  Service managed by Microsoft  Almost 0 maintenance  Resources oriented to use your database  Based on DTU (Data Throughput Unit) (Basic, Standard, Premium, Elastic DB Pool, ADW)
  • 7. → Each database in Azure SQL Database is associated with a logical server. The database can be: •A single database with its own set of resources (DTUs) •Part of an elastic pool that shares a set of resources (eDTUs)
  • 8. DTU is defined by the bounding box for the resources required by a database workload and measures power across performance levels.. % CPU % read % write % memory Across Basic, Standard, and Premium, Premium RS, each performance level is assigned a defined level of throughput Introducing the Database Throughput Unit (DTU) which represents database power and replaces hardware specs Redefined Measure of power
  • 9. Single Database ElasticPool Database Basic — 5 DTU S0 — 10 DTU S1 — 20 DTU S2 — 50 DTU S3 — 100 DTU P1 — 125 DTU P2 — 250 DTU P4 — 500 DTU P6 — 1,000 DTU P11 — 1,750 DTU P15 – 4,000 DTU IO-intensive workloads that do not require the highest availability guarantees PRS1 — 125 DTU PRS2 — 250 DTU PRS4 — 500 DTU PRS6 — 1000 DTU
  • 10. Area Limit Description Databases per server Up to 5000 Up to 5000 databases are allowed per server on V12 servers. DTUs per server 45000 45000 DTUs are allowed per server on V12 servers for provisioning standalone databases and elastic pools. The total number of standalone databases and pools allowed per server is limited only by the number of server DTUs. Other SQL Database limits
  • 11. Tools to manage & develop with Azure SQL Database
  • 12.
  • 13.
  • 14.
  • 15.
  • 16. Elastic Databases Provisioning resources for the entire pool rather than for single databases simplifies your management tasks. Plus you have a predictable budget for the pool. eDTUS consumption Individual databases are given the flexibility to auto- scale within set parameters. Under heavy load a database can consume more eDTUs to meet demand. Databases under light loads consume less, and databases under no load don’t consume any eDTUs. 16
  • 18. Workers & requests limits equivalent to single DBs DTU % CPU % read % write % memory Elastic Databases
  • 19.
  • 20.
  • 21. Memory impact on performance - I/O In case of problem, scale up •Online Process •Found the issue with QDS. Check your Database •Metrics •Alerts •Monitoring tools Migration Process •Transactional Replication without downtime. •SQL Azure Migration Wizard Choose the Model •Single/Elastic •Performance counters. •Reviewed instance configuration. •Azure SQL database calculator tool. http://dtucalculator.azurewebsites.net/
  • 22. • Azure SQL DB as a subscriber of SQL Server Transactional Replication. • Two main scenarios: 1. Migrate your data to Azure SQL DB with no downtime. 2. Bridge SQL Server on-premises/on VMs to Azure SQL DB.
  • 23.
  • 24. for archiving or for moving to another platform.  database schema and data to a BACPAC file.  BACPAC file can be stored in Azure blob storage or in local storage in an on-premises location and later imported back into Azure SQL Database or into a SQL Server on-premises installation no write activity is occurring during the export.  exporting from a transactionally consistent copy of your Azure SQL database.
  • 25. SQLPackage utility SQL Server Management Studio PowerShell
  • 26. a snapshot of the source database as of the time of the copy request. same server or a different server. different performance level within the same service tier (edition). fully functional, independent database. can upgrade or downgrade it to any edition logins, users, and permissions can be managed independently. Azure portal, Transact-SQL,Powershell Copy Azure SQL DB
  • 27.
  • 28. Long Term Retention – 10 years of backup High availability Disaster Recovery 3 copies of the data Geo-Replication (additional) Geo-Replicated Storage Point-In-Time Restore with Data Center change Recover a DB deleted. • Backup Full, Differential and Transaction Log every 5-10 minutes. * Estimated Recovery Time (ERT) - The estimated duration for the database to be fully functional after a restore/failover request. † Recovery Point Objective (RPO) - The amount of most recent data changes (time interval) the application could lose after recovery.
  • 29. •The vault must be created in the same Azure subscription that created the SQL server and in the same geographic region and resource group. •You then configure a retention policy for any database. The policy causes the weekly full database backups be copied to the Recovery Services vault and retained for the specified retention period (up to 10 years). •You can then restore from any of these backups to a new database in any server in the subscription. The copy is performed by Azure storage from existing backups and has no performance impact on the existing database
  • 30. GEO-Replication 30 • Recovery from an outage • Standard Geo-replicación • Geo-restore • Configure geo-replication for Azure SQL Database with the Azure Portal
  • 31. Security Approach in SQL Server Sessions Active Directory Security Azure Active Directory Security Firewall Encryption Transparent Data Encryption Always Encrypted TLS (connection string) Data protection Row-level security Dynamic data masking Analysis SQL Auditing Threat Detection C2 common SQL Server Audit Azure SQL PaaS SQL Server IaaS/On-Premise All implementations
  • 32. Security Approach – Control Database Access Port: 1433 Protocol: TCP Encrypted Proxy: • Protect connection • Check firewall rules Authentication Method. ADO .NET 4.6 ADALSQL AAD
  • 33. Security Approach – Control Application Access Dynamic Data Masking Row-Level Security Centralize your row access logic within the database. Limit the exposure of sensitive data by obfuscating query results for app users and engineer
  • 34. Demo - Dynamic Data Masking CREATE USER Peter FOR LOGIN Peter; GRANT SELECT ON Contacto TO Peter; CREATE TABLE Contacto (ID int IDENTITY PRIMARY KEY, Nombre varchar(100) MASKED WITH (FUNCTION = 'partial(1,"XXXXXXX",0)') NULL, Apellido varchar(100) NOT NULL, NrTlf varchar(12) MASKED WITH (FUNCTION = 'default()') NULL, Email varchar(100) MASKED WITH (FUNCTION = 'email()') NULL); INSERT Contacto (Nombre, Apellido, NrTlf, Email) VALUES ('Roberto', 'Torres', '91551234567', 'RTorres@contoso.com'), ('Juan', 'Galvin', '95551234568', 'JGalvin@contoso.com'), ('José', 'Garcia', '95551234569', 'Jgarcia@contoso.net'); EXECUTE AS USER = 'Peter'; SELECT * FROM Contacto; REVERT;
  • 35. Demo - Row Level Security CREATE TABLE Protegido (ID int IDENTITY PRIMARY KEY, Nombre varchar(100) MASKED WITH (FUNCTION = 'partial(1,"XXXXXXX",0)') NULL, Apellido varchar(100) NOT NULL, NrTlf varchar(12) MASKED WITH (FUNCTION = 'default()') NULL, Email varchar(100) MASKED WITH (FUNCTION = 'email()') NULL, UserID int ); select * from sys.database_principals INSERT Protegido (Nombre, Apellido, NrTlf, Email, UserId) VALUES ('Roberto', 'Torres', '91551234567', 'RTorres@contoso.com', 5), ('Juan', 'Galvin', '95551234568', 'JGalvin@contoso.com', 5), ('José', 'Garcia', '95551234569', 'Jgarcia@contoso.net',1); CREATE FUNCTION SecPred(@userId int) RETURNS TABLE WITH SCHEMABINDING AS RETURN SELECT 1 as valor WHERE @userId = user_id() CREATE SECURITY POLICY [secpol] ADD FILTER PREDICATE [dbo].[SecPred]([UserId]) on [dbo].[Protegido] GRANT SELECT ON protegido TO Peter; GRANT SELECT ON protegido TO Ken; EXECUTE AS USER = 'Kent'; SELECT * FROM protegido; REVERT; EXECUTE AS USER = 'Peter'; SELECT * FROM protegido; REVERT;
  • 36. Security Approach – Proactive monitoring SQL Auditing Threat Detection Logged Database events Detects suspicious database activities indicating possible malicious intent to access, breach or exploit data in the database Analyzing
  • 37. Security Approach – How Connections work SQL Auditing servername.database.windows.net TCP, Port: 1433 P S S S servername.database.secure.windows.net TCP, Port: 1433 Connection is redirected via TDS protocol TDS <3.2 – JDBC SQL Auditing Enabled
  • 38. Security Approach - SQL Auditing Audit Records Example
  • 39. Security Approach - SQL Auditing Setup
  • 40. Security Approach - SQL Auditing Data Captured Visualization 40
  • 41. Security Approach - SQL Auditing Threat Detection Example Threat Detection detects anomalous database activities indicating potential security threats to the database.
  • 42. Troubleshooting Steps Always • Investigate Update Statistics. Then • Investigate Missing Indexes. Consider • Reducing Fragmentatio n levels. Queries • Right Workload for DTU Level? Tools • QDS • Extende d Events • QPI. Engage Microsoft • We can help! TroubleshootingSteps
  • 43. Query Data Store  It is a persisted database with query execution information for  SQL Server 2016  Azure SQL DB V12  Query Performance Tuning and Troubleshooting  SQL Profiler replacement in some parts.  Minimum impact for SQL Engine in SQL Server or Azure SQL DB.  Other tools like Query Performance Insight, Index Advisor are using QDS Information.  SSMS Reports Supported for SQL Server and Azure SQL Database.  Catalog Views all available.  Active or disable this feature demand.  Use Extended Events to capture the information.
  • 44. Alerts and events Define rule Specify threshold Threshold violated Alert rule active Registers an alert Send E- mail (optional)

Editor's Notes

  1. Simplicity where nothing changes in the perspective of the programmer to manage the data. We can climb simply and simply. Safety in different models and capacities We have asguerado the business continued. And very important is that we will always be updated to the latest version of SQL.
  2. DTU (Database throughput unit ) : is a unit of measure of the resources that are guaranteed to be available to a single Azure SQL database at a specific performance level within a single database service tier. A DTU is a blended measure of CPU, memory, and data I/O and transaction log I/O in a ratio determined by an OLTP benchmark workload designed to be typical of real-world OLTP workloads. EDTU: unit of measure of the set of resources (DTUs) that can be shared between a set of databases on an Azure SQL server - called an elastic pool. DTU Calculator http://dtucalculator.azurewebsites.net/
  3. Resources Governance : One of the design goals of the Basic, Standard, and Premium service tiers is for Azure SQL Database to behave as if the database is running on its own machine, isolated from other databases. Resource governance emulates this behavior. If the aggregated resource utilization reaches the maximum available CPU, Memory, Log I/O, and Data I/O resources assigned to the database, resource governance queues queries in execution and assign resources to the queued queries as they free up. Enforcement of limits : Resources other than CPU, Memory, Log I/O, and Data I/O are enforced by denying new requests when limits are reached. When a database reaches the configured maximum size limit, inserts and updates that increase data size fail, while selects and deletes continue to work. Clients receive an error message depending on the limit that has been reached.
  4. Create Azure SQL DB on the Portal
  5. SQL Server 2005 or later database to Azure SQL Database. database is compatible with Azure SQL Database using the Data Migration Assistant (DMA) “https://www.microsoft.com/en-us/download/details.aspx?id=53595”
  6. Create Azure VM Create DB from adventureworks folders  Install data migration Assistant to check compatibility Assess the database for compatibility using the latest version of Data Migration Assistant (DMA). Prepare any necessary fixes as Transact-SQL scripts. Make a transactionally consistent copy of the source database being migrated - and ensure no further changes are being made to the source database (or you can manually apply any such changes after the migration completes). There are many methods to quiesce a database, from disabling client connectivity to creating a database snapshot. Deploy the Transact-SQL scripts to apply the fixes to the database copy. Export the database copy to a .BACPAC file on a local drive. Import the .BACPAC file as a new Azure SQL database using any of several BACPAC import tools, with SQLPackage.exe being the recommended tool for best performance. -----------------------------
  7. SQL Package utility : SqlPackage command-line utility,  Where is SQLPackage located at?.   C:\Program Files (x86)\Microsoft SQL Server\<SQLSERVERVersionInstalled>\DAC\bin>  Command line to import the data using SQLPackage.  sqlpackage.exe /a:import /sf:filename.bacpac /tdn:MyDatabaseName /tsn:myserverlocal|myAzureServer.database.windows.net /tp:MyPassword/tu:MyUser  Command line to export the data using SQLPackage.   sqlpackage.exe /a:export /tf:filename.bacpac /sdn:MyDatabaseName /ssn:myserverlocal|myAzureServer.database.windows.net /sp:MyPassword! /su:MyUser   
  8. Copy , Export
  9. RPO: Recovery Point Objective is the amount of data you can afford to lose if a server had a failure. For example, if you back up your server once a night your RPO could be 24 Hours if you replicate your server real time your RPO could be seconds. RTO: Recovery Time Objective is the time that it could take to get your systems back up and running after a failure.
  10. Enable LTR ; Create an Azure Recovery Services vault in the same region, subscription, and resource group as your SQL Database server. Register the server to the vault Create an Azure Recovery Services Protection Policy Apply the protection policy to the databases that require long-term backup retention LTR :currently in preview and available in the following regions: Australia East, Australia Southeast, Brazil South, Central US, East Asia, East US, East US 2, India Central, India South, Japan East, Japan West, North Central US, North Europe, South Central US, Southeast Asia, West Europe, and West US. https://docs.microsoft.com/en-us/azure/sql-database/sql-database-long-term-retention ----------------------------------------------
  11. Standard Geo Replication: With Standard Geo Replication there is a non-readable replica of the primary database. This is useful if a disaster happens on the primary database. However, this database cannot be used for load balancing. Active Geo Replication: Active Geo Replication provides a readable copy of the primary database so the secondary database can be used for reporting purposes or to distribute the application workload where the only requirement is to read the data. We can have multiple online secondary databases.
  12. TLS: https://technet.microsoft.com/en-us/library/cc784450(WS.10).aspx y https://blogs.msdn.microsoft.com/sqlserverfaq/2012/04/04/can-tls-certificate-be-used-for-sql-server-encryption-on-the-wire/
  13. TLS: https://technet.microsoft.com/en-us/library/cc784450(WS.10).aspx y https://blogs.msdn.microsoft.com/sqlserverfaq/2012/04/04/can-tls-certificate-be-used-for-sql-server-encryption-on-the-wire/
  14. TLS: https://technet.microsoft.com/en-us/library/cc784450(WS.10).aspx y https://blogs.msdn.microsoft.com/sqlserverfaq/2012/04/04/can-tls-certificate-be-used-for-sql-server-encryption-on-the-wire/
  15. TLS: https://technet.microsoft.com/en-us/library/cc784450(WS.10).aspx y https://blogs.msdn.microsoft.com/sqlserverfaq/2012/04/04/can-tls-certificate-be-used-for-sql-server-encryption-on-the-wire/
  16. TLS: https://technet.microsoft.com/en-us/library/cc784450(WS.10).aspx y https://blogs.msdn.microsoft.com/sqlserverfaq/2012/04/04/can-tls-certificate-be-used-for-sql-server-encryption-on-the-wire/
  17. TLS: https://technet.microsoft.com/en-us/library/cc784450(WS.10).aspx y https://blogs.msdn.microsoft.com/sqlserverfaq/2012/04/04/can-tls-certificate-be-used-for-sql-server-encryption-on-the-wire/