En esta presentación Guillermo Taylor, John Bulla y Julián Castiblanco, hablan sobre algunas de las mejores características de sQL Server 2016, como migrar a SQL Databas, características de sql database y en general varios tips para DBA's en arquitecturas híbridas
4. #GlobalAzure #GABogota
Guillermo Taylor F.
http://masterGT68.wordpress.com
co.linkedin.com/guillermotaylor
@guillermotaylor
guillermotaylor@hotmail.com
Lead Solution Architect - Unisys
MVP Data Platform
Miembro activo de PASS
5. #GlobalAzure #GABogota
Julián Castiblanco P.
http://www.azurecloud.la/
co.linkedin.com/juliancastiblancop
@jcastiblancop
Julian_castiblancop@hotmail.com
Database Consultant- Synergy TPC
MVP Data Platform
Miembro de PASS ITPros-DC Chapter
7. Propósito
• Establecer qué hace un DBA.
• Conceptos de IaaS & PaaS.
• Tips de sugerencias, prácticas
recomendadas y aspectos a
tener en cuenta como DBA con
SQL Server 2016.
8. AGENDA
SQL Server 2016, lo nuevo
para los DBA
Oferta de SQL Server 2016
IaaS & PaaS para un DBA
Tips & Tricks
10. Performance Security Availability Scalability
Operational analytics
Insights on operational data;
works with in-memory OLTP and
disk-based OLTP
In-memory OLTP
enhancements
Greater T-SQL surface area,
terabytes of memory supported,
and greater number of parallel
CPUs
Query data store
Monitor and optimize query plans
Native JSON
Expanded support for JSON data
Temporal database
support
Query data as points in time
Always encrypted
Sensitive data remains encrypted
at all times with ability to query
Row-level security
Apply fine-grained access control
to table rows
Dynamic data masking
Real-time obfuscation of data to
prevent unauthorized access
Other enhancements
Audit success/failure of database
operations
TDE support for storage of In-
Memory OLTP tables
Enhanced auditing for OLTP with
ability to track history of record
changes
Enhanced AlwaysOn
Three synchronous replicas for
automatic failover across domains
Round-robin load balancing of
replicas
Automatic failover based on
database health
DTC for transactional integrity
across database instances with
AlwaysOn
Support for SSIS with AlwaysOn
Enhanced database
caching
Cache data with automatic,
multiple TempDB files per
instance in multicore
environments
Mission-critical performance
11. Access any data Scale and manage Powerful insights Advanced analytics
PolyBase
Insights from data across SQL
Server and Hadoop with the
simplicity of T-SQL
Enhanced SSIS
Designer support for previous
SSIS versions
Enterprise-grade
Analysis Services
Enhanced performance and
scalability for Analysis Services
Single SSDT in Visual
Studio 2015
Build richer analytics solutions as
part of your development projects
in Visual Studio
Enhanced MDS
Excel add-in 15x faster; more
granular security roles; archival
options for transaction logs; and
reuse entities across models
Mobile BI
Business insights for your on-
premises data through rich
visualization on mobile devices
with native apps for Windows,
iOS, and Android
Enhanced Reporting
Services
New modern reports with rich
visualizations
R integration
Bringing predictive analytic
capabilities to your relational
database
Expand your “R” script library with
Microsoft Azure Marketplace
Deeper insights across data
12. Hybrid solutions Simplicity Consistency
Stretch Database
Stretch operational tables in a secure manner
into Azure for cost-effective historic data
availability. Works with Always Encrypted and
row-level security
Power BI with on-premises data
New interactive query with Analysis Services.
Customer data stays behind your firewall
Enhanced backup to Azure
Faster restore times and 50% reduction in
storage. Supports larger DBs with block blobs
and custom backup schedule with local staging
Easy migration of on-premises SQL
Server
Simple point-and-click migration to Azure
Suite of advisors for upgrading to
SQL Server 2016
SQL Server 2016 Upgrade Advisor in the
adoption of new SQL Server features
Simplified Add Azure
Replica Wizard
Automatic listener configuration for AlwaysOn
in Azure VMs
Common development,
management, and identity tools
Including Active Directory, Visual Studio,
Hyper-V, and System Center
Consistent experience from SQL
Server on-premises to Microsoft
Azure IaaS and PaaS
Hyperscale cloud
13. #GlobalAzure #GABogota
Amplia oferta de SQL Server
SQL Server
and APS
Azure
SQL Virtual
Machines
Azure
SQL Database
Azure
SQL Data
Warehouse
PaaSPaaSIaaSOnPrem
14. #GlobalAzure #GABogota
Y, ¿qué hace un DBA?
• Tareas periódicas de administración de bases de datos.
• Tareas periódicas de la plataforma que las contiene.
Gestión de bases de datos
• Diagnóstico y remediación de cuellos de botella.
• Optimización de recursos de cómputo y de plataforma.
Análisis y mejora en
desempeño
• Comportamiento de las bases de datos y de la plataforma.
• Estado de salud; desempeño.
Monitoreo
• Plataforma en estado óptimo.
• Definiciones y parámetros esperados.
Mantenimiento
• Reducción de impacto en el negocio por caída del servicio.Continuidad del negocio
• Privacidad, confidencialidad y acceso autorizado.
• Cifrado de datos.
Custodia de datos
• Soporte a iniciativas y proyectos.Consultoría y apoyo
17. #GlobalAzure #GABogota
Que es Azure SQL Database?
Una base de datos relacional como Servicio, totalmente gestionado por Microsoft.
Ofrece un rendimiento predecible, escalamiento elástico, continuidad del negocio y
funcionalidades de programación.
Para aplicaciones diseñadas en la nube cuando la administración es cerca de cero y el grado
empresarial son capacidades claves.
Perfecta para los arquitectos y desarrolladores de aplicaciones en la nube buscando
funcionalidad programática de DBA.
?
18. #GlobalAzure #GABogota
Niveles de Servicio – SQL Database
Basic Standard Premium
Cargas de trabajo
ligeras
Ir a la opción para mas
aplicaciones de negocio
Alto rendimiento y bases de
datos de negocio critico
Uso previsto
99.99%*Disponibilidad
• •• •••Rendimiento
Compatibilidad completa con base de datos SQL Server 2014
Superficie de
programación
Bases de datos aisladas y pools de bases de datos elásticas
Carga de
trabajo elástica
19. #GlobalAzure #GABogota
Niveles de Servicio – SQL Database
Nivel de
servicio
Nivel de
rendimiento
Patrón común de
la aplicación
Rendimiento Continuidad del Negocio
Max
Tamaño DB
Benchmark
Transaction
Rate
DTU Threads Sesiones PITR DR / GEO-Rep
Basic Basic Small DB, SQL opp 2 GB 16600 / Hr. 5 30 300 7 Días DB Copy +
Manual Export
Standard S0
S1
S2
S3
Wrkgp/cloud app,
multiple concurrent
operations
250 GB 521 / Min.
934 / Min.
2570 / Min.
5100 / Min.
10
20
50
100
60
90
120
200
600
900
1200
2400
14 Días DB Copy +
Manual Export
Premium P1
P2
P3
Mission Critical,
High volume, Many
concurrent Users
500 GB 105 / sec.
228 / sec.
735 / sec.
125
250
1000
200
400
1600
2400
4800
19200
35 Días Active Geo-
replication
21. #GlobalAzure #GABogota
Rendimiento Predecible – SQL Database
Basic, Standard y Premium proveen el incremento de los niveles de rendimiento.
Escale bases de datos individualmente up/down vía Portal, PS, APIs o T-SQL
para reflejar la demanda real o anticipada.
La base de datos se mantiene en línea mientras es escalada
Cada hora de facturación proporciona eficiencia en costos
5 10 20 50 100 250 1000DTUs
B S0
S1
S2
S3
P2
P3
P1
125
23. #GlobalAzure #GABogota
Administración – SQL Database
Diseñados web para las tablas, vistas y procedimientos
almacenados.
Edición y ejecución de consultas.
Azure
SQL Database
24. #GlobalAzure #GABogota
Auditoria – SQL Database
Profundizar en los eventos de base de datos y agilizar las
tareas relacionadas con el cumplimiento
• Configurable para rastrear y registrar la actividad de la base
de datos
• Vista de Dashboards en el portal en un solo vistazo
• Informes predefinidos de Power View para el análisis de pr
ofundidad visual en datos de registro de auditoría
• Los registros de auditoría residen en su cuenta de Azure
Storage
• Disponible en Básico, Estándar y Premium
• Acceso a través del nuevo portal de Azure
SQL Database
Auditing
Audit
log
Application
data
Azure Storage
25. #GlobalAzure #GABogota
Data Masking – SQL Database
Prevenir el uso indebido de datos confidenciales
• Configuración fácil en el nuevo portal de Azure
• Basada en políticas a nivel de tabla y columna, para
un conjunto definido de usuarios
• Enmascaramiento de datos aplicada en tiempo real
a los resultados de la consulta sobre la base de la
política
• Múltiples funciones de enmascaramiento
disponibles (por ejemplo, total, parcial) para varias
categorías de datos sensibles (por ejemplo, números
de tarjeta de crédito, número de seguro social, etc.)
• Disponible en Básico, Estándar y Premium
SQL Database
SQL Server 2016
Table.CreditCardNo
4465-6571-7868-5796
4468-7746-3848-1978
4484-5434-6858-6550
Real-time data masking;
partial masking
27. #GlobalAzure #GABogota
Row-level security – SQL Database
Proteger la privacidad de los datos garantizando el acceso
adecuado a través de las filas
• Control de acceso granular sobre las filas específicas de una
tabla de una base de datos
• Ayudar a prevenir acceso no autorizado cuando múltiples
usuarios comparten las mismas tablas, o al implementar
filtrado de conexión en aplicaciones multitenant
• Administración a través de SQL Server Management Studio o
herramientas de datos de SQL Server
• Lógica de aplicación dentro de la base de datos y el esquema
está enlazado a la tabla
SQL Database
SQL Server 2016
Customer 1
Customer 2
Customer 3
28. #GlobalAzure #GABogota
Ampliando el área de superficie de T-SQL – SQL Database
Amplio soporte de SQL Server para mejorar la compatibilidad
en Azure
• Capacidad de reconstruir índices en línea agrupados y no
agrupados para una mayor disponibilidad
• Construir esquemas altamente optimizados para mejorar el
procesamiento de la consulta con soporte de tablas
particionadas
• Acceso a Common Language Runtime (CLR) y definir tipos de
CLR, agregados, funciones y procedimientos escritos en C#.
• Apoyo adicional de vistas de administración dinámica (DMV)
para una penetración más profunda en el estado de salud de
la base de datos
29. #GlobalAzure #GABogota
Escalamiento Elástico – SQL Database
La tecnología de escalado horizontal reconstruida para escalamiento
elástico de base de datos
• La tecnología de escalado horizontal reconstruida para escalamiento
elástico de base de datos
• Escalamiento horizontal mediante APIs como complemento a la
aplicaciones cliente que apoyan una alta escala de necesidades
• Permite funciones de desarrollador y administración
• Soporta operaciones como split, merge y move en datos de consultas
interactivas de aplicación cliente combinando los resultados de
múltiples shards con Cross Shard Query
• Realizar operaciones de administración de forma asíncrona a través del
grupo de bases de datos (mantenimiento de índices, DDL y DML)
SQL Database
Scale out layer
30. #GlobalAzure #GABogota
Escalamiento Elástico – SQL Database
Escenario: Arquitectura de la app cloud
• Arquitectura empresarial clásica 3-capas
• Escalar por los extremos frente a varias instancias
es fácil.
• Escalar la capa de datos es más difícil.
Web
Role
L
SQL
Worker
Role
32. #GlobalAzure #GABogota
Escalamiento Elástico – SQL Database
Vertical: Escale arriba o abajo
Horizontal: Escale afuera o adentro
Basic
Standard
Premium
Basic Basic Basic Basic Basic Basic
Premium
Standard
Scale out/in
Scaleup/down
33. #GlobalAzure #GABogota
Escalamiento Elástico – SQL Database
Escenario: Arquitectura de la app cloud
• Arquitectura empresarial clásica 3-capas
• Escalar por los extremos frente a varias instancias
es fácil.
• Escalar la capa de datos es más difícil.
Web
Role
J
SQL
Worker
Role
J
J
35. #GlobalAzure #GABogota
Migración BD a Azure
User DB System objects SQL settings
Migration Wizard
On-premises
Capacidades
Junto con el esquema y los datos, ahora se puede migrar
otros objetos del sistema (logins, jobs, y certificados)
Migrar la configuración de SQL Server (indicadores de traza,
el idioma predeterminado y la configuración de memoria)
Beneficios
Microsoft Azure
36. #GlobalAzure #GABogota
Migración BD a Azure
Método 1 Método 2 Método 3
Target
DB
SQL Database
SQL Server
SSMS
2. Import
1. DeployOR
.bacpac
1. Export
Source
DB
Target
DB
SQL Database
SQL Server
SQL Azure
Migration
Wizard
2. Execute
1. Generate
T-SQL
Source
DB
Target
DB
SQL Database
SQL Server
SSMS
6.
Export/
import
or deploy
SQL
Azure
Migrati
on
Wizard
4. Copy
Copy
DB
Source
DB
5. Publish
1. Import
Visual
Studio
database
project
2. Transform
3. Edit, build
and test
*.sql
4. Publish (schema only)
Migrar una base de datos compatible
mediante SSMS
Migrar una base de datos compatible
mediante SAMW
Actualizando el esquema de base de datos de
manera desconectada usando Visual Studio y
SAMW, y luego desplegarlo con SSMS
40. #GlobalAzure #GABogota
SQL Server, Azure VMs, SQL Database
Opciones:
SQL Server on physical machines
SQL Server in on-premises VMs (private
cloud)
SQL Server in Azure VMs (public cloud)
SQL Database (public cloud)
Shared
Lower Cost
Dedicated
Higher
Cost
Higher Administration Lower Administration
Off Premises
Hybrid Cloud
Physical
SQL Server
Physical Machines(raw Iron)SQL
Virtual
SQL Server Private Cloud
Virtualized Machines +
Appliances
Infrastructure
as a service
SQL Server in Azure VM
Virtualized machinesSQL
Platform as
a service
Software as
a services
SQL Database
Virtualized DatabasesSQL
On Premises
Guillermo
Performance
Enhanced in-memory performance with up to 30x faster transactions, more than 100x faster queries than disk-based relational databases and real-time operational analytics.
Security Upgrades
Always Encrypted technology helps protect your data at rest and in motion, on-premises and in the cloud, with master keys sitting with the application, without any application changes.
High Availability
Even higher availability and performance than SQL Server 2014 of your AlwaysOn secondaries with the ability to have up to 3 synchronous replicas, DTC support, and round-robin load balancing of the secondaries.
Scalability
Enhanced database caching across multiple cores and support for Windows Server 2016 that efficiently scale compute, networking, and storage in both physical and virtual environments.
Guillermo
Access Any Data
Query relational and
non-relational data with the simplicity of T-SQL with PolyBase. Manage document data with native JSON support.
Scale and Manage
Enhanced performance, scalability and usability across SQL Server Enterprise Information Management tools and Analysis Services.
Enhanced MDS. For domain based attribute, optionally, user can select a parent attribute whose value will constrain the allowed values for this attribute. For example
1. Model has State, City, Account entity.
2. Account has a City DBA to City entity and State DBA to State entity.
3. City has a State DBA to State entity and a derived hierarchy from State to City.
4. A constraint can be added on Account.City attribute which parent is Account.State. So the City attribute dropdown list is constrained by State value.
Powerful Insights on any device
Business insights through rich visualizations on mobile devices. Native apps for Windows, iOS and Android. New modern reports for all browsers.
Advanced Analytics at massive scale
Built-in advanced analytics provide the scalability and performance benefits of running your “R” algorithms directly in SQL Server. Expand your analytics library with Microsoft Azure Marketplace.
Guillermo
Breakthrough hybrid scenarios
Stretch Database technology keeps more of your customers’ historical data at your fingertips by transparently stretching your warm and cold OLTP data to Microsoft Azure on-demand, without application changes.
Simplicity
New tools that make SQL Server migration to Microsoft Azure and hybrid scenarios even easier.
Consistency
Consistent experience from on-premises to Microsoft Azure IaaS and PaaS.
Guillermo
Guillermo
Guillermo
Show Enabling of query store in DB
Go through options
Operation Mode
Data flush interval
Stats collection interval
Retention
Show the properties of Query Store in database and talk the overhead of managing it (changing the aggregation intervals)
Point out the Query Store size management
Show DMVs
Change view to 'num plans', point out that the Y axis allows you to view duration in miliseconds
Compare the plans side by side, can see that the index being used was not a covering index so had to do a RID lookup
Guillermo
Show Enabling of query store in DB
Go through options
Operation Mode
Data flush interval
Stats collection interval
Retention
Show the properties of Query Store in database and talk the overhead of managing it (changing the aggregation intervals)
Point out the Query Store size management
Show DMVs
Change view to 'num plans', point out that the Y axis allows you to view duration in miliseconds
Compare the plans side by side, can see that the index being used was not a covering index so had to do a RID lookup
Julian
Julian
Julian
Julian
Julian
Julian
Show Enabling of query store in DB
Go through options
Operation Mode
Data flush interval
Stats collection interval
Retention
Show the properties of Query Store in database and talk the overhead of managing it (changing the aggregation intervals)
Point out the Query Store size management
Show DMVs
Change view to 'num plans', point out that the Y axis allows you to view duration in miliseconds
Compare the plans side by side, can see that the index being used was not a covering index so had to do a RID lookup
John
John
John
John
Show Enabling of query store in DB
Go through options
Operation Mode
Data flush interval
Stats collection interval
Retention
Show the properties of Query Store in database and talk the overhead of managing it (changing the aggregation intervals)
Point out the Query Store size management
Show DMVs
Change view to 'num plans', point out that the Y axis allows you to view duration in miliseconds
Compare the plans side by side, can see that the index being used was not a covering index so had to do a RID lookup
John
John
John
John
John
John
John
John
Show Enabling of query store in DB
Go through options
Operation Mode
Data flush interval
Stats collection interval
Retention
Show the properties of Query Store in database and talk the overhead of managing it (changing the aggregation intervals)
Point out the Query Store size management
Show DMVs
Change view to 'num plans', point out that the Y axis allows you to view duration in miliseconds
Compare the plans side by side, can see that the index being used was not a covering index so had to do a RID lookup
Guillermo
Guillermo
Julian – Metodo 1
John - Metodo 3
Show Enabling of query store in DB
Go through options
Operation Mode
Data flush interval
Stats collection interval
Retention
Show the properties of Query Store in database and talk the overhead of managing it (changing the aggregation intervals)
Point out the Query Store size management
Show DMVs
Change view to 'num plans', point out that the Y axis allows you to view duration in miliseconds
Compare the plans side by side, can see that the index being used was not a covering index so had to do a RID lookup