Descripción: La adopción de SQL Server 2016 debe ser “tranquila” y sin problemas. En esta sesión le guiaremos en cómo hacer dicha migración/actualización y cuáles son los pasos que tomamos en SolidQ en estos proyectos de migración. Trataremos tanto migraciones side-by-side como migraciones in-place.
2. Contenido de la sesión
• ¿Interesa migrar?
• Tipos de actualización
• Escenarios soportados
• Características discontinuadas y deprecadas
• Cómo enfrentarnos a migraciones
3. SQL Server 2016 “It just run faster”
• Solo por migrar, mejora de rendimiento
apreciable
• La primera vez que MS lo promueve
oficialmente
“SQL Server 2016 running on the same hardware as SQL Server 2014,
2012, 2008, 2008 R2 or 2005 uses fewer resources and executes a wide
range of workloads faster. I have studied code check-ins and tested the
improvements seeing the scalability improvement first hand and
running SQL Server 2016 for internal SQL Support needs since Mar 2015
because of the improved features and scalability.”
– Bob Dorr, Principle Engineer SQL Server Support
4. SQL Server 2016 “It just run faster”
DBCC escala
7x mejor
Native
Spatial
(2000x)
Automatic
tempdb conf
Best .ldf
expansion
performance
Automatic
Soft NUMA
Scheduling
algorithm
actualizado
Indirect
checkpoints
por defecto
Multiple log
writer
workers
Column Store
soporta
SSE/AVX HW
BULK INSERT
usa SSE/AVX
HW
AlwaysOn log
transport
mejorado
AlwaysON
parallel
compression
In-Memory
optimized DB
worker pool
On demand
MSDTC
startup
Xevent Linq
Reader
NCCI
updatable
5. Contenido de la sesión
• ¿Interesa migrar?
• Tipos de actualización
• Escenarios soportados
• Características discontinuadas y deprecadas
• Cómo enfrentarnos a migraciones
6. Tipos de actualización
• In-place y side-by-side
• OnPremise to OnPremise
• Pero también
OnPremise
Azure IaaSAzure PaaS
7. Proceso de actualización in-place
8
La instancia
pasa a estar
disponible
Aquí comienza la
disponibilidad
parcial
Punto de no
retorno
Instancia
todavía
disponible
La instancia
ya no está
disponible
Instalar
prerequisitos
Comprobar
blockers de
actualización
Instalar los
binarios de
SQL Server
2008 R2
Parar el
servicio
Redirigir
servicios a
nuevos
binarios
Iniciar
servicio en
modo
usuario
unico
Adjuntar bd
de recursos
Parar el
servicio
Reiniciar el
servicio
Iniciar
actualización
de todas las
BDs
Ejecución de
scripts de
migración de
SQL Agent y
Replicación
Desinstalar
binarios
“viejos”
8. Proceso de migración side-by-side
Comparar
y verificar
SQL Server 2012
Instancia: Foo
SQL Server 2016
Instancia : Bar
Comprobado!
9. Contenido de la sesión
• ¿Interesa migrar?
• Tipos de actualización
• Escenarios soportados
• Características discontinuadas y deprecadas
• Cómo enfrentarnos a migraciones
11. Replicación heterogénea
• Versión publicador <= versión distribuidor
• Versión subscriptor between:
• -2 versión publicador
• Versión publicador
Escenarios soportados
12. Replicación heterogénea
DBreplica1
SQL Subscriber1
SQL2008R2
SQL Subscriber2
SQL2012
SQLSubscriber
SQL2016
DBreplica2 DBreplica3
SQL Publisher
SQL2008R2
Transactional replication SYNC
SQL Distributor
SQL2012
DistributionTU BBDD
PUSH/PULL
SQLSubscriber
SQL2014
DBreplica3
Nodos secundarios replicación
Capa de base de datos,
suscriptores de SQL1
SQL Standard Edition
Pueden ser desde SQL2008R2
hasta 2016 debido al publicador
Nodo publicador
Instancia SQL1 que contiene los datos
maestros a replicar mediante replicación
transaccional
Es 2008 para que se puedan tener
subscriptores desde 2008R2
Nodo publicador
Tiene que ser mayor o igual a publicador
Para poder usar SQL2016 tiene que ser
como mínimo 2012
13. DBreplica1
SQL Subscriber1
SQL2012
SQL Subscriber2
SQL2014
SQLSubscriber
SQL2016
DBreplica2 DBreplica3
SQL Publisher
SQL2012
Transactional replication SYNC
SQL Distributor
SQL2012
Distribution
TU BBDD
PUSH/PULL
Nodos secundarios replicación
Capa de base de datos,
suscriptores de SQL1
SQL Standard Edition
Pueden ser desde SQL2012 hasta
2016 debido al publicador
Nodo publicador
Instancia SQL1 que contiene los datos
maestros a replicar mediante replicación
transaccional
Es 2012, por lo que no podemos tener
subscriptores anteriores
Nodo publicador
Tiene que ser mayor o igual a publicador
Para poder usar SQL2016 tiene que ser
como mínimo 2012
Replicación heterogénea
14. Contenido de la sesión
• ¿Interesa migrar?
• Tipos de actualización
• Escenarios soportados
• Características discontinuadas y deprecadas
• Cómo enfrentarnos a migraciones
15. Características discontinuadas
• Compatibility level 90 SQL Server
2014
• Se permite
migrar con
modo 90
SQL Server
2016
• Necesitas
migrar
antes a 100
Replicación
• SQL2008R2
NO
SOPORTADO
DTS
• SSUA ni
escanea
• CUIDADO
CON DTS
embebido
• Otras características
destacables
16. Características deprecadas y final
support
SET
ROWCOUNT
Usa TOP
BACKUP …
WITH
PASSWORD
Sin
workaround
Cmpt_level
100
Mínimo 110
Encryption
RC4 o
RC4_128
Usa AES
Remote
Servers
Linked
Servers
ResultSets de
triggers
Sin
workaround
Final Support
ANSI_NULLS,
ANSI_PADDI
NG OFF
Siempre ON
timestamp
Usa
rowversion
Text, ntext,
image
Varchar,nvarc
har y
varbinary(ma
x)
Sp_attach_db
CREATE
DATABASE
FOR ATTACH
DBREINDEX,
INDEXDEFRAG
ALTER INDEX
Database
Mirroring
AlwaysON
GRANT,
DENY y
REVOKE ALL
Hacerlo
específicame
nte
NOLOCK
Sin
workaround
Deprecadas
17. Breaking changes
sys.dm_io_virtual_file_stats
•Columna sample_ms pasa
de int a bigint
MD2, MD4, MD5, SHA, or
SHA1
•No recomendado su uso
•Solo válido con modo de
compatibilidad < 130
REPLICACIÓN
•Subscriptores SQL2012+
•Si tienes anteriores
CUIDADO!
En SQL Server 2014 no hubo ninguno, en SQL Server 2016:
18. SQL Server Upgrade Advisor
Rediseño
completo
• Multitarea
• Multihilo
Instalación
independiente
• No viene
con la ISO
Novedades en
análisis
• In-memory
• Stretch
database
• Análisis
Azure
• Realiza la
migración
Grandes
carencias
• Sin soporte
profiler ni
XEvents
• Todavía en
RC
21. Contenido de la sesión
• ¿Interesa migrar?
• Tipos de actualización
• Escenarios soportados
• Características discontinuadas y deprecadas
• Cómo enfrentarnos a migraciones
27. Test de estrés
Minuto AVG
MAX
AVG2
MAX2
45
1624,528802 2194,034666
82,15531969
95,13892289
46
1936,319018
2879,29798
95,62455852
99,42307696
47
1870,446072
2733,40779
97,66567275
100
48
1717,19154
2486,401791
96,67114984
99,9023509
49
1744,939078 2395,207878
95,24085408
98,90873864
50
1719,669011 3119,186734
96,01381844
98,92578881
Grand Total
1768,84892
3119,186734
93,89522889
100
Batch Requests/sec
% Processor Time
28. Tareas post-migración
•QueryStore
•Row level security
•Dynamic datamasking
•Backup to Azure
•Buffer Pool Extension
•Data/Backup Compression
•Transparent Data Encryption
•Resource Governor
•Incremental statistics
•Mejoras en seguridad
•Stretch database
•Partitioning
•AlwaysOn
•Transact-SQL enhancements
•Proyectos de BBDD
•Semantic search
•Operational Analytics
•In-memory+OnDisk+Columnar
•Polybase
•Always Encrypted
•JSON
•Temporal tables
•Spatial Support
•Filestream Support
•Hierarchy Id Support
•CDC,Change Tracking
Cambios significantes
en aplicación,
operacionales o de
desarrollo
Cambios
moderados
Cambios
menores
29. Consejos: Sé precavido
• Piensa en planes de “vuelta atrás”
• Anota benchmarks antes de la actualización
• Funcional, rendimiento, Stress
• Tiempo necesario para la actualización
• Ninguna de las herramientas de actualización
muestra “tiempo restante…”
• Realiza pruebas de actualización
• Identifica problemas de compatibilidad hacia
atrás
30. Consejos: Sé precavido
• Captura actividad que cubra el uso de tu
sistema
• Trazas de SQL Profiler
• Monitor de rendimiento
• Si es posible Team System para preparar carga de
la aplicación actual
• Procesos no tan habituales: fin de mes, cierre de
ejercicio
31. Contenido de la sesión
• ¿Interesa migrar?
• Tipos de actualización
• Escenarios soportados
• Características discontinuadas y deprecadas
• Cómo enfrentarnos a migraciones
32. También puedes preguntar tus
dudas con el hashtag
#SQSummit en Twitter
ADAPTIVE BI FRAMEWORK
Te ayudaremos a mejorar la velocidad de desarrollo de tu plataforma de
analítica de negocio basada en nuestra experiencia:
•Diseña antes de construir
•Automatización de procesos por ETL
•Servicios de mentoring para ayudarte a conseguir mejores prácticas para la construcción
de procesos específicos y plataformas de analítica de negocio
•Muy fácil de mantener
SOLIDQ FLEX SERVICES
Con SolidQ Flex Services evitarás sustos, consiguiendo que tus sistemas
sean estables. Desde una solución sencilla de monitorización, hasta un
servicio de atención de incidencias 24/7, mantenimiento proactivo,
resolución de problemas y línea de soporte.
Todo con un coste fijo mensual… y tú dedica el tiempo a las cosas
importantes.
¡Gracias!