Servicios de datos en la nube


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • For WAPU: This slide shows how the various options compare, then explicitly illustrates where the Windows Azure platform fits in. It’s meant to make clear in the audience’s mind the exact place in this broad area that we’re about to dig into more deeply.
  • Key point: The Windows Azure Platform is a set of cloud computing services that can be used separately or together.Windows Azure is hosted in Microsoft data centers around the world. Windows Azure provides compute power, storage, and automated service management, as well as easy connectivity to other applications and access control to provide secure authorization and authentication of access to cloud resources. Also hosted in the Windows Azure platform is Microsoft SQL Azure, providing relational database services and automated management of relational service. SQL Azure can help reduce costs by integrating with existing toolsets and providing symmetry with on-premises and cloud databases. Windows Azure AppFabric helps developers connect applications and services in the cloud or on-premises. This includes applications running on Windows Azure, Windows Server and a number of other platforms including Java, Ruby, PHP and others. Windows Azure AppFabric provides a Service Bus for connectivity across network and organizational boundaries, and Access Control for federated authorization as a service.
  • Slide ObjectiveIntroduction to SQL AzureExplain SQL Azure DatabaseIndicate that other services are coming in the futureSpeaker NotesSQL Azure provides Microsoft SQL Server in the cloudBroadly compatible with online SQL ServerIn the future other services are plannedDataSync- to sync data between On premise and the cloudReporting etc…NotesCloud-based relational database service built on SQL Server® technologies. It provides a highly available, scalable, multi-tenant database service hosted by Microsoft in the cloud. SQL Azure Database helps to ease provisioning and deployment of multiple databases. Developers do not have to install, setup, patch or manage any software. High availability and fault tolerance is built-in and no physical administration is required.
  • Slide objectives: Define and enumerate the Windows Azure AppfabricSpeaking points: Much in the same way that SQL Services is about extending SQL Server to the cloud, we are also extending key .NET capabilities to the cloud as services.These services are really key components you would need for building distributed, connected applications. When we talk about connecting to your existing on-premises applications and enabling the composition of hybrid (Cloud + on-premises) applications – that is where .NET Services really comes in.There are currently two Services: the Service Bus & the Access Control ServiceService Bus:The Service Bus is designed to provide a general purpose application bus, available on the internet at internet scale. You can really thin of the Service Bus as being similar to an Enterprise Service Bus that many enterprise organizations have today. However, we believe that when providing a Service Bus as a programmable service on the internet, there are a wider range of scenarios for many more types of organizations.Fundamentally, the Service Bus is about connecting applications across network and application boundaries and making key message exchange patterns such as publish and subscribe messaging very simple.Access Control:The Access Control service is designed to provide rules-driven, claims-based access control for applications. Essentially, this allows you to define authorization rules for your applications using the claims-based approach that we are adopting within many Microsoft products and technologies and that is becoming adopted in the industry.Notes: Windows Azure has the .NET Framework built into it so thatyou can use those services within your application.But just like your application must be designed to scale out, the services that we have built into Windows over time in .NET also need to be designed and built in a way that can scale out naturally. We want to create services for you, and that's the purpose of .NET services, creating a pool of resources available to you to take advantage of and do things within your application very simply. So we're including a built-in, scale-out implementation of a service bus. The service bus lets you connect your on-premises systems securely into the cloud, into the Azure environment, while allowing your data and your information to traverse firewalls, solving a problem that is a bane of many application developments.
  • Tables are simply collections of Entities.Entites must have a PartitionKey and RowKey – can also contain up to 256 other properties.Entities within a table need not be the same shape! E.g.:Entity 1: PartitionKey, RowKey, firstnameEntity 2: PartitionKey, RowKey, firstname, lastnameEntity 3: PartitionKey, Rowkey, orderId, orderData, zipCodePartitions are used to spread data across multiple servers. This happens automatically based on the partition key you provide. Table “heat” is also monitored and data may be moved to different storage endpoints based upon usage.Queries should be targeted at a partition, since there are no indexes to speed up performance. Indexes may be added at a later date.Its important to convey that whilst you could copy tables in from a local data source (e.g. sql) it would not perform well in the cloud, data access needs to be re-thought at this level. Those wanting a more traditional SQL like experience should investigate SDS.
  • BlobsBlobs are stored in containers. There are 0 or more blobs per container and 0 or more containers per account. (since you can have 0 containers, but then you would not have any blobs either)Typically url in the cloud is paths can contain the / character, so you can give the illusion of multiple folders, but there is only 1 level of containers.Blob capacity at CTP is 50gb.There is an 8k dictionary that can be associated with blobs for metadata.Blobs can be private or public:Private requires a key to read and writePublic requires a key to write, but NO KEY to read.Use blobs where you would use the file system in the past.
  • Queues are simple:Messages are placed in queues. Max size is 8k (and it’s a string)Message can be read from the queue, at which point it is hidden.Once whatever read the message from the queue is finished processing the message, it should then remove the message from the queue. If not the message is returned to the queue after a specific user defined time limit. This can be used to handle code failures etc.
  • Servicios de datos en la nube

    1. 1. Servicios de Datos en la Nube<br />Alejando Pachecho<br />Architect<br /><br />Juan Pablo García<br />SolutionArchitect<br /><br />
    2. 2. Temas<br />Windows AzurePlatform (WAP). Introducción<br />WAP Storage Options<br />Windows Azure Storage<br />SQL Azure<br />¿Cómo seleccionar el Storage Apropiado?<br />Herramientas de Administración<br />Escenarios de Sincronización<br />Escenarios de Uso de Storage en la Nube. Estudio de Gartner<br />
    3. 3. Windows AzurePlatform (WAP). Introducción<br />
    4. 4. Taxonomía del Cloud Computing<br />Windows Azure platform quedaaquí<br />IaaS<br /> TI tradicional<br />SaaS<br />PaaS<br />Usted gestiona<br />Aplicaciones<br />Aplicaciones<br />Aplicaciones<br />Aplicaciones<br />Aplicaciones<br />Datos<br />Datos<br />Datos<br />Datos<br />Datos<br />Gestionado por el proveedor<br />Runtimes<br />Runtimes<br />Runtimes<br />Runtime<br />Runtimes<br />Usted gestiona<br />Gestionado por el proveedor<br />Middleware<br />Middleware<br />Middleware<br />Middleware<br />Middleware<br />Gestionado por el proveedor<br />Usted gestiona<br />S/O<br />S/O<br />S/O<br />S/O<br />Virtualización<br />Virtualización<br />Virtualización<br />Virtualización<br />Servidores<br />Servidores<br />Servidores<br />Servidores<br />Almacenamiento<br />Almacenamiento<br />Almacenamiento<br />Almacenamiento<br />Redes<br />Redes<br />Redes<br />Redes<br />
    5. 5. Presentando Windows AzurePlatform<br />Windows Azure esunaplataforma de gran escala en internet, alojada en los centros de datos Microsoft alrededor del mundo, queproporcionaun serviciosimple, confiabley poderosoparacrearAplicaciones y servicios de la web. <br />Experiencia del desarrollador<br />Utilizar capacidades y herramientas existentes.<br />Datos<br />relacionales<br />Cómputo<br />Storage<br />Gestión<br />CDN<br />Conectividad<br />Control de acceso<br />Sincronización<br />de datos<br />
    6. 6. SQL Azure<br />Servicios de Reporte<br />Sincronización de datos<br />Base de datos<br /><ul><li>Modelo de la base de datos relacional del servidor SQL familiar
    7. 7. Soporte para APIs y herramientas existentes
    8. 8. Construido para la nube con alta disponibilidad y tolerancia de fallas
    9. 9. Fácil aprovisionamiento y gestión de base de datos a través de múltiples centros de datos
    10. 10. Proporciona sincronización de dos vías de las bases de datos SQL Azure a través de los centros de datos
    11. 11. Basado en SSRS (herramientas tradicionales y probadas) </li></li></ul><li>Windows Azure AppFabric<br />In-Memory Cache<br />Control de acceso<br />Bus de servicio<br /><ul><li>Compuesto para proporcionar piezas base para sus aplicaciones
    12. 12. Expuesto a través de protocolos abiertos
    13. 13. Accesible desde cualquier parte
    14. 14. Bus de aplicación de propósitos generales y servicio de conectividad
    15. 15. Reglas-impulsadas, reclamaciones-basadas en servicio de control de acceso
    16. 16. Desarrollo de aplicaciones de alto desempeño
    17. 17. Colocación de datos más accedidos de forma muy cercana a la ejecución</li></li></ul><li>New: Extra Small Virtual Machines<br />Designed for small scale web applications<br />Mix and match with larger VM Instances<br />
    18. 18. WAP Storage Options<br />
    19. 19. Almacenamiento en la Nube<br />Windows Azure Storage<br />SQL Azure<br />
    20. 20. Windows Azure Storage<br />
    21. 21. Storage Services en Windows Azure<br />Objetivo: Escalabilidad, utility-based storage<br /><ul><li>Windows Azure Storage esunaaplicacióngestionadapor el Fabric Controller
    22. 22. Estado mantenido en el storage services, de maneratalque los roles puedanserreplicados
    23. 23. Blobs puedenseralmacenados en Windows Azure Content Delivery Network (CDN) globales</li></li></ul><li>Tablas<br />Entidades y propiedades (filas & columnas)<br />Ámbito de las tablas por cuenta<br />Diseñadas para «billions»<br />Escalamiento usando particiones<br />Partitionkey & rowkey<br />Operaciones realizadas en las particiones<br />Consultas eficaces<br />No hay limite en el numero de particiones<br />Usa ADO.NET Data Services<br />
    24. 24. Windows Azure Table Storage<br />Entity<br />Table<br />Account<br />Name=…hash=…<br />Users<br />Name=…hash=…<br />Account<br />Tag=…id=…<br />PhotoIndex<br />Tag=…,id=…<br />
    25. 25. Particiones y Partition Key<br />Todas las tablas tienen un partitionkey<br /><ul><li>Es la primera propiedad (columna) de tu tabla
    26. 26. Todas las entidades en la tabla con el mismo valor de partitionkey se guardan en la misma partición (local para el storage y acceso eficiente)
    27. 27. Azure balanceara la carga de las particiones automáticamente</li></li></ul><li>Demo<br />Uso del TableStore de Azure<br />
    28. 28. Blobs<br />Blobs son almacenados en contenedores<br />1 o mas contenedores por cuenta<br />El alcance es a nivel de contenedores<br />…/Container/blobname<br />$root es un nombre especial para el contenedor raiz<br />Blobs<br />Dos tipos, Page and Block<br />Page es aleatorio R/W, Block tiene estructura semántica <br />Metadata, se accesa independiente <br />Par nombre/Valor (8kb total)<br />Acceso privado o publico al contenedor <br />
    29. 29. Windows Azure Blob Storage<br />IMG001.JPG<br />pictures<br />IMG002.JPG<br />sally<br />movies<br />MOV1.AVI<br />REST API para operaciones Blob. Blob URL: <br />http://<Account><Container>/<BlobName><br />e.g.<br />Blob<br />Container<br />Account<br />
    30. 30. Colas<br />Simple cola de envió asíncrono <br />Creación y eliminación de colas<br />Mensajes:<br />Consultados al menos una vez<br />Tamaño máximo 8kb<br />operaciones:<br />Enqueue<br />Dequeue<br />RemoveMessage<br />
    31. 31. Windows Azure Queues<br />Message<br />Queue<br />Account<br />128x128, http://…<br />Thumbnail Jobs<br />256x256, http://…<br />Account<br />http://…<br />Indexing Jobs<br />http://…<br />
    32. 32. Demo<br />Uso de QUEUEs para comunicar Web Role con Worker Role<br />
    33. 33. SQL Azure<br />
    34. 34. SQL Azure<br />Business Intelligence<br />Reporting<br />Data Sync<br />Database<br />Servicios iniciales <br />Database – capacidades Core SQL Server<br />Servicios futros<br />Data Sync – Permitir el syncframework<br />Capacidades adicionales de SQL Server como: Business Intelligence y Reporting<br />
    35. 35. SQL Azure Database<br />Base de datos relacional altamente escalable como servicio<br />Servicios de base de datos relacional<br /><ul><li>SQL Server technologyfoundation
    36. 36. Alta simetría
    37. 37. Alta escalabilidad
    38. 38. Alta seguridad</li></ul>Base de datos “as a Service” – mas allá del hosting<br />Browser<br />Database<br />SOAP/REST<br />HTTP/S<br />ADO.NET/REST - EDM<br />HTTP/S<br />MS<br />Datacenter<br />Windows Azure <br />Compute<br />App Code<br />(ASP.NET)<br />Propuesta de Valor al cliente<br /><ul><li>Auto aprovisionamiento y capacidad bajo demanda
    39. 39. Sinetria con la plataforma de base de datos en sis instalaciones
    40. 40. Alta disponibilidad inmediata y tolerancia a fallas
    41. 41. Mantención automatizada de la infraestructura (DB)
    42. 42. Simple, flexible, y pago por uso.</li></ul>SQL Server Report Server<br />(on-premises)<br />T-SQL (TDS)<br />T-SQL (TDS)<br />SQL Azure<br />Database<br />- AD Federation (LiveId /AppFabric AC)<br />
    43. 43. Modelo de aprovisionamiento de Servicio<br />Cada account tiene cero o mas servers<br />Un portal común para aprovisionamiento de Azure completo<br />Herramientas de facturación <br />Cada server tiene una o mas bases de datos <br />Contienen metdata sobre la base de datos y u uso<br />Unidad de autentificación<br />Unidad de Geo-localizacion<br />Nombre de DNS generado<br />Cada databasetiene objetos estándares de SQL<br />Unidad de conssitencia<br />Unidad de multi arrendamiento<br />Contiene usuarios, tablas, vistas, índices, etc.<br />Unidad de facturación mas granular<br /> Account<br /> Server<br /> Database<br />
    44. 44. SQL Azure Database<br />Single Logical<br />Database<br />Multiple PhysicalReplicas<br />Based on SQL Server 2008 R2 engine<br />Use same tools and data access frameworks<br />Six global datacenters<br />High Availability & Redundancy<br />Reads are completed at the primary<br />Writes are replicated to a quorum of secondaries<br />Replica 1<br />Single Primary<br />Replica 2<br />DB<br />Replica 3<br />Multiple<br />Secondaries<br />
    45. 45. What’s New In SQL AzureEnhancements<br />SQL Azure Database<br />Windows Azure Platform – Developer Portal<br />Enhanced user experience and reporting<br />Database manager for SQL Azure<br />SQL Azure Reporting CTP<br />Reporting and BI on SQL Azure databases<br />Based on SQL Server Reporting Services<br />SQL Azure Data Sync CTP2<br />Synchronize SQL Azure databases<br />Synchronize SQL Azure with on-premises SQL Server<br />
    46. 46. ¿Cómo seleccionar el Storage Apropiado?<br />
    47. 47. STORAGE. ESCENARIOS DE USO<br />þ<br />þ<br />þ<br />þ<br />þ<br />þ<br />þ<br />þ<br />
    48. 48. Herramientas de Administración<br />
    49. 49. Herramientas de Administración<br />Tradicionales<br />SQL Server Management Studio<br />Visual Basic<br />Portal de Administración de Windows Azure<br />Web de Adm<br />
    50. 50. Escenarios de Sincronización<br />
    51. 51. Introducing SQL Azure Data Sync”Synchronization of SQL Server and SQL Azure Databases”<br />CTP1 (Now)<br />SQL Azure Database<br />Sync<br />Sync<br />SQL Azure <br />Data Sync<br />Remote Offices<br />Retail Stores<br />Sync<br />Sync<br />Sync<br />Sync<br />Sync<br />CTP2<br />On-Premises (Headquarters)<br />
    52. 52. Demo<br />
    53. 53. Conclusiones<br />
    54. 54. GartnerG00205696<br />Usos<br />Reducir las dificultades de las implementaciones «onpremises»<br />Acelerar el deployment «Time-to-Market»<br />Soluciones o escenarios Principales<br />Integración de Datos<br />Data Quality<br />Data Persistency<br />Peaks<br />Soporte para Aplicaciones Web<br />