empezando con jose rivera consultant nagnoi, inc. [email protected]
TRANSCRIPT
Empezandocon
Jose RiveraConsultantNagnoi, [email protected]
Bases de Datos SQL AzureLa primera y actual base de datos relacional como servicio
Escalabilidad Elástica
Agilidad de Desarrollo
Auto-Manejada
• Utilidad de Espacio; paga mientras crezcas
• Balance de Carga (Load Balancing) flexible
• SLAs listos para negocios
• Permite soluciones multi-inquilino
• Presencia mundial
• Fácil para provisionar e implementar
• Alta disponibilidad (HA) y "fault tolerance " automaticamente
• Infraestructura auto-mantenida y auto-arreglable
• Ninguna necesidad de administración de servidor o VM
• Se construyen soluciones de bases de datos "cloud-based " en un modelo relacional consistente
• Aprovechar las habilidades existentes a través de herramientas conocidas
Opciones de Bases de Datos
Recu
rso
s
Dedicado
Compartido
Bajo Alto“Fricción”/Control
SQL Azure (RDBMS)
Valor:
Alta Disponibilidad, Fault-Tolerance automaticos
Escalabilidad libre de fricción
Auto aprovisionamientoCompatibilidad Alta
Servidor BD VirtualGobierno de Recursos @
Base de Datos Lógica (LDB)
Seguridad @ LDB
En predios (On-premise) SQL Server u otro s/w en-predios
Gobierno de Recursos @ maquina Seguridad @ BD Server/SO
Valor:Control completo
Hardware – Tamaño/Escalabilidad
Compatibilidad 100%Propio
HA/DR/Escalabilidad
Alojado (Hosted) SQL Server u otro alojado
Gobierno de Recursos @ VM
Seguridad @ Server BD/SO
Valor:
Área de API – 100%Propio
HA/DR/Escalabilidad
Aplicaciones Departamentales Aplicaciones simples construidas por individuos o departamentos Necesidad de IT para implementación simple y auto-manejable:
“Apoderamiento y Dominio” Aplicaciones Web
Empresas pequeñas o empezando que necesiten la “nube” como IT Implementaciones simples, auto-manejables y escalabilidad según
demanda Proveedor de Servicios de Internet (ISV)
Soporte Multi-inquilino para facturación y aislamiento Concentrador de Datos (Data Hub)
Compartir y agregar datos a través de niveles (tiers) y empresas Lugar centralizado para datos, alta escalabilidad y sincronización
con fuentes de datos existentes
Escenarios para Azure
Topologías de Aplicación (V1)
MSDatacenter
SOAP/RESTHTTP/S
Acceso de SQL Azure desde MS Datacenter (Azure compute – ADO.NET)
Windows Azure
T-SQL (TDS)
MSDatacenter
T-SQL (TDS)
App Code / Tools
Acceso de SQL Azure desde fuera de MS Datacenter
(En predios – ADO.NET)
App Code(ASP.NET)
ADO.NET Data Svcs/REST - EFHTTP/S
Código Lejos
SQL Data Services
SQL Data Services
Application/ Browser
Código Cerca
Cada cuenta tiene cero o mas servidores Abarca la plataforma de Azure, provisionado vía un portal
común Establece un instrumento de facturación
Cada servidor tiene una o mas bases de datos Concepto lógico iguala a un master DB Contiene metadata de las bases de datos y su uso Contiene: autenticación(SQL), geo-localidad, facturación,
reportes Nombres generados basados en DNS El “Collation” de SQL Azure es SQL_LATIN1_GENERAL_CP1_CI_AS Máximo de 150 bases de datos
Cada base de datos tiene objetos estándar de SQL Usuarios, Tablas, Vistas, Índices, etc. Consistencia
Modelo de Provicionamiento de Servicio
Cuenta
Servidor
Base de Datos
Arquitectura
Infraestructura compartida al nivel de base de datos SQL Enrutamiento de solicitudes (request routing), seguridad y aislamiento
Tecnología de Alta Disponibilidad y Escalabilidad Replicación y “failover” automáticos
Infraestructura de medición y facturación
Maquina 5Instancia SQL
SQL BDUserDB1
UserDB2
UserDB3
UserDB4
Scalability and Availability: Fabric, Failover, Replication, and Load balancing
SDS Aprovisionamiento (bases de datos, cuentas, roles, …, Medición y Facturación
Maquina 6Instancia SQL
SQL BDUserDB1
UserDB2
UserDB3
UserDB4
Maquina 4Instancia SQL
SQL BDUserDB1
UserDB2
UserDB3
UserDB4
Escalabilidad y Disponibilidad: Fabric, Failover, Replicación y Balance de Carga
Replicas de Base de Datos
Replica 1
Replica 2
Replica 3
BD
Base de Datos unicaMultiples Replicas
Primario Unico
Replica 4
!
SQL AzureImplementación
SQL AzureTDS
Gateway
DB Script
SQL AzureAccesando las bases de datos
Your App
Cambia parámetro de conexión (connection string)
SQL AzureTDS
Gateway
Pequeños conjuntos de datos (Small Data Sets) Usa una sola base de datos Mismo modelo que SQL Server en los predios
Grandes conjuntos de datos (Large Data Sets) y/o rendimiento masivo (Massive Throughput) Particionar la data a través de varias bases de datos Usar “parallel fan-out queries” para búsqueda de datos Código de las aplicaciones debe ser “partition aware” en
v1 Deben estar publicados los “best practices” para
escalabilidad Post-v1 se trabajara en nivel de abstracción para reducir las
complejidades de particiones
Modelo de Programación
Desarrollo en SQL Azure
Demo
Ejemplos de Compatibilidad de SQL
Soportadas al momento Tablas, indexes and vistas * Procedimiento almacenado
(Stored Procedures) Disparador(Triggers) Restricciones(Constraints) Variables de tablas,
tablas temporeras de sesiones (#t)
Spatial
No soportadas al momento
Transacciones distribuidas Búsquedas (queries)
distribuidas CLR Service Broker DDL and vistas relacionadas
al servidor físico o al catalogo
Para mas información, vean http://msdn.microsoft.com/en-us/library/ee336281(lightweight).aspx
Soporte para patrones comunes de aplicaciones Administración lógica / basada en pólizas Patrones que funcionan de SQL Server a SQL Azure Consideraciones para Multi-inquilinos
“Throttling” and Balance de Carga (Load Balancing) Limites en tamaño de BD, duracion de transacciones,
etc
Metas de Compatibilidad
Se utilizan librerías de clientes existentes ADO.NET, ODBC, PHP
Librerías de cliente pre-instaladas en roles de Azure
Soporte para controles ASP.NET Clientes se conectan directamente a la base
de datos No se puede “brincar” a través de las BDs (no
USE)
Modelo de Conexion
SQL Azure se enfoca en administración lógica Creación y manejo de esquemas Optimización de búsquedas Manejo de seguridad (Logins, Usurios, Roles)
Servicio maneja el aspecto físico Replicación automática con Alta disponibilidad
“out of box” Failover transparente en caso de fallo Balance de Carga de los datos para asegurar SLA
Administración Lógica vs. Física
El rol de DBA se enfatiza mas en manejo lógico
Soporte para opciones de implementación básicas Los SQL scripts funcionan (pero no attach database)
Geo-localización de Windows Azure y de bases de datos SQL Azure (Datacenters)
Soporte para aplicaciones y modelo de multi-servidores Implementación de Nube (Cloud) o en los predios es un
tema de selección al momento Visibilidad de los datos tanto en los predios como en la
nube
Implementación
Utiliza el modelo de seguridad regular de SQL Autentica logins, enlace a usuarios y roles Autentica usuarios y roles a objetos de SQL
Limitado a logins de SQL Username + password
Se contempla futuros protocolos de autenticación: AD Federation, WLID, etc
Modelo de Seguridad
Modelo de seguridad es 100% compatible con SQL locales
Ediciones de las Bases de Datos
Dos SQL Azure Database SKUs: Web & Business Web Edition: 1 GB @ $9.99/mes | 5 GB @ $49.95/mes Business Edition: Hasta 50 GB @ $99.99/10 GB/mes 10 GB @ $99.99 | 20 GB @ $199.98 | 30 GB @ $299.97 | 40 GB @ $399.96 | 50 GB @ $499.95
DBA especifica la edicion Web: EDITION = Web Business: EDITION = Business
DBA especifica MAXSIZE Web: MAXSIZE = 1GB| 5GB Business: MAXSIZE = 10GB | 20GB | 30GB | 40GB | 50GB El limite de 50 es establecido y no se permitirá crecimiento Sera cargado por el crecimiento actual (peak) (in cualquier día )
CREATE DATABASE foo1 (EDITION='business', MAXSIZE=50GB);CREATE DATABASE foo2 (EDITION='business', MAXSIZE=30GB);
CREATE DATABASE bar1 (EDITION='web', MAXSIZE=5GB);CREATE DATABASE bar2 (EDITION='web'); -- Defaults a 1GB
Hasta 50 GBIncrementos
10 GB
Business Edition
Hasta 5 GBSolo 1 GB o 5
GB
Web Edition
Ediciones de las Bases de Datos
Transferencia de datos América del Norte & regiones de Europa
$0.10 per GB in $0.15 per GB out
Región Asia Pacifico $0.30 per GB in $0.45 per GB out
Transferencias de datos de entrada (Inbound) durante horas no pico (off-peak) hasta octubre 31, 2010 son sin cargos. Precios revierten a las tasas de cargos de entrada luego de octubre 31, 2010.
$0.10 / GB$0.15 / GB
América del Norte
& Europa
$0.30 / GB$0.45 / GB
Asia Pacifico
Puntos Claves
Parte integrada de la Plataforma de Datos SQL
Aprovechar los conocimientos y herramientas existentes de SQL Server
SQL Azure es la plataforma de datos de Windows Azure
Windows Azure Platformhttp://www.azure.com/
Windows Azure Platform Training Kithttp://www.microsoft.com/downloads/details.aspx?FamilyID=413E88F8-5966-4A83-B309-53B7B77EDF78&displaylang=en
MSDN Development Centerhttp://msdn.microsoft.com/en-us/sqlserver/dataservices
Team Bloghttp://blogs.msdn.com/ssds
Joe Rivera’s Techno Ramblings http://joetechramblings.wordpress.com
Quieren saber mas?