{"id":13501,"date":"2022-03-24T12:43:36","date_gmt":"2022-03-24T12:43:36","guid":{"rendered":"https:\/\/beta.bluetab.net\/databricks-sobre-azure-una-perspectiva-de-arquitectura-parte-2\/"},"modified":"2024-03-05T17:19:27","modified_gmt":"2024-03-05T17:19:27","slug":"databricks-on-azure-an-architecture-perspective-part-2","status":"publish","type":"post","link":"https:\/\/bluetab.co.uk\/en\/databricks-on-azure-an-architecture-perspective-part-2\/","title":{"rendered":"Databricks on Azure &#8211; An architecture perspective (part 2)"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"13501\" class=\"elementor elementor-13501\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-b2ad9fe elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"b2ad9fe\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-7eac278\" data-id=\"7eac278\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-45481b1 elementor-widget elementor-widget-heading\" data-id=\"45481b1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Databricks sobre Azure - Una perspectiva de arquitectura (parte 2)<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-7843b8f elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"7843b8f\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-1a4ee60\" data-id=\"1a4ee60\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-ed6cc51\" data-id=\"ed6cc51\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-173edbe elementor-share-buttons--view-icon elementor-share-buttons--skin-minimal elementor-share-buttons--shape-circle elementor-grid-0 elementor-share-buttons--color-official elementor-widget elementor-widget-share-buttons\" data-id=\"173edbe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"share-buttons.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-grid\" role=\"list\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-grid-item\" role=\"listitem\">\n\t\t\t\t\t\t<div class=\"elementor-share-btn elementor-share-btn_twitter\" role=\"button\" tabindex=\"0\" aria-label=\"Share on twitter\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-share-btn__icon\">\n\t\t\t\t\t\t\t\t<i class=\"fab fa-twitter\" aria-hidden=\"true\"><\/i>\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-grid-item\" role=\"listitem\">\n\t\t\t\t\t\t<div class=\"elementor-share-btn elementor-share-btn_linkedin\" role=\"button\" tabindex=\"0\" aria-label=\"Share on linkedin\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-share-btn__icon\">\n\t\t\t\t\t\t\t\t<i class=\"fab fa-linkedin\" aria-hidden=\"true\"><\/i>\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-3436d8e elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"3436d8e\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-349d957\" data-id=\"349d957\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-077b220 elementor-position-left elementor-vertical-align-middle elementor-widget elementor-widget-image-box\" data-id=\"077b220\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-image-box-wrapper\"><figure class=\"elementor-image-box-img\"><a href=\"https:\/\/www.linkedin.com\/in\/francisco-linaje-024499175\/\" target=\"_blank\" tabindex=\"-1\"><img decoding=\"async\" width=\"150\" height=\"150\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail wp-image-12383 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco-150x150.jpg 150w, https:\/\/bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco-300x300.jpg 300w, https:\/\/bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco-75x75.jpg 75w, https:\/\/bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco.jpg 384w\" data-sizes=\"(max-width: 150px) 100vw, 150px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 150px; --smush-placeholder-aspect-ratio: 150\/150;\" \/><\/a><\/figure><div class=\"elementor-image-box-content\"><h4 class=\"elementor-image-box-title\"><a href=\"https:\/\/www.linkedin.com\/in\/francisco-linaje-024499175\/\" target=\"_blank\">Francisco Linaje<\/a><\/h4><p class=\"elementor-image-box-description\">AWS Solutions Architect<\/p><\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-1b526fe\" data-id=\"1b526fe\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ed3ba3a elementor-position-left elementor-vertical-align-middle elementor-widget elementor-widget-image-box\" data-id=\"ed3ba3a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-image-box-wrapper\"><figure class=\"elementor-image-box-img\"><a href=\"https:\/\/www.linkedin.com\/in\/gabriel-gallardo-ruiz-9042a0212\/\" target=\"_blank\" tabindex=\"-1\"><img decoding=\"async\" data-src=\"https:\/\/bluetab.net\/wp-content\/uploads\/2020\/10\/avatarP-bluetab.jpg.png\" title=\"\" alt=\"\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" \/><\/a><\/figure><div class=\"elementor-image-box-content\"><h4 class=\"elementor-image-box-title\"><a href=\"https:\/\/www.linkedin.com\/in\/gabriel-gallardo-ruiz-9042a0212\/\" target=\"_blank\">Gabriel Gallardo Ruiz<\/a><\/h4><p class=\"elementor-image-box-description\">Senior Data Architect<\/p><\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-2b67acd\" data-id=\"2b67acd\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-c738cdf elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"c738cdf\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-55b901d\" data-id=\"55b901d\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-7668b05 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"7668b05\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-592ef24\" data-id=\"592ef24\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6010029 elementor-widget elementor-widget-theme-post-featured-image elementor-widget-image\" data-id=\"6010029\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"theme-post-featured-image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"512\" src=\"https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-1024x512.png\" class=\"attachment-large size-large wp-image-17836\" alt=\"\" srcset=\"https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-1024x512.png 1024w, https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-300x150.png 300w, https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-768x384.png 768w, https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4.png 1200w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4abbf0e elementor-widget elementor-widget-text-editor\" data-id=\"4abbf0e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">En esta segunda entrega nos centraremos en analizar los diferentes servicios que ofrece Databricks para asegurar el escalado de nuestros servicios y la recuperaci\u00f3n ante fallas del sistema, as\u00ed como otros aspectos relativos a la seguridad como encriptaci\u00f3n de los datos tanto reposo como en tr\u00e1nsito.<br \/><\/span><\/p><p><b>Primera entrega (<\/b><a href=\"https:\/\/bluetab.net\/databricks-sobre-azure-una-perspectiva-de-arquitectura-parte-1\/\"><b>link<\/b><\/a><b>):<\/b><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Arquitectura alto nivel<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Planes y tipos de carga de trabajo<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Networking<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Identidad y Gesti\u00f3n de accesos<\/span><\/li><\/ul><p><b>Segunda entrega:<\/b><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Disaster Recovery<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Escalabilidad<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Seguridad<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Logging y monitorizaci\u00f3n<\/span><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7aaf8a9 elementor-widget elementor-widget-heading\" data-id=\"7aaf8a9\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"glosario\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Glosario<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cffc795 elementor-widget elementor-widget-text-editor\" data-id=\"cffc795\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<ul><li style=\"font-weight: 400;\" aria-level=\"1\"><b>All Purpose Compute<\/b><span style=\"font-weight: 400;\">: Dise\u00f1ado para entornos colaborativos en los que se recurra de forma simult\u00e1nea al cl\u00faster por parte de Data Engineers y Data Scientist<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Azure Data Lake<\/b><span style=\"font-weight: 400;\">: Permite almacenar m\u00faltiples formatos de datos en un mismo lugar para su explotaci\u00f3n y an\u00e1lisis, actualmente Azure dispone la versi\u00f3n Gen2 .<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Azure Key Vault<\/b><span style=\"font-weight: 400;\">: Servicio administrado de Azure que permite el almacenamiento seguro de secretos.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Azure Virtual Network (VNET)<\/b><span style=\"font-weight: 400;\">: Red virtual aislada l\u00f3gicamente en Azure.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>DBFS (Databricks File Systen)<\/b><span style=\"font-weight: 400;\">: Sistema de archivos de Databricks que se monta sobre los sistema de archivos distribuido de los Cloud Providers.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Data Lake<\/b><span style=\"font-weight: 400;\">: Paradigma de almacenamiento distribuido de datos provenientes de multitud de fuentes y formatos, estructurados, semi estructurados y sin estructurar.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Identity Provider (IdP)<\/b><span style=\"font-weight: 400;\">: Entidad que mantiene la informaci\u00f3n de identidad de los individuos dentro de una organizaci\u00f3n.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Infraestructura como c\u00f3digo o IaC<\/b><span style=\"font-weight: 400;\">: gesti\u00f3n y aprovisionamiento de la infraestructura a partir de c\u00f3digo declarativo.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Jobs Compute<\/b><span style=\"font-weight: 400;\">: Enfocado a procesos orquestados mediante pipelines gestionados por data engineers que puedan conllevar autoescalado en ciertas tareas<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Jobs Light Compute<\/b><span style=\"font-weight: 400;\">: Dise\u00f1ado para procesos cuya consecuci\u00f3n no sea cr\u00edtica y no conlleve una carga computacional muy elevada<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Network Security Group o NSG<\/b><span style=\"font-weight: 400;\">: Especifican las reglas que regulan el tr\u00e1fico de entrada y salida de la red y los clusters en Azure<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Private Link<\/b><span style=\"font-weight: 400;\">: Permite el acceso privado (IP privada) a Azure PaaS a trav\u00e9s de tu VNET, de la misma forma que los service endpoints el tr\u00e1fico se enruta a trav\u00e9s del backbone de Azure.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>SQL Compute<\/b><span style=\"font-weight: 400;\">: Cluster reservados a queries para la visualizaci\u00f3n de la informaci\u00f3n almacenada en el Data Lake<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Secret scope<\/b><span style=\"font-weight: 400;\">: Colecci\u00f3n de secretos identificados por un nombre.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Secure Cluster Connectivity (SCC)<\/b><span style=\"font-weight: 400;\">:\u00a0 Comunicaci\u00f3n a trav\u00e9s de t\u00fanel inverso SSH entre Control Plane y cluster. Permite no tener puertos abiertos ni IPs p\u00fablicas en las instancias.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Security Assertion Markup Language (SAML)<\/b><span style=\"font-weight: 400;\">: Est\u00e1ndar abierto utilizado para la autenticaci\u00f3n. Basado en XML, las aplicaciones web utilizan SAML para transferir datos de autenticaci\u00f3n entre dos entidades, el Identity Provider y el servicio en cuesti\u00f3n.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Service endpoints<\/b><span style=\"font-weight: 400;\">: Componente de red que permite conectar una VNET con los diferentes servicios dentro de Azure a trav\u00e9s de la propia red de Azure.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>TLS\/ TLS1.2 (Transport Layer Security)<\/b><span style=\"font-weight: 400;\">: es un protocolo de cifrado y comunicaci\u00f3n que proporciona comunicaciones seguras por una red, com\u00fanmente Internet.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Workspace<\/b><span style=\"font-weight: 400;\">: Entorno compartido para acceder a todos los activos de Databricks. En este se organizan los diferentes objetos (notebooks, librerias, etc\u2026) en carpetas y se administran los accesos a recursos computacionales como clusters y jobs.<\/span><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-953e3be elementor-widget elementor-widget-heading\" data-id=\"953e3be\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"disaster\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Disaster Recovery<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7194037 elementor-widget elementor-widget-text-editor\" data-id=\"7194037\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Entendemos por <\/span><i><span style=\"font-weight: 400;\">Disaster Recovery<\/span><\/i><span style=\"font-weight: 400;\"> al conjunto de pol\u00edticas, herramientas y procedimientos que permiten la recuperaci\u00f3n de la infraestructura cuando el sistema en su conjunto cae, como por ejemplo una ca\u00edda de una regi\u00f3n de Azure.<\/span><\/p><p><span style=\"font-weight: 400;\">No debemos confundir estas pol\u00edticas y herramientas con las empleadas en materia de alta disponibilidad de nuestro sistema (m\u00ednimo nivel de servicios).<\/span><\/p><p><span style=\"font-weight: 400;\">Para ello, cuando implementamos una soluci\u00f3n en la nube, una de las principales preguntas que debemos plantearnos a la hora de dise\u00f1ar e implementar nuestra soluci\u00f3n es:<\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u00bfQu\u00e9 piezas son cr\u00edticas en nuestro sistema?<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u00bfQu\u00e9 da\u00f1os pueden provocar en el servicio?<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u00bfC\u00f3mo puede el sistema adaptarse y recuperarse ante estos errores?<\/span><\/li><\/ul><p><span style=\"font-weight: 400;\">Dar respuesta a estas preguntas es de vital importancia si deseamos que nuestra soluci\u00f3n pueda cumplir adecuadamente el est\u00e1ndar de calidad que hayamos planteado.<\/span><\/p><p><span style=\"font-weight: 400;\">Para este punto debemos analizar en que \u00e1mbito de nuestra soluci\u00f3n opera Databricks y que herramientas o pautas debemos seguir para que la plataforma pueda cumplir con su servicio.<\/span><\/p><p><span style=\"font-weight: 400;\">Debemos recordar que Databricks ofrece soluciones en materia de transformaci\u00f3n y almacenamiento de datos tanto batch como en streaming, utilizando Azure Blob storage como capa de persistencia de datos no estructurados, como asimismo diferentes herramientas relacionadas con orquestaci\u00f3n de jobs o an\u00e1lisis ad-hoc de datos v\u00eda SQL como servicio de analitica. Por lo tanto en este punto veremos que diferentes herramientas pueden ser propuestas para sincronizar nuestros workspaces,activos\/recursos involucrados entre nuestras regiones.<\/span><\/p><h3><strong><br \/>Conceptos DR<\/strong><\/h3><p><span style=\"font-weight: 400;\">Para poder comprender que es Disaster Recovery, deberemos primero comprender dos conceptos importantes:<\/span><\/p><h4><strong>Recovery Point Objective (RPO)<\/strong><\/h4><p><span style=\"font-weight: 400;\">Hace referencia a la cantidad de datos m\u00e1xima p\u00e9rdida (medida en minutos) aceptable despu\u00e9s de una ca\u00edda del sistema. En este caso al disponer de Azure Blob Storage como sistema de persistencia distribuido, el concepto aplicar\u00eda a los datos de usuario temporales almacenados por Databricks, como por ejemplo cambios realizados en nuestros notebooks.<\/span><\/p><h4><strong>Recovery Time Objective (RTO)<\/strong><\/h4><p><span style=\"font-weight: 400;\">Entendemos por RTO al periodo de tiempo desde la ca\u00edda del sistema hasta la recuperaci\u00f3n del nivel de servicio marcado.<\/span><\/p><p><span style=\"font-weight: 400;\">En la siguiente imagen, podemos observar ambos conceptos de una forma visual:<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ea162ef elementor-widget elementor-widget-image\" data-id=\"ea162ef\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"487\" height=\"301\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image8.png\" class=\"attachment-large size-large wp-image-13395 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image8.png 487w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image8-300x185.png 300w\" data-sizes=\"(max-width: 487px) 100vw, 487px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 487px; --smush-placeholder-aspect-ratio: 487\/301;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Esquema conceptual sobre los conceptos RPO\/RTO (fuente: Databricks)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3fd4aa7 elementor-widget elementor-widget-text-editor\" data-id=\"3fd4aa7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Es importante indicar que<\/span><span style=\"font-weight: 400;\"> la corrupci\u00f3n existente en los datos no se ver\u00e1 mitigada por las pol\u00edticas asociadas a DR<\/span><span style=\"font-weight: 400;\">, sin embargo Databricks ofrece Delta time travel como sistema de versionado.<\/span><\/p><h3><strong>Tipos de regi\u00f3n y redundancia<\/strong><\/h3><p><span style=\"font-weight: 400;\">Una vez comprendido los conceptos de RPO y RTO, deberemos comprender los diferentes tipos de regiones en los que operar\u00e1 nuestra soluci\u00f3n:<\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Regi\u00f3n primaria<\/b><span style=\"font-weight: 400;\">: Regi\u00f3n principal donde opera el sistema de forma normal.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Regi\u00f3n secundaria<\/b><span style=\"font-weight: 400;\">: Regi\u00f3n alternativa que entrar\u00e1 en operativa en caso de ca\u00edda de la regi\u00f3n primaria.<\/span><\/li><\/ul><p><span style=\"font-weight: 400;\">En nuestro caso de uso, estamos implementando un workspace de Databricks, por lo tanto emplearemos como capa de persistencia principal Blob Storage. Este servicio ofrece diferentes posibilidades a la hora de replicar nuestros datos entre regiones, vamos a verlas.<\/span><\/p><p><b>Region primaria<\/b><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Almacenamiento con redundancia local (LRS)<\/b><span style=\"font-weight: 400;\">: se realizan tres copias s\u00edncronas dentro de una \u00fanica ubicaci\u00f3n f\u00edsica en la regi\u00f3n primaria, reduciendo as\u00ed el coste, pero afectando a la disponibilidad y durabilidad (once nueves) de los datos.<\/span><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9a0a642 elementor-widget elementor-widget-image\" data-id=\"9a0a642\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"273\" height=\"285\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image9.png\" class=\"attachment-large size-large wp-image-13397 lazyload\" alt=\"\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 273px; --smush-placeholder-aspect-ratio: 273\/285;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Diagrama de replicaci\u00f3n LRS (fuente: Azure)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-aa30bc3 elementor-widget elementor-widget-text-editor\" data-id=\"aa30bc3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<ul><li><i><span style=\"font-weight: 400;\"><b>Almacenamiento con redundancia de zona (ZRS)<\/b>: copia s\u00edncrona de los datos en tres zonas de alta disponibilidad en la regi\u00f3n primaria (doce nueves).<\/span><\/i><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a675595 elementor-widget elementor-widget-image\" data-id=\"a675595\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"503\" height=\"501\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image3.png\" class=\"attachment-large size-large wp-image-13385 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image3.png 503w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image3-300x300.png 300w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image3-150x150.png 150w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image3-75x75.png 75w\" data-sizes=\"(max-width: 503px) 100vw, 503px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 503px; --smush-placeholder-aspect-ratio: 503\/501;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Diagrama de replicaci\u00f3n ZRS (fuente: Azure)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fb46eef elementor-widget elementor-widget-text-editor\" data-id=\"fb46eef\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><b>Region primaria y secundaria<\/b><\/p><ul><li aria-level=\"1\"><b>Almacenamiento con redundancia geogr\u00e1fica (GRS): <\/b><span style=\"font-weight: 400;\">Se realiza una copia LRS en la regi\u00f3n primaria y secundaria.<\/span><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d0c0e84 elementor-widget elementor-widget-image\" data-id=\"d0c0e84\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"731\" height=\"299\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image10.png\" class=\"attachment-large size-large wp-image-13399 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image10.png 731w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image10-300x123.png 300w\" data-sizes=\"(max-width: 731px) 100vw, 731px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 731px; --smush-placeholder-aspect-ratio: 731\/299;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Diagrama de replicaci\u00f3n GRS (fuente: Azure)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bac2fec elementor-widget elementor-widget-text-editor\" data-id=\"bac2fec\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<ul><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Almacenamiento con redundancia de zona geogr\u00e1fica (GZRS)<\/b><span style=\"font-weight: 400;\">: Se realiza una copia con ZRS en la regi\u00f3n primaria y mediante LRS en la regi\u00f3n secundaria.<\/span><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9151418 elementor-widget elementor-widget-image\" data-id=\"9151418\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"960\" height=\"541\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image13.png\" class=\"attachment-large size-large wp-image-13405 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image13.png 960w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image13-300x169.png 300w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image13-768x433.png 768w\" data-sizes=\"(max-width: 960px) 100vw, 960px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 960px; --smush-placeholder-aspect-ratio: 960\/541;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Diagrama de replicaci\u00f3n GZRS (fuente: Azure)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e822686 elementor-widget elementor-widget-text-editor\" data-id=\"e822686\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">En ambos casos, el acceso a los datos en la regi\u00f3n secundaria no estar\u00e1 disponible salvo activaci\u00f3n de la opci\u00f3n de lectura RA.<\/span><\/p><p><span style=\"font-weight: 400;\">Dadas estas configuraciones, en la siguiente imagen se pueden ver los escenarios planteados en los que nuestros datos dejar\u00edan de ser accesibles.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3ab6a0f elementor-widget elementor-widget-image\" data-id=\"3ab6a0f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"901\" height=\"402\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image11.png\" class=\"attachment-large size-large wp-image-13401 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image11.png 901w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image11-300x134.png 300w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image11-768x343.png 768w\" data-sizes=\"(max-width: 901px) 100vw, 901px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 901px; --smush-placeholder-aspect-ratio: 901\/402;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Disponibilidad y acceso al dato seg\u00fan la redundancia configurada (fuente: Azure)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d74d722 elementor-widget elementor-widget-text-editor\" data-id=\"d74d722\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Deberemos configurar el nivel de replicaci\u00f3n y redundancia entre zonas con el fin de disponer de nuestros datos sincronizados y disponibles en las regiones secundarias con el fin de que est\u00e1s puedan estar operativas.<\/span><\/p><h3><strong><br \/>Tipos de despliegue<\/strong><\/h3><p><span style=\"font-weight: 400;\">Dentro de los tipos de despliegue, podemos encontrar diferentes combinaciones seg\u00fan la necesidad de respuesta y los costes que deseamos asumir por su disponibilidad.<\/span><\/p><ul><li><b>Activo<\/b><span style=\"font-weight: 400;\">: Despliegue principal que ejecuta las funcionalidad y servicios propios del sistema.<\/span><\/li><li aria-level=\"1\"><b>Pasivo<\/b><span style=\"font-weight: 400;\">: Procesos que no operan en el despliegue principal y permanecen inactivos\/pasivos hasta que el despliegue activo deje de funcionar por una ca\u00edda.<\/span><\/li><\/ul><p><span style=\"font-weight: 400;\">Es posible encontrar combinaciones de estos: activo-pasivo, activo-activo. De forma general:<br \/><\/span><\/p><p><strong>Backup Restore<br \/><\/strong><span style=\"font-weight: 400;\">Es la estrategia m\u00e1s econ\u00f3mica y lenta que podemos implementar. El objetivo principal es tener un conjunto de puntos de restauraci\u00f3n en ambas regiones que podamos emplear para recuperar el servicio, sin necesidad de aprovisionar elementos core del sistema en otras regiones.\u00a0<\/span><\/p><p><strong>Pilot Light\u00a0<br \/><\/strong><span style=\"font-weight: 400;\">Las piezas m\u00e1s importantes de nuestro sistema se encuentran desplegadas de forma activa pero bajo m\u00ednimos dentro de nuestra regi\u00f3n secundaria, de forma que ante una ca\u00edda del sistema los servicios principales podr\u00edan estar operativos y podr\u00edan escalarse de forma gradual (activo-pasivo).<\/span><\/p><p><strong>Warn Standby<br \/><\/strong><span style=\"font-weight: 400;\">Estar\u00edamos en un escenario muy similar a Pilot Light pero donde no solo tendr\u00edamos activos nuestros sistemas principales sino tambi\u00e9n una buena parte de los secundarios funcionando bajo m\u00ednimos pero listos para ser escalados (activo-pasivo).<\/span><\/p><p><span style=\"font-weight: 400;\"><strong>Multi-site<\/strong><br \/><\/span><span style=\"font-weight: 400;\">Este plan ofrece el mayor grado de respuesta ya que implica disponer de forma activa todas nuestras piezas en una regi\u00f3n secundaria, listas para dar servicio en caso de ca\u00edda de la regi\u00f3n principal (activo-activo)<\/span><\/p><p><span style=\"font-weight: 400;\">Deberemos elegir la estrategia que mejor se adapte a nuestro caso de uso que depender\u00e1 principalmente del nivel de respuesta y coste asumible.<\/span><\/p><h3><span style=\"font-weight: 400;\"><br \/><strong>Workflow t\u00edpico de recuperaci\u00f3n<\/strong><\/span><\/h3><p><span style=\"font-weight: 400;\">Dentro de los diferentes procedimientos, encontramos la estrategia activa-pasiva como la soluci\u00f3n m\u00e1s sencilla y barata pero a la vez efectiva a la hora de ofrecer respuesta y servicio en el caso donde tras una ca\u00edda del sistema en la regi\u00f3n principal, el sistema pasivo entra en funcionamiento dando soporte al servicio.<\/span><\/p><p><span style=\"font-weight: 400;\">La estrategia podr\u00eda ser implementada de forma unificada para toda la organizaci\u00f3n o por grupos\/departamentos de forma independiente basados en sus propias reglas y procedimientos.<\/span><\/p><p><span style=\"font-weight: 400;\">De una forma global nos encontraremos que el procedimientos t\u00edpico a alto nivel ser\u00eda el siguiente:<\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Ca\u00edda de un servicio cr\u00edtico en la regi\u00f3n primaria: red, origen de datos, etc<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Se levanta el servicio en la segunda regi\u00f3n si \u00e9sta no est\u00e1 afectada.<\/span><ul><li style=\"font-weight: 400;\" aria-level=\"2\"><span style=\"font-weight: 400;\">Se deben parar todas las actividades relacionadas con el workspace que sigan en funcionamiento en la regi\u00f3n primaria y realizar un backup de los cambios recientes si es posible.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"2\"><span style=\"font-weight: 400;\">Se inicia el proceso de recuperaci\u00f3n de los servicios sobre la regi\u00f3n secundaria. Actualizando el enrutamiento y direcciones de dominio a la nueva regi\u00f3n.<\/span><\/li><\/ul><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Se verifica que el servicio funciona correctamente y con normalidad.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">En alg\u00fan punto, la incidencia en la regi\u00f3n primaria se ve resuelta y los servicios de Azure vuelven a un funcionamiento normal. Por lo tanto se deber\u00e1 restablecer el sistema sobre la regi\u00f3n primaria.<\/span><ul><li style=\"font-weight: 400;\" aria-level=\"2\"><span style=\"font-weight: 400;\">De forma id\u00e9ntica al punto 2.a se deben parar todos los servicios y cargas de trabajo en la regi\u00f3n secundaria.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"2\"><span style=\"font-weight: 400;\">Adem\u00e1s se deben de volver a actualizar el enrutamiento y las direcciones de dominio a la regi\u00f3n primaria.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"2\"><span style=\"font-weight: 400;\">Por \u00faltimo se debe de realizar un backup de los datos generados durante la ca\u00edda de la regi\u00f3n primaria para ser replicados en esta.<\/span><\/li><\/ul><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Finalmente se verifica que el servicio vuelva a funcionar correctamente y con normalidad en la regi\u00f3n primaria.<\/span><\/li><\/ul><p><span style=\"font-weight: 400;\">Una vez nos hacemos una idea general de como ser\u00eda un workflow t\u00edpico de recuperaci\u00f3n activo-pasivo, estudiaremos como podemos aplicarlo dentro de Databricks en nuestros workspaces.<\/span><\/p><h3><span style=\"font-weight: 400;\"><br \/><strong>Disaster Recovery en Azure Databricks<\/strong><\/span><\/h3><p><span style=\"font-weight: 400;\">Databricks como plataforma de Data Analytics, tiene los datos como principal activo. Por ello se deben de definir las estrategias que permitan no solo poder seguir operando los servicios de la plataforma y workflows productivos en la regi\u00f3n de soporte, sino la estrategia que permita generar consistencia en la propia replicaci\u00f3n de los diferentes data sources.<\/span><\/p><p><span style=\"font-weight: 400;\">En la siguiente imagen se especifican a modo de diagrama los diferentes activos que se ver\u00edan involucrados en la replicaci\u00f3n del plano de control o de datos.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0a29dcc elementor-widget elementor-widget-image\" data-id=\"0a29dcc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"1001\" height=\"1024\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image5-1001x1024.png\" class=\"attachment-large size-large wp-image-13389 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image5-1001x1024.png 1001w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image5-293x300.png 293w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image5-768x785.png 768w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image5-1502x1536.png 1502w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image5.png 1955w\" data-sizes=\"(max-width: 1001px) 100vw, 1001px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1001px; --smush-placeholder-aspect-ratio: 1001\/1024;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\"><\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-97349e3 elementor-widget elementor-widget-text-editor\" data-id=\"97349e3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3><strong>Estrategia y herramientas en la sincronizaci\u00f3n.<\/strong><\/h3><p><span style=\"font-weight: 400;\">Una vez realizado un an\u00e1lisis de nuestro sistema, deberemos analizar pieza por pieza como podemos realizar el procedimiento de r\u00e9plica y sincronizaci\u00f3n.<\/span><\/p><p><span style=\"font-weight: 400;\">Existen dos principales estrategias:<\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Un cliente que sincroniza los datos productivos y activos de la regi\u00f3n primaria a la secundaria en un flujo programado.<\/span><\/li><\/ul><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Herramientas de integraci\u00f3n\/despliegue continuo (CI\/CD) para el despliegue de forma paralela de la infraestructura, c\u00f3digo y otros recursos principales del sistema en ambas regiones, de forma que la regi\u00f3n secundaria se encuentre sincronizada con todos los cambios y desarrollos para ser operativa en caso necesario.<\/span><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9be111c elementor-widget elementor-widget-image\" data-id=\"9be111c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"827\" height=\"727\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image7.png\" class=\"attachment-large size-large wp-image-13393 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image7.png 827w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image7-300x264.png 300w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image7-768x675.png 768w\" data-sizes=\"(max-width: 827px) 100vw, 827px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 827px; --smush-placeholder-aspect-ratio: 827\/727;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Esquema de sincronizaci\u00f3n v\u00eda CI\/CD (fuente: Databricks)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1b172ce elementor-widget elementor-widget-text-editor\" data-id=\"1b172ce\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h4><strong>Herramientas<\/strong><\/h4><p><span style=\"font-weight: 400;\">Databricks ofrece en la siguiente tabla un resumen del conjunto de estrategias que se podr\u00edan aplicar seg\u00fan el recurso\/activo involucrado de nuestro workspace.\u00a0<\/span><\/p><p><i><span style=\"font-weight: 400;\">Es importante se\u00f1alar que a d\u00eda de hoy no hay ning\u00fan servicio oficial por parte de Databricks que permita administrar e implementar una pol\u00edtica activa-pasiva de los workspaces en Azure.<\/span><\/i><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fca13f3 eael-dt-th-align-center eael-table-align-center elementor-widget elementor-widget-eael-data-table\" data-id=\"fca13f3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"eael-data-table.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"eael-data-table-wrap\" data-table_id=\"fca13f3\" id=\"eael-data-table-wrapper-fca13f3\" data-custom_responsive=\"false\">\n\t\t\t<table class=\"tablesorter eael-data-table center\" id=\"eael-data-table-fca13f3\">\n\t\t\t    <thead>\n\t\t\t        <tr class=\"table-header\">\n\t\t\t\t\t\t\t\t\t            <th class=\"columna-vacia\" id=\"\" colspan=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"data-table-header-text\"><\/span><\/th>\n\t\t\t        \t\t\t\t            <th class=\"\" id=\"\" colspan=\"3\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"data-table-header-text\">Herramientas de replicaci\u00f3n<\/span><\/th>\n\t\t\t        \t\t\t\t        <\/tr>\n\t\t\t    <\/thead>\n\t\t\t  \t<tbody>\n\t\t\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"columna-blue\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tFEATURE\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"columna-activa\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tSync Client\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"columna-activa\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tCI\/CD\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tC\u00f3digo fuente, notebooks, librer\u00edas\n\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tSincronizaci\u00f3n con la regi\u00f3n secundaria\n\n\n\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t Despliegue en ambas regiones\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tUsuarios y grupos\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tEmpleo SCIM para la sincronizaci\u00f3n\nen ambas regiones\n\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tControl de los metadatos de los usuarios\ny grupos a trav\u00e9s de GIT.\n\n\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tConfiguraci\u00f3n de los pools\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tEmpleo del CLI o API para\nla creaci\u00f3n en la segunda regi\u00f3n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tEmpleo de templates.\nConfigurar la regi\u00f3n secundara\ncon min_idle_instances a 0\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tConfiguraci\u00f3n de los jobs\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tEmpleo del CLI o API para\nla sincronizaci\u00f3n con la segunda regi\u00f3n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tEmpleo de templates.\nConfigurar la regi\u00f3n secundaria\ncon concurrencia a 0\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tACLs\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tMediante la API de Permisos 2.0\nes posible replicar los controles de acceso\nsobre los recursos copiados\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tEmpleo de templates.\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tLibrerias\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tDBFS\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tRepositorio central\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tScripts de inicializaci\u00f3n del cluster\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tReplicar de una regi\u00f3n a otra a trav\u00e9s\ndel almacenamiento en el workspace\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tRepositorio central\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tMetadata\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tIncluir las DDL en el c\u00f3digo fuente.\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tSecretos\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tReplicacion via API o CLI\nen el momento de creaci\u00f3n\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tConfiguraciones del cluster\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tReplicacion via API o CLI\nen el momento de creaci\u00f3n\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tEmpleo de templates en GIT.\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tPermisos de Notebooks, jobs y directorios\n\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tReplicaci\u00f3n mediante la API de Permisos 2.0\n\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tEmpleo de templates en GIT.\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t    <\/tbody>\n\t\t\t<\/table>\n\t\t<\/div>\n\t  \t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0f9628f elementor-widget elementor-widget-text-editor\" data-id=\"0f9628f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3><strong>Implementaci\u00f3n<\/strong><\/h3><p><span style=\"font-weight: 400;\">Una vez, tenemos clara nuestra estrategia deberemos estudiar como podemos implementarla, para ello disponemos un conjunto de herramientas que van desde IaC, librer\u00edas de sincronizaci\u00f3n de data sources y migraci\u00f3n de workspaces. Sin embargo, ninguna de las librer\u00edas de sincronizado\/migraci\u00f3n es oficial y a\u00fan se encuentran en desarrollo.<\/span><span style=\"font-weight: 400;\"><br \/><br \/><\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">M\u00f3dulo Databricks de Terraform <\/span><a href=\"#ref\"><span style=\"font-weight: 400;\">[1]<\/span><\/a><span style=\"font-weight: 400;\">: para replicar la infraestructura, workspaces, metadatos, etc<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Databricks Workspace Migration Tools <\/span><a href=\"#ref\"><span style=\"font-weight: 400;\">[2]<\/span><\/a><span style=\"font-weight: 400;\">: paquete de librer\u00edas para generar un punto de restauraci\u00f3n y migraci\u00f3n de nuestros workspaces en otras regiones e incluso otros proveedores cloud.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Databricks Sync (DBSync) <\/span><a href=\"#ref\"><span style=\"font-weight: 400;\">[3]<\/span><\/a><span style=\"font-weight: 400;\">: especializado en la sincronizaci\u00f3n, creaci\u00f3n de copias de seguridad y\u00a0 restauraci\u00f3n de workspaces.<\/span><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3d5ca3c elementor-widget elementor-widget-heading\" data-id=\"3d5ca3c\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"escalabilidad\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Escalabilidad<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7b243d0 elementor-widget elementor-widget-text-editor\" data-id=\"7b243d0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">En este punto, veremos las diferentes opciones que ofrece Databricks en materia de escalabilidad, debido a que este punto ya ha sido tratado profundamente por nuestros compa\u00f1eros dentro de la entrada <\/span><a href=\"https:\/\/bluetab.org\/es\/databricks-sobre-aws-una-perspectiva-de-arquitectura-parte-2\/\"><span style=\"font-weight: 400;\">Databricks sobre AWS &#8211; Una perspectiva de arquitectura (parte 2)<\/span><\/a><span style=\"font-weight: 400;\">, nos limitaremos a comentar las caracter\u00edsticas equivalentes en Azure.<br \/><br \/><\/span><\/p><h3><strong>Auto Escalado de workers<\/strong><\/h3><p><span style=\"font-weight: 400;\">De la misma forma que en AWS, Databricks ofrece sobre Azure la posibilidad de escalar horizontalmente de una forma din\u00e1mica el n\u00famero de workers dependiendo el m\u00ednimo y m\u00e1ximo que hayamos definido, permitiendo mejorar el tiempo de los trabajos sin sobre asignar recursos y por lo tanto reduciendo el coste global por trabajo en hasta un 30%.<\/span><\/p><p><span style=\"font-weight: 400;\">Por lo general, en la forma tradicional cuando se defin\u00edan las pol\u00edticas de escalado para nuestros clusters se ten\u00edan que establecer una serie de umbrales est\u00e1ticos donde si estos son rebasados se aprovisionan recursos extra, en forma de nodos de c\u00f3mputo de bajo coste y ef\u00edmeros (Spot). En muchos casos el escalado in\/out de estos recursos no es lo suficientemente r\u00e1pido, generando una ralentizaci\u00f3n global del <\/span><i><span style=\"font-weight: 400;\">job <\/span><\/i><span style=\"font-weight: 400;\">y una utilizaci\u00f3n sub\u00f3ptima de los recursos.<\/span><\/p><p><span style=\"font-weight: 400;\">Para ello Databricks propone un\u00a0 nuevo tipo de escalado optimizado [<\/span><a href=\"#ref\"><span style=\"font-weight: 400;\">6<\/span><\/a><span style=\"font-weight: 400;\">], donde a partir de la informaci\u00f3n de los ejecutores es capaz de adaptar r\u00e1pidamente los recursos del trabajo a sus necesidades de una forma r\u00e1pida y eficiente, sin necesidad de esperar a que el trabajo completo termine para comenzar el desescalado.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8707751 elementor-widget elementor-widget-image\" data-id=\"8707751\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"1024\" height=\"247\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image6.png\" class=\"attachment-large size-large wp-image-13391 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image6.png 1024w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image6-300x72.png 300w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image6-768x185.png 768w\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/247;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Auto escalado tradicional: Ejecutores activos vs total de ejecutores (fuente: Databricks)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d1ba954 elementor-widget elementor-widget-image\" data-id=\"d1ba954\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"1024\" height=\"293\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image4.png\" class=\"attachment-large size-large wp-image-13387 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image4.png 1024w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image4-300x86.png 300w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image4-768x220.png 768w\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/293;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Auto escalado optimizado de Databricks: Ejecutores activos vs total de ejecutores (fuente: Databricks)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ce8c917 elementor-widget elementor-widget-text-editor\" data-id=\"ce8c917\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Caracteristicas:<\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Posibilidad de escalado desde el m\u00ednimo al m\u00e1ximo en dos pasos.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Posibilidad de desescalado aun cuando el cluster no est\u00e1 en <\/span><i><span style=\"font-weight: 400;\">idle <\/span><\/i><span style=\"font-weight: 400;\">viendo el <\/span><i><span style=\"font-weight: 400;\">shuffle file<\/span><\/i><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Desescalado en base al porcentaje de nodos trabajando<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">En cluster del tipo <\/span><i><span style=\"font-weight: 400;\">job, <\/span><\/i><span style=\"font-weight: 400;\">el desescalado puede producirse si estos est\u00e1n infrautilizados tras 40 segundos, en <\/span><i><span style=\"font-weight: 400;\">all-purpose<\/span><\/i><span style=\"font-weight: 400;\"> tras 150 segundos.<\/span><i><span style=\"font-weight: 400;\">\u00a0<\/span><\/i><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Posibilidad de configurar la frecuencia de escalado mediante la propiedad <\/span><i><span style=\"font-weight: 400;\">spark.databricks.agressiveWindowDownS<\/span><\/i><\/li><\/ul><h3><span style=\"font-weight: 400;\"><br \/><strong>Pools<\/strong><\/span><\/h3><p><span style=\"font-weight: 400;\">Para reducir al m\u00e1ximo el tiempo de lanzamiento de una nueva instancia, Databricks permite mantener un set de clusters o pool pre-inicializado en estado <\/span><i><span style=\"font-weight: 400;\">idle <\/span><\/i><span style=\"font-weight: 400;\">listo para su empleo en nuestros trabajos o en los procesos de escalado. Si se llega al caso de que todo el pool de instancias se ha consumido, de forma autom\u00e1tica se asignar\u00e1n nuevas instancias al pool.<\/span><\/p><p><span style=\"font-weight: 400;\">De la misma forma al escalado de los clusters, podremos definir un n\u00famero m\u00e1ximo y m\u00ednimo de instancias que el pool podr\u00e1 tener en estado <\/span><i><span style=\"font-weight: 400;\">idle <\/span><\/i><span style=\"font-weight: 400;\">para su posterior asignaci\u00f3n al trabajo demandante y el tiempo que estas pueden permanecer desasignadas hasta su eliminaci\u00f3n.<\/span><\/p><p><span style=\"font-weight: 400;\">Respecto al tipo de instancias asignado al pool, no podr\u00e1n cambiarse, tanto el driver como los workers del trabajo consumir\u00e1n el mismo tipo de instancias.<\/span><\/p><h3><span style=\"font-weight: 400;\"><br \/><strong>Auto escalado del almacenamiento<\/strong><\/span><\/h3><p><span style=\"font-weight: 400;\">Databricks ofrece la posibilidad de asignar un auto escalado en el almacenamiento local en disco del <\/span><i><span style=\"font-weight: 400;\">cluster <\/span><\/i><span style=\"font-weight: 400;\">con el fin de acotar la necesidad de dimensionado de estos.\u00a0<\/span><\/p><p><span style=\"font-weight: 400;\">Databricks monitoriza el espacio libre en el disco de forma que en caso necesario se montar\u00e1 un disco externo sobre \u00e9ste. Es importante se\u00f1alar que estos discos una vez asignados no podr\u00e1n desmontarse hasta que el <\/span><i><span style=\"font-weight: 400;\">cluster <\/span><\/i><span style=\"font-weight: 400;\">no sea eliminado, por ello se recomienda emplearlos en instancias <\/span><i><span style=\"font-weight: 400;\">Spot <\/span><\/i><span style=\"font-weight: 400;\">o que en instancias tengan una pol\u00edtica de auto finalizado<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0ac5542 elementor-widget elementor-widget-heading\" data-id=\"0ac5542\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"seguridad\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Seguridad<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4c169f elementor-widget elementor-widget-text-editor\" data-id=\"b4c169f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3><strong>Encriptaci\u00f3n de datos databricks<\/strong><\/h3><p><span style=\"font-weight: 400;\">Uno de los aspectos m\u00e1s importantes cuando vamos a seleccionar una plataforma para\u00a0 el tratamiento de datos es la seguridad de los mismos. Debe ofrecer mecanismos de encriptaci\u00f3n de datos tanto en los sistemas de almacenamiento, com\u00fanmente conocido como datos en reposo<\/span><span style=\"font-weight: 400;\"> (<\/span><i><span style=\"font-weight: 400;\">at rest<\/span><\/i><span style=\"font-weight: 400;\">), como cuando est\u00e1n en movimiento <\/span><span style=\"font-weight: 400;\">(<\/span><i><span style=\"font-weight: 400;\">in-transit<\/span><\/i><span style=\"font-weight: 400;\">).<\/span><\/p><h4><span style=\"font-weight: 400;\"><br \/><strong>En transito<\/strong><\/span><\/h4><p><span style=\"font-weight: 400;\">Databricks encripta todos los datos que circulan por cada uno de sus diferentes componentes\u00a0 y or\u00edgenes con TLS.\u00a0 Adem\u00e1s de la encriptaci\u00f3n de datos, se encriptan con TLS todas las comunicaciones que se realizan entre el plano de control y el plano de datos, por tanto los comandos, consultas y meta-data viajan tambi\u00e9n encriptados.<\/span><\/p><p><span style=\"font-weight: 400;\">Para plataformas que requieran un nivel alto de protecci\u00f3n, se puede realizar la encriptaci\u00f3n entre los nodos del cluster utilizando la encriptaci\u00f3n RPC de Spark [<\/span><a href=\"#ref\"><span style=\"font-weight: 400;\">7<\/span><\/a><span style=\"font-weight: 400;\">]. Est\u00e1 se realiza con cifrado AES de 128 bits a trav\u00e9s de una conexi\u00f3n TLS 1.2. Est\u00e1 opci\u00f3n solo est\u00e1 disponible con el plan premiun y es necesario establecer los par\u00e1metros de configuraci\u00f3n de Spark en el script de init del cluster o en el global si necesitamos que se aplique a todos los cluster del workspace. Es importante que tengamos en cuenta que la encriptaci\u00f3n entre los nodos del cluster puede suponer una disminuci\u00f3n en el rendimiento de los procesos y dado que la red privada de los nodos suele estar aislada, en la mayor\u00eda de los casos no ser\u00e1 necesario este tipo de encriptaci\u00f3n.<\/span><\/p><h4><span style=\"font-weight: 400;\">\u00a0<br \/><\/span><strong>En reposo<\/strong><\/h4><p><span style=\"font-weight: 400;\">Para el cifrado de los datos en reposo se utiliza SSE [<\/span><a href=\"#ref\"><span style=\"font-weight: 400;\">8<\/span><\/a><span style=\"font-weight: 400;\">] (server-side encryption), cifra <\/span><span style=\"font-weight: 400;\">autom\u00e1ticamente los datos cuando se guardan en el almacenamiento distribuido (blob storage, ADLS y ADLS2).<\/span><\/p><p><span style=\"font-weight: 400;\">Por defecto DBFS est\u00e1 encriptado usando claves administradas por Microsoft pero tambi\u00e9n permite la opci\u00f3n de usar claves administradas por el cliente, com\u00fanmente conocidas como (CMK), permitiendo de este modo utilizar tu propia clave de cifrado para cifrar la cuenta de almacenamiento del DBFS. Adem\u00e1s, tanto si se usa clave administradas como tu propia clave, tambi\u00e9n se ofrece la posibilidad de una capa adicional de cifrado utilizando un algoritmo\/modo de cifrado diferente en la capa de infraestructura utilizando claves de cifrado administradas por la plataforma.<\/span><\/p><p><span style=\"font-weight: 400;\">Para tener un completo cifrado de los datos en reposo, adem\u00e1s del cifrado datos en el almacenamiento distribuido, se puede habilitar la encriptaci\u00f3n de los disco locales de los nodos del cl\u00faster con lo que se permite la encriptaci\u00f3n de los datos temporales que se guardan en las ejecuciones de los procesos. Actualmente est\u00e1 caracter\u00edstica se encuentra en en <\/span><a href=\"https:\/\/docs.microsoft.com\/es-es\/azure\/databricks\/release-notes\/release-types\"><span style=\"font-weight: 400;\">versi\u00f3n <\/span><b>preliminar p\u00fablica<\/b><\/a><span style=\"font-weight: 400;\"> y s\u00f3lo est\u00e1 disponible para la creaci\u00f3n del cluster desde el api REST utilizando la configuraci\u00f3n siguiente:<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b3105fc elementor-widget elementor-widget-elementor-syntax-highlighter\" data-id=\"b3105fc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"elementor-syntax-highlighter.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<pre><code class='language-python'>{&quot;enable_local_disk_encryption&quot;: true} <\/code><\/pre><script>\nif (!document.getElementById('syntaxed-prism')) {\n\tvar my_awesome_script = document.createElement('script');\n\tmy_awesome_script.setAttribute('src','https:\/\/bluetab.co.uk\/wp-content\/plugins\/syntax-highlighter-for-elementor\/assets\/prism2.js');\n\tmy_awesome_script.setAttribute('id','syntaxed-prism');\n\tdocument.body.appendChild(my_awesome_script);\n} else {\n\twindow.Prism && Prism.highlightAll();\n}\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7addd25 elementor-widget elementor-widget-text-editor\" data-id=\"7addd25\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Tambi\u00e9n hay que tener en cuenta que activar esta opci\u00f3n puede suponer cierto impacto en el rendimiento de los procesos.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5e2f59b elementor-widget elementor-widget-image\" data-id=\"5e2f59b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"820\" height=\"709\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image1.png\" class=\"attachment-large size-large wp-image-13381 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image1.png 820w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image1-300x259.png 300w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image1-768x664.png 768w\" data-sizes=\"(max-width: 820px) 100vw, 820px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 820px; --smush-placeholder-aspect-ratio: 820\/709;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\"> Diagrama de Arquitectura Databricks  (fuente: Azure)<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8457818 elementor-widget elementor-widget-heading\" data-id=\"8457818\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"logging\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Logging<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-91292f9 elementor-widget elementor-widget-text-editor\" data-id=\"91292f9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Para el correcto gobierno de una plataforma de ejecuci\u00f3n de datos es necesario disponer de las herramientas necesarias para poder realizar el seguimiento y comprobaci\u00f3n de ejecuci\u00f3n de los <\/span><i><span style=\"font-weight: 400;\">workloads<\/span><\/i><span style=\"font-weight: 400;\">. Databricks integra en su plataforma todos elementos necesarios para realizar el mismo en un entorno de Spark. A continuaci\u00f3n, vamos a resumir las opciones que integra Databricks <\/span><i><span style=\"font-weight: 400;\">out of the box<\/span><\/i><span style=\"font-weight: 400;\"> aunque se pueden realizar monitorizaciones m\u00e1s avanzadas utilizando otras herramientas o servicios.<\/span><\/p><p>\u00a0<\/p><h3><strong>Cluster logs<\/strong><\/h3><p><span style=\"font-weight: 400;\">Para cada uno de los <\/span><i><span style=\"font-weight: 400;\">cluster<\/span><\/i><span style=\"font-weight: 400;\"> o <\/span><i><span style=\"font-weight: 400;\">job cluster<\/span><\/i><span style=\"font-weight: 400;\"> creados en la plataforma podemos consultar de forma visual:<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1aee615 elementor-widget elementor-widget-image\" data-id=\"1aee615\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"929\" height=\"189\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image12.png\" class=\"attachment-large size-large wp-image-13403 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image12.png 929w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image12-300x61.png 300w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image12-768x156.png 768w\" data-sizes=\"(max-width: 929px) 100vw, 929px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 929px; --smush-placeholder-aspect-ratio: 929\/189;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Captura Workspace - Secci\u00f3n Clusters<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c40613a elementor-widget elementor-widget-text-editor\" data-id=\"c40613a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><b>Event log<\/b><span style=\"font-weight: 400;\">:<\/span><span style=\"font-weight: 400;\"> Se muestran todos los eventos relacionados con el ciclo de vida del cluster que han sucedido, como pueden ser, creaci\u00f3n, terminaci\u00f3n, cambios en la configuraci\u00f3n\u2026<\/span><\/p><p><b>Spark UI<\/b><span style=\"font-weight: 400;\">:<\/span><span style=\"font-weight: 400;\"> Permite el acceso a la GUI ofrecida por Spark. Esta GUI es fundamental para poder detectar y solventar los problemas de performance en las aplicaciones de Spark.<\/span><\/p><p><b>Driver Logs<\/b><span style=\"font-weight: 400;\"> : <\/span><span style=\"font-weight: 400;\">Permite ver los logs de ejecuci\u00f3n tanto de la salida est\u00e1ndar , error y\u00a0 log4j. Databricks tambi\u00e9n permite que se realice el volcado de logs en un <\/span><i><span style=\"font-weight: 400;\">filesystem<\/span><\/i><span style=\"font-weight: 400;\"> determinado, para ellos es necesario configurarlo en las opciones avanzadas del cluster o indic\u00e1ndolo en la creaci\u00f3n del cluster si se realiza desde crea desde API o CLI.<br \/><\/span><b><\/b><\/p><p><b>Metrics:<\/b> <span style=\"font-weight: 400;\">Databricks proporciona acceso a Ganglia Metrics para obtener un mayor detalle del rendimiento que est\u00e1 ofreciendo el cluster<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d6d8c34 elementor-widget elementor-widget-image\" data-id=\"d6d8c34\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t<figure class=\"wp-caption\">\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"1024\" height=\"315\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image2-1024x315.png\" class=\"attachment-large size-large wp-image-13383 lazyload\" alt=\"\" data-srcset=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image2-1024x315.png 1024w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image2-300x92.png 300w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image2-768x236.png 768w, https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2022\/03\/image2.png 1458w\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/315;\" \/>\t\t\t\t\t\t\t\t\t\t\t<figcaption class=\"widget-image-caption wp-caption-text\">Captura Workspace - Ganglia Metrics<\/figcaption>\n\t\t\t\t\t\t\t\t\t\t<\/figure>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fc2b23f elementor-widget elementor-widget-text-editor\" data-id=\"fc2b23f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3><span style=\"font-weight: 400;\"><strong>Registro de diagn\u00f3stico en Azure Databricks<\/strong>\u00a0<\/span><\/h3><p><span style=\"font-weight: 400;\">Azure Databricks nos ofrece la posibilidad de descargar los registros de las actividades realizadas por los usuarios a trav\u00e9s del registro de diagn\u00f3stico [<\/span><a href=\"#ref\"><span style=\"font-weight: 400;\">9<\/span><\/a><span style=\"font-weight: 400;\">]. Activando esta opci\u00f3n se enviar\u00e1n los registros de la actividad de usuario a un destino seleccionado, Azure tiene disponibles 3 opciones para el env\u00edo de los registros: Cuenta de Almacenamiento, Event y Log Analytics.<\/span><\/p><p><span style=\"font-weight: 400;\">Estos son los servicios que se pueden seleccionar para obtener registros de diagn\u00f3stico<\/span><span style=\"font-weight: 400;\">.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e466bcd eael-dt-th-align-center eael-table-align-center elementor-widget elementor-widget-eael-data-table\" data-id=\"e466bcd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"eael-data-table.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"eael-data-table-wrap\" data-table_id=\"e466bcd\" id=\"eael-data-table-wrapper-e466bcd\" data-custom_responsive=\"false\">\n\t\t\t<table class=\"tablesorter eael-data-table center\" id=\"eael-data-table-e466bcd\">\n\t\t\t    <thead>\n\t\t\t        <tr class=\"table-header\">\n\t\t\t\t\t\t\t\t\t            <th class=\"\" id=\"\" colspan=\"3\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"data-table-header-text\">SERVICIOS DISPONIBLES PARA DIAGN\u00d3STICO<\/span><\/th>\n\t\t\t        \t\t\t\t        <\/tr>\n\t\t\t    <\/thead>\n\t\t\t  \t<tbody>\n\t\t\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tDBFS\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tsqlanalytics\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tmodelRegistry\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tclusters\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tgenie\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\trepos\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\taccounts\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tglobalInitScripts\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tunityCatalog\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tjobs\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tiamRole\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tinstancePools\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tnotebook\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tmlflowExperiment\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tdeltaPipelines\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tssh\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tfeatureStore\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tsqlPermissions\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tworkspace\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tRemoteHistoryService\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tdatabrickssql\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tsecrets\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tmlflowAcledArtifact\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t    <\/tbody>\n\t\t\t<\/table>\n\t\t<\/div>\n\t  \t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-92332f7 elementor-widget elementor-widget-text-editor\" data-id=\"92332f7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">La activaci\u00f3n se puede realizar desde Azure Portal, API REST, CLI, \u00f3 powershell. Los registros est\u00e1n disponibles en un plazo de 15 minutos despu\u00e9s de la activaci\u00f3n.<\/span><\/p><p><span style=\"font-weight: 400;\">Este ser\u00eda el esquema de un registro de diagn\u00f3stico de salida<\/span><b>\u00a0<\/b><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b1714 eael-dt-th-align-center eael-table-align-center elementor-widget elementor-widget-eael-data-table\" data-id=\"30b1714\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"eael-data-table.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"eael-data-table-wrap\" data-table_id=\"30b1714\" id=\"eael-data-table-wrapper-30b1714\" data-custom_responsive=\"false\">\n\t\t\t<table class=\"tablesorter eael-data-table center\" id=\"eael-data-table-30b1714\">\n\t\t\t    <thead>\n\t\t\t        <tr class=\"table-header\">\n\t\t\t\t\t\t\t\t\t            <th class=\"\" id=\"\" colspan=\"1\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"data-table-header-text\">Campo<\/span><\/th>\n\t\t\t        \t\t\t\t            <th class=\"\" id=\"\" colspan=\"3\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"data-table-header-text\">Descripci\u00f3n<\/span><\/th>\n\t\t\t        \t\t\t\t        <\/tr>\n\t\t\t    <\/thead>\n\t\t\t  \t<tbody>\n\t\t\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\toperationversion\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"2\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tVersi\u00f3n del esquema del formato del registro de diagn\u00f3stico.\n\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\ttime\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"2\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tMarca de tiempo UTC de la acci\u00f3n.\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tproperties.sourceIPAddress\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tDirecci\u00f3n IP de la solicitud de origen.\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tproperties.userAgent\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tExplorador o cliente de API usado para realizar la solicitud.\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tproperties.sessionId\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tIdentificador de sesi\u00f3n de la acci\u00f3n.\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tidentities\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<p>Informaci\u00f3n sobre el usuario que realiza las solicitudes:<br \/>* * : direcci\u00f3n de correo electr\u00f3nico del usuario.<\/p>\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tcategory\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tServicio que registr\u00f3 la solicitud.\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\toperationName\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tLa acci\u00f3n, como el inicio de sesi\u00f3n, el cierre de sesi\u00f3n, la lectura, la escritura, etc.\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tproperties.requestId\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tIdentificador de solicitud \u00fanico.\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tproperties.requestParams\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400\">Pares clave-valor de par\u00e1metro usados en el evento.<\/span><\/p><p><span style=\"font-weight: 400\">El requestParams campo est\u00e1 sujeto a truncamiento. Si el tama\u00f1o de su representaci\u00f3n JSON supera los 100 KB, los valores se truncan &#8230; truncated y la cadena se anexa a las entradas truncadas. En raras ocasiones, cuando un mapa truncado sigue siendo mayor que 100 KB, TRUNCATED en su lugar hay una sola clave con un valor vac\u00edo.<\/span><\/p>\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tproperties.response\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tRespuesta a la solicitud:\n\n* * : mensaje de error si se ha producido un error.\n* * : resultado de la solicitud.\n* * : c\u00f3digo de estado HTTP que indica si la solicitud se realiza correctamente o no.\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tproperties.logId\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \t\t\t\t\t\t\t\t\t\t\t<td colspan=\"\" rowspan=\"\" class=\"\" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"td-content-wrapper\"><div class=\"td-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\tIdentificador \u00fanico de los mensa\njes de registro.\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/td>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/tr>\n\t\t\t        \t\t\t    <\/tbody>\n\t\t\t<\/table>\n\t\t<\/div>\n\t  \t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5c07633 elementor-widget elementor-widget-text-editor\" data-id=\"5c07633\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Tabla Esquema Registro Salida (fuente: <\/span><span style=\"font-weight: 400;\">Azure<\/span><span style=\"font-weight: 400;\">)<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-047b799 elementor-widget elementor-widget-text-editor\" data-id=\"047b799\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Para la explotaci\u00f3n de los registros, si se ha seleccionado la opci\u00f3n de Logs Analytics, podremos explotarlos de forma sencilla utilizando Azure Monitor. Pero si lo que se desea es explotar estos registros con cualquier otra plataforma, servicio o herramienta es posible tomando estos registros JSON del lugar del envio seleccionando en la activaci\u00f3n.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30687e6 elementor-widget elementor-widget-spacer\" data-id=\"30687e6\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"ref\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7b2b8ef elementor-widget elementor-widget-heading\" data-id=\"7b2b8ef\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Referencias<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b2cda70 elementor-widget elementor-widget-text-editor\" data-id=\"b2cda70\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">[1] Databricks Terraform Provider. [<\/span><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/databricks\/dev-tools\/terraform\/\"><span style=\"font-weight: 400;\">link<\/span><\/a><span style=\"font-weight: 400;\">]<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-861b035 elementor-widget elementor-widget-text-editor\" data-id=\"861b035\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"dos\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">[2] Databricks Workspace Migration Tools. [<\/span><a href=\"https:\/\/github.com\/databrickslabs\/migrate\"><span style=\"font-weight: 400;\">link<\/span><\/a><span style=\"font-weight: 400;\">]<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d5ede87 elementor-widget elementor-widget-text-editor\" data-id=\"d5ede87\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"tres\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">[3] Databricks Sync. [<\/span><a href=\"https:\/\/github.com\/databrickslabs\/databricks-sync\"><span style=\"font-weight: 400;\">link<\/span><\/a><span style=\"font-weight: 400;\">]<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cb918fe elementor-widget elementor-widget-text-editor\" data-id=\"cb918fe\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"cuatro\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">[4] Databricks Disaster Recovery [<\/span><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/databricks\/administration-guide\/disaster-recovery\"><span style=\"font-weight: 400;\">link<\/span><\/a><span style=\"font-weight: 400;\">]<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-755de7c elementor-widget elementor-widget-text-editor\" data-id=\"755de7c\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"cinco\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">[5] Cifrado entre nodos de trabajo[<\/span><a href=\"https:\/\/docs.microsoft.com\/es-es\/azure\/databricks\/security\/encryption\/encrypt-otw\"><span style=\"font-weight: 400;\">link<\/span><\/a><span style=\"font-weight: 400;\">]<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0762789 elementor-widget elementor-widget-text-editor\" data-id=\"0762789\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">[6] Optimized AutoScaling [<\/span><a href=\"https:\/\/databricks.com\/blog\/2018\/05\/02\/introducing-databricks-optimized-auto-scaling.html\"><span style=\"font-weight: 400;\">link<\/span><\/a><span style=\"font-weight: 400;\">] <\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fa64f7e elementor-widget elementor-widget-text-editor\" data-id=\"fa64f7e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">[7] Spark Security [<\/span><a href=\"https:\/\/spark.apache.org\/docs\/latest\/security.html\"><span style=\"font-weight: 400;\">link<\/span><\/a><span style=\"font-weight: 400;\">] <\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-62382dc elementor-widget elementor-widget-text-editor\" data-id=\"62382dc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">[8] Azure encriptaci\u00f3n discos [<\/span><a href=\"https:\/\/docs.microsoft.com\/es-es\/azure\/virtual-machines\/disk-encryption\"><span style=\"font-weight: 400;\">link<\/span><\/a><span style=\"font-weight: 400;\">]<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f18c364 elementor-widget elementor-widget-text-editor\" data-id=\"f18c364\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">[9] Registro de diagnostico [<\/span><a href=\"https:\/\/docs.microsoft.com\/es-es\/azure\/databricks\/administration-guide\/account-settings\/azure-diagnostic-logs\"><span style=\"font-weight: 400;\">link<\/span><\/a><span style=\"font-weight: 400;\">]<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-65c3381 elementor-widget elementor-widget-spacer\" data-id=\"65c3381\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-f668113 nav-column elementor-hidden-phone\" data-id=\"f668113\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-0508221 nav-post elementor-widget elementor-widget-text-editor\" data-id=\"0508221\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h6><strong>Navegaci\u00f3n<\/strong><\/h6><p><a href=\"#glosario\">Glosario<\/a><\/p><p><a href=\"#disaster\">Disaster Recovery<\/a><\/p><p><a href=\"#escalabilidad\">Escalabilidad<\/a><\/p><p><a href=\"#seguridad\">Seguridad<\/a><\/p><p><a href=\"#logging\">Logging<\/a><\/p><p><a href=\"#ref\">Referencias<\/a><\/p><p><a href=\"#autores\">Autores<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-678b0de elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"678b0de\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2079496\" data-id=\"2079496\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-7f4ef67 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"7f4ef67\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-2f9622e\" data-id=\"2f9622e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4848263 elementor-widget elementor-widget-heading\" data-id=\"4848263\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h5 class=\"elementor-heading-title elementor-size-default\">Do you want to know more about what we offer and to see other success stories?<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-624ed00 elementor-align-center elementor-widget elementor-widget-button\" data-id=\"624ed00\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"\/es\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">DISCOVER BLUETAB<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-766b4cb elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"766b4cb\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-4b27d8b\" data-id=\"4b27d8b\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-6823bca\" data-id=\"6823bca\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-bfd7993 elementor-share-buttons--view-icon elementor-share-buttons--skin-minimal elementor-share-buttons--shape-circle elementor-grid-0 elementor-share-buttons--color-official elementor-widget elementor-widget-share-buttons\" data-id=\"bfd7993\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"share-buttons.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-grid\" role=\"list\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-grid-item\" role=\"listitem\">\n\t\t\t\t\t\t<div class=\"elementor-share-btn elementor-share-btn_twitter\" role=\"button\" tabindex=\"0\" aria-label=\"Share on twitter\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-share-btn__icon\">\n\t\t\t\t\t\t\t\t<i class=\"fab fa-twitter\" aria-hidden=\"true\"><\/i>\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-grid-item\" role=\"listitem\">\n\t\t\t\t\t\t<div class=\"elementor-share-btn elementor-share-btn_linkedin\" role=\"button\" tabindex=\"0\" aria-label=\"Share on linkedin\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-share-btn__icon\">\n\t\t\t\t\t\t\t\t<i class=\"fab fa-linkedin\" aria-hidden=\"true\"><\/i>\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-e4b4b66 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"e4b4b66\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-ed31356\" data-id=\"ed31356\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1e5dd22 elementor-position-left elementor-vertical-align-middle elementor-widget elementor-widget-image-box\" data-id=\"1e5dd22\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-image-box-wrapper\"><figure class=\"elementor-image-box-img\"><a href=\"https:\/\/www.linkedin.com\/in\/francisco-linaje-024499175\/\" target=\"_blank\" tabindex=\"-1\"><img decoding=\"async\" width=\"150\" height=\"150\" data-src=\"https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail wp-image-12383 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco-150x150.jpg 150w, https:\/\/bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco-300x300.jpg 300w, https:\/\/bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco-75x75.jpg 75w, https:\/\/bluetab.co.uk\/wp-content\/uploads\/2021\/10\/Francisco.jpg 384w\" data-sizes=\"(max-width: 150px) 100vw, 150px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 150px; --smush-placeholder-aspect-ratio: 150\/150;\" \/><\/a><\/figure><div class=\"elementor-image-box-content\"><h4 class=\"elementor-image-box-title\"><a href=\"https:\/\/www.linkedin.com\/in\/francisco-linaje-024499175\/\" target=\"_blank\">Francisco Linaje<\/a><\/h4><p class=\"elementor-image-box-description\">AWS Solutions Architect<\/p><\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-c2f2ba6\" data-id=\"c2f2ba6\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-bfdb6ac elementor-position-left elementor-vertical-align-middle elementor-widget elementor-widget-image-box\" data-id=\"bfdb6ac\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-image-box-wrapper\"><figure class=\"elementor-image-box-img\"><a href=\"https:\/\/www.linkedin.com\/in\/gabriel-gallardo-ruiz-9042a0212\/\" target=\"_blank\" tabindex=\"-1\"><img decoding=\"async\" data-src=\"https:\/\/bluetab.net\/wp-content\/uploads\/2020\/10\/avatarP-bluetab.jpg.png\" title=\"\" alt=\"\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" \/><\/a><\/figure><div class=\"elementor-image-box-content\"><h4 class=\"elementor-image-box-title\"><a href=\"https:\/\/www.linkedin.com\/in\/gabriel-gallardo-ruiz-9042a0212\/\" target=\"_blank\">Gabriel Gallardo Ruiz<\/a><\/h4><p class=\"elementor-image-box-description\">Senior Data Architect<\/p><\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<div class=\"elementor-element elementor-element-3ad0cc8 elementor-widget elementor-widget-spacer\" data-id=\"3ad0cc8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-21c1e68 elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"21c1e68\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-6428c03\" data-id=\"6428c03\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f177896 elementor-widget elementor-widget-text-editor\" data-id=\"f177896\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><b>SOLUTIONS<\/b>, WE ARE EXPERTS<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-17d1df0 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"17d1df0\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-inner-column elementor-element elementor-element-e132030\" data-id=\"e132030\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b1551a8 elementor-cta--skin-cover elementor-cta--valign-middle elementor-animated-content elementor-bg-transform elementor-bg-transform-zoom-in elementor-widget elementor-widget-call-to-action\" data-id=\"b1551a8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"call-to-action.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<a class=\"elementor-cta\" href=\"\/es\/soluciones\/data-strategy\/\">\n\t\t\t\t\t<div class=\"elementor-cta__bg-wrapper\">\n\t\t\t\t<div class=\"elementor-cta__bg elementor-bg lazyload\" style=\"background-image:inherit;\" role=\"img\" aria-label=\"strategy-opt\" data-bg-image=\"url(https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2020\/10\/strategy-opt.jpg)\"><\/div>\n\t\t\t\t<div class=\"elementor-cta__bg-overlay\"><\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-cta__content\">\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<h5 class=\"elementor-cta__title elementor-cta__content-item elementor-content-item elementor-animated-item--grow\">\n\t\t\t\t\t\tDATA STRATEGY\t\t\t\t\t<\/h5>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-inner-column elementor-element elementor-element-7e7d3e5\" data-id=\"7e7d3e5\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9acb40a elementor-cta--skin-cover elementor-cta--valign-middle elementor-animated-content elementor-bg-transform elementor-bg-transform-zoom-in elementor-widget elementor-widget-call-to-action\" data-id=\"9acb40a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"call-to-action.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<a class=\"elementor-cta\" href=\"\/es\/soluciones\/data-fabric\/\">\n\t\t\t\t\t<div class=\"elementor-cta__bg-wrapper\">\n\t\t\t\t<div class=\"elementor-cta__bg elementor-bg lazyload\" style=\"background-image:inherit;\" role=\"img\" aria-label=\"fabric-opt\" data-bg-image=\"url(https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2020\/10\/fabric-opt.jpg)\"><\/div>\n\t\t\t\t<div class=\"elementor-cta__bg-overlay\"><\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-cta__content\">\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<h5 class=\"elementor-cta__title elementor-cta__content-item elementor-content-item elementor-animated-item--grow\">\n\t\t\t\t\t\tDATA FABRIC\t\t\t\t\t<\/h5>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-inner-column elementor-element elementor-element-fa6e8a3\" data-id=\"fa6e8a3\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5e27907 elementor-cta--skin-cover elementor-cta--valign-middle elementor-animated-content elementor-bg-transform elementor-bg-transform-zoom-in elementor-widget elementor-widget-call-to-action\" data-id=\"5e27907\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"call-to-action.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<a class=\"elementor-cta\" href=\"\/es\/soluciones\/augmented-analytics\/\">\n\t\t\t\t\t<div class=\"elementor-cta__bg-wrapper\">\n\t\t\t\t<div class=\"elementor-cta__bg elementor-bg lazyload\" style=\"background-image:inherit;\" role=\"img\" aria-label=\"AUGMENTED-ANALYTICS-opt\" data-bg-image=\"url(https:\/\/www.bluetab.co.uk\/wp-content\/uploads\/2020\/10\/AUGMENTED-ANALYTICS-opt.jpg)\"><\/div>\n\t\t\t\t<div class=\"elementor-cta__bg-overlay\"><\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-cta__content\">\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<h5 class=\"elementor-cta__title elementor-cta__content-item elementor-content-item elementor-animated-item--grow\">\n\t\t\t\t\t\tAUGMENTED ANALYTICS\t\t\t\t\t<\/h5>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-f124caa\" data-id=\"f124caa\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-dd8766e elementor-widget elementor-widget-text-editor\" data-id=\"dd8766e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>You may be interested in<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Databricks sobre Azure &#8211; Una perspectiva de arquitectura (parte 2) Compartir en twitter Compartir en linkedin Francisco Linaje AWS Solutions Architect Gabriel Gallardo Ruiz Senior Data Architect En esta segunda entrega nos centraremos en analizar los diferentes servicios que ofrece Databricks para asegurar el escalado de nuestros servicios y la recuperaci\u00f3n ante fallas del sistema, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":17836,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"elementor_header_footer","format":"standard","meta":{"inline_featured_image":false,"_uag_custom_page_level_css":"","_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"content-sidebar","footnotes":""},"categories":[21,19,632,668,633],"tags":[],"class_list":{"0":"post-13501","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-blog-es","8":"category-blog","9":"category-destacado","10":"category-practices-en","11":"category-tech-en","12":"entry"},"uagb_featured_image_src":{"full":["https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4.png",1200,600,false],"thumbnail":["https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-150x150.png",150,150,true],"medium":["https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-300x150.png",300,150,true],"medium_large":["https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-768x384.png",768,384,true],"large":["https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-1024x512.png",1024,512,true],"1536x1536":["https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4.png",1200,600,false],"2048x2048":["https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4.png",1200,600,false],"sidebar-featured":["https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-75x75.png",75,75,true],"genesis-singular-images":["https:\/\/bluetab.co.uk\/wp-content\/uploads\/2022\/03\/4-702x526.png",702,526,true]},"uagb_author_info":{"display_name":"Bluetab","author_link":"https:\/\/bluetab.co.uk\/en\/author\/user\/"},"uagb_comment_info":0,"uagb_excerpt":"Databricks sobre Azure &#8211; Una perspectiva de arquitectura (parte 2) Compartir en twitter Compartir en linkedin Francisco Linaje AWS Solutions Architect Gabriel Gallardo Ruiz Senior Data Architect En esta segunda entrega nos centraremos en analizar los diferentes servicios que ofrece Databricks para asegurar el escalado de nuestros servicios y la recuperaci\u00f3n ante fallas del sistema,&hellip;","_links":{"self":[{"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/posts\/13501","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/comments?post=13501"}],"version-history":[{"count":9,"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/posts\/13501\/revisions"}],"predecessor-version":[{"id":16036,"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/posts\/13501\/revisions\/16036"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/media\/17836"}],"wp:attachment":[{"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/media?parent=13501"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/categories?post=13501"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bluetab.co.uk\/en\/wp-json\/wp\/v2\/tags?post=13501"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}