{"id":20303,"date":"2025-03-17T10:53:26","date_gmt":"2025-03-17T10:53:26","guid":{"rendered":"https:\/\/beta.bluetab.net\/?p=20303"},"modified":"2025-03-17T12:49:34","modified_gmt":"2025-03-17T12:49:34","slug":"domina-los-costos-en-la-nube-optimizacion-de-gcs-y-bigquery-en-google-cloud","status":"publish","type":"post","link":"https:\/\/bluetab.org\/es\/domina-los-costos-en-la-nube-optimizacion-de-gcs-y-bigquery-en-google-cloud\/","title":{"rendered":"Domina los Costos en la Nube: Optimizaci\u00f3n de GCS y BigQuery en Google Cloud"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"20303\" class=\"elementor elementor-20303\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-3e94256 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"3e94256\" data-element_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-0de3e5c\" data-id=\"0de3e5c\" data-element_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-41a61d0 elementor-widget elementor-widget-heading\" data-id=\"41a61d0\" data-element_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\">Domina los Costos en la Nube: Optimizaci\u00f3n de GCS y BigQuery en Google Cloud<\/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-093409d elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"093409d\" data-element_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-8efe5b0\" data-id=\"8efe5b0\" data-element_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-bb13d8b elementor-position-left elementor-vertical-align-middle elementor-widget elementor-widget-image-box\" data-id=\"bb13d8b\" data-element_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\/juli%C3%A1n-felipe-parra-tunjano-472a9b23b\/\" target=\"_blank\" tabindex=\"-1\"><img decoding=\"async\" width=\"150\" height=\"150\" data-src=\"https:\/\/www.bluetab.com\/wp-content\/uploads\/2025\/03\/1699636036771-150x150.jpeg\" class=\"attachment-thumbnail size-thumbnail wp-image-20335 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771-150x150.jpeg 150w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771-300x300.jpeg 300w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771-768x768.jpeg 768w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771-75x75.jpeg 75w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771.jpeg 800w\" 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\/juli%C3%A1n-felipe-parra-tunjano-472a9b23b\/\" target=\"_blank\">Juli\u00e1n Felipe Parra<\/a><\/h4><p class=\"elementor-image-box-description\">Technical Specialist <\/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-1e0a04a\" data-id=\"1e0a04a\" data-element_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-a4f7a63 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=\"a4f7a63\" data-element_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=\"Compartir en 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=\"Compartir en 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-48f667b elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"48f667b\" data-element_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-inner-column elementor-element elementor-element-73dfdc5\" data-id=\"73dfdc5\" data-element_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-274ea03 elementor-widget elementor-widget-theme-post-featured-image elementor-widget-image\" data-id=\"274ea03\" data-element_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.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-1024x512.png\" class=\"attachment-large size-large wp-image-20340\" alt=\"\" srcset=\"https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-1024x512.png 1024w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-300x150.png 300w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-768x384.png 768w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3.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-8a90987 elementor-widget elementor-widget-text-editor\" data-id=\"8a90987\" data-element_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>Introducci\u00f3n<\/strong><\/h3><p>En muchas ocasiones, los costos en la nube pueden dispararse debido a una configuraci\u00f3n inadecuada o a la falta de conocimiento sobre c\u00f3mo aprovechar al m\u00e1ximo los servicios disponibles. En el caso de Google Cloud Platform (GCP), los servicios m\u00e1s utilizados para almacenamiento son Google Cloud Storage (GCS) y BigQuery. Sin embargo, sin un enfoque adecuado en su configuraci\u00f3n y administraci\u00f3n, pueden generar gastos innecesarios.<\/p><p>El objetivo de este art\u00edculo es proporcionar un conjunto de recomendaciones para optimizar el uso de estos servicios, enfoc\u00e1ndonos en c\u00f3mo configurar correctamente los buckets de GCS y las tablas de BigQuery, asegur\u00e1ndonos de que cada servicio est\u00e9 alineado con las necesidades espec\u00edficas de nuestra implementaci\u00f3n. A lo largo del art\u00edculo, exploraremos las mejores estrategias para <strong>gestionar el ciclo de vida de los datos<\/strong>, decidir <strong>cu\u00e1ndo activar el versionado<\/strong>, c\u00f3mo organizar la <strong>estructura de almacenamiento en funci\u00f3n del uso<\/strong> o tipolog\u00eda de los datos y qu\u00e9 <strong>aspectos t\u00e9cnicos deben considerarse para mantener un control eficiente de los costos<\/strong>.<\/p><p>Adem\u00e1s, vamos a abordar un conjunto de preguntas clave que debemos plantearnos al configurar estos servicios. Responder estas preguntas nos ayudar\u00e1 a tomar decisiones m\u00e1s informadas y evitar sobrecostos innecesarios.<\/p><p>Tambi\u00e9n veremos c\u00f3mo, utilizando las APIs de Google, podremos revisar los metadatos actuales de nuestros recursos, permiti\u00e9ndonos auditar y mejorar la configuraci\u00f3n de nuestros entornos de almacenamiento de forma sencilla y efectiva.<\/p><h3><strong><br \/>Recomendaciones<\/strong><\/h3><h4><strong><span style=\"font-size: 27px;\">Clase de almacenamiento GCS<\/span><\/strong><\/h4><p>Utiliza clases de almacenamiento como Standard, Nearline, Coldline, y Archive seg\u00fan la frecuencia de acceso a los datos. Por ejemplo, si los datos no ser\u00e1n accedidos en los pr\u00f3ximos 30 d\u00edas, podr\u00edas moverlos a Nearline o Coldline para optimizar los costos.<\/p><h3><strong>Ciclo de vida de los objetos en GCS<\/strong><\/h3><p>Configura pol\u00edticas de ciclo de vida para mover, eliminar o archivar objetos autom\u00e1ticamente bas\u00e1ndote en la antiguedad de los mismos. Esto ayuda a reducir el costo de almacenamiento sin intervenci\u00f3n manual.<\/p><h3><strong>Versionado en GCS<\/strong><\/h3><p>Habilita el versionado solo cuando sea necesario. Si los datos cambian frecuentemente o si necesitas poder recuperar versiones anteriores de un archivo, el versionado es \u00fatil. Sin embargo, aseg\u00farate de gestionar las versiones antiguas para no generar costos innecesarios por almacenamiento duplicado.<\/p><h3><strong>Buenas pr\u00e1cticas BigQuery<\/strong><\/h3><h5><strong>Particionamiento<\/strong><\/h5><p>El particionamiento es una t\u00e9cnica que divide las tablas en segmentos m\u00e1s peque\u00f1os y manejables seg\u00fan una columna espec\u00edfica, como la fecha. En BigQuery, el particionamiento por fecha es com\u00fan, ya que permite reducir la cantidad de datos escaneados durante las consultas. Al particionar las tablas, se optimizan las consultas al enfocarse solo en los segmentos de datos relevantes, lo que mejora el rendimiento y reduce los costos asociados con el procesamiento de grandes vol\u00famenes de datos.<\/p><h4><strong><br \/>Clustering<\/strong><\/h4><p>El clustering organiza los datos dentro de una tabla seg\u00fan una o m\u00e1s columnas de forma que los registros con valores similares se almacenan cerca unos de otros. Esta t\u00e9cnica es \u00fatil para mejorar la eficiencia de las consultas que filtran o agrupan por las columnas seleccionadas para el clustering. Al usar clustering junto con particionamiento, se puede mejorar a\u00fan m\u00e1s el rendimiento y reducir los costos de las consultas, ya que BigQuery puede leer menos datos y realizar b\u00fasquedas m\u00e1s r\u00e1pidas sobre grandes conjuntos de datos.<\/p><h4><strong><br \/>Antipatrones<\/strong><\/h4><p>Aunque el particionamiento y el clustering son poderosas herramientas para optimizar el rendimiento y reducir costos, tambi\u00e9n existen varios antipatrones que debes evitar en BigQuery. Un antipatr\u00f3n com\u00fan es no dise\u00f1ar el esquema de particionamiento y clustering en funci\u00f3n de c\u00f3mo se realizan las consultas. Por ejemplo, particionar por una columna que no se usa frecuentemente en los filtros de las consultas puede resultar en un uso ineficiente del espacio y aumentar los costos de procesamiento. Otro antipatr\u00f3n es tener un n\u00famero excesivo de columnas con clustering, lo que puede llevar a una sobrecarga de administraci\u00f3n y a tiempos de consulta m\u00e1s lentos.<\/p><p>Adem\u00e1s, un error frecuente es realizar consultas sin un uso adecuado de las funciones de agregaci\u00f3n o sin aplicar filtros eficientes, lo que puede provocar que se escaneen grandes vol\u00famenes de datos innecesarios, aumentando los costos. Un antipatr\u00f3n muy importante es el uso de SELECT *, que es com\u00fan en algunas consultas pero puede ser extremadamente costoso en BigQuery. Esto se debe a que BigQuery es un sistema de bases de datos columnar, lo que significa que almacena los datos por columnas, no por filas. Al usar SELECT *, est\u00e1s solicitando todos los datos de todas las columnas, lo que puede resultar en una gran cantidad de datos escaneados innecesariamente, aumentando los costos de la consulta y afectando el rendimiento. En su lugar, se recomienda seleccionar solo las columnas necesarias para la consulta, optimizando tanto el rendimiento como los costos.<\/p><p>Otro antipatr\u00f3n es la sobrecarga de las consultas con un n\u00famero elevado de uniones o subconsultas complejas, lo que puede impactar negativamente el rendimiento.<\/p><h3><strong><br \/>Multirregi\u00f3n en GCS y BigQuery<\/strong><\/h3><p>Google Cloud Storage (GCS) y BigQuery ofrecen configuraciones multirregi\u00f3n que permiten distribuir datos y consultas a trav\u00e9s de m\u00faltiples ubicaciones geogr\u00e1ficas, lo que puede proporcionar ventajas significativas en t\u00e9rminos de disponibilidad y desempe\u00f1o. Sin embargo, es fundamental comprender las ventajas y desventajas que tienen estas configuraciones para tomar decisiones informadas al dise\u00f1ar arquitecturas.<\/p><h4><strong><br \/>Google Cloud Storage (GCS)<\/strong><\/h4><p>Ventajas:<\/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-677d02c elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"677d02c\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Alta disponibilidad y durabilidad: Los datos se replican autom\u00e1ticamente entre diferentes regiones dentro del continente seleccionado. Esto asegura que, en caso de un fallo en una regi\u00f3n espec\u00edfica, el acceso a los datos no se vea afectado.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Optimizaci\u00f3n del acceso global: Los usuarios y servicios distribuidos en diferentes partes del mundo pueden acceder a los datos de manera m\u00e1s eficiente, aprovechando la proximidad geogr\u00e1fica.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Facilidad de gesti\u00f3n: Al elegir una configuraci\u00f3n multirregi\u00f3n, no es necesario gestionar manualmente la replicaci\u00f3n entre regiones. Google Cloud maneja autom\u00e1ticamente este proceso.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\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-ece403f elementor-widget elementor-widget-text-editor\" data-id=\"ece403f\" data-element_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>Desventajas:<\/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-542ee28 elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"542ee28\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Costo m\u00e1s elevado: Al elegir una ubicaci\u00f3n multirregi\u00f3n, los costos de almacenamiento pueden aumentar, ya que los datos se replican en varias ubicaciones. Este costo adicional debe ser evaluado en funci\u00f3n de los requisitos de disponibilidad.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Latencia adicional: Si bien el acceso global puede beneficiarse de la proximidad, tambi\u00e9n se debe considerar que el tr\u00e1fico interregional puede generar latencias, especialmente si se usan servicios fuera de la regi\u00f3n multirregi\u00f3n.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\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-d2c4f33 elementor-widget elementor-widget-text-editor\" data-id=\"d2c4f33\" data-element_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>Utiliza ubicaciones multirregi\u00f3n cuando la alta disponibilidad y la resiliencia sean esenciales para tu aplicaci\u00f3n. Por ejemplo, aplicaciones cr\u00edticas que deben estar siempre disponibles, incluso durante desastres regionales.<\/p><p>Si los costos son una preocupaci\u00f3n, eval\u00faa si realmente necesitas una configuraci\u00f3n multirregi\u00f3n o si una ubicaci\u00f3n \u00fanica o una configuraci\u00f3n regional puede ser suficiente para tus necesidades.<\/p><p><strong><br \/>BigQuery <\/strong><\/p><p>Ventajas:<\/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-59eff69 elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"59eff69\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Desempe\u00f1o optimizado para consultas globales: Cuando se ejecutan consultas en conjuntos de datos almacenados en una configuraci\u00f3n multirregi\u00f3n, BigQuery puede optimizar la distribuci\u00f3n de la carga de trabajo, ejecutando partes de las consultas cerca de los datos para reducir la latencia.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Alta disponibilidad de datos: Al igual que con GCS, los datos almacenados en BigQuery en una ubicaci\u00f3n multirregi\u00f3n se replican autom\u00e1ticamente entre varias regiones, garantizando la durabilidad y disponibilidad incluso en situaciones de fallos regionales.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Reducci\u00f3n de la latencia para usuarios globales: Las consultas pueden ejecutarse m\u00e1s r\u00e1pidamente si los datos est\u00e1n cerca de la ubicaci\u00f3n de los usuarios finales, mejorando el tiempo de respuesta en escenarios globales.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\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-e3faaec elementor-widget elementor-widget-text-editor\" data-id=\"e3faaec\" data-element_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>Desventajas:<\/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-b7ce7ba elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"b7ce7ba\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Costo por consultas interregionales: Aunque BigQuery maneja el procesamiento de manera eficiente, las consultas que abarcan m\u00faltiples regiones pueden generar costos adicionales, ya que se incurre en tarifas de transferencia de datos entre regiones.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Posible complejidad en la gesti\u00f3n de datos: Al almacenar datos en una configuraci\u00f3n multirregi\u00f3n, debes estar al tanto de las pol\u00edticas de acceso y las implicaciones de rendimiento para asegurarte de que las consultas no se vean innecesariamente afectadas por la latencia interregional.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\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-1c86792 elementor-widget elementor-widget-text-editor\" data-id=\"1c86792\" data-element_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>Si tu aplicaci\u00f3n requiere an\u00e1lisis en tiempo real o consultas que involucren grandes vol\u00famenes de datos distribuidos globalmente, usar una configuraci\u00f3n multirregi\u00f3n en BigQuery puede mejorar significativamente el rendimiento.<br \/><br \/>Considera el costo de las transferencias interregionales si tu flujo de trabajo involucra consultas entre datos almacenados en diferentes regiones. Para evitar costos innecesarios, puede ser \u00fatil limitar las consultas a una regi\u00f3n espec\u00edfica o consolidar los datos en una regi\u00f3n centralizada.<br \/><br \/>Ten en cuenta la ubicaci\u00f3n de tus usuarios y servicios, ya que elegir la regi\u00f3n correcta puede impactar tanto el costo como el desempe\u00f1o de las consultas.<\/p><h3><strong><br \/>Herramientas para monitorear y controlar costos y rendimiento<\/strong><\/h3><p>En el entorno de la nube, controlar los costos y mantener el rendimiento \u00f3ptimo de los servicios es esencial para una gesti\u00f3n eficiente de los recursos. Google Cloud ofrece varias herramientas que facilitan el monitoreo, la optimizaci\u00f3n de costos y el an\u00e1lisis del rendimiento de servicios como Google Cloud Storage (GCS) y BigQuery. A continuaci\u00f3n, revisamos algunas de las herramientas m\u00e1s \u00fatiles disponibles en Google Cloud para gestionar ambos servicios.<\/p><h4><strong>Google Cloud Billing(Monitoreo de Costos y Estimaciones)<\/strong><\/h4><p>Es una de las herramientas principales para gestionar y monitorear los costos asociados con todos los servicios de Google Cloud, incluyendo GCS y BigQuery. Proporciona visibilidad detallada sobre el uso de los servicios y las tarifas que se est\u00e1n generando.<\/p><p><strong>Funcionalidades clave:<\/strong><\/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-32a4d8c elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"32a4d8c\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Estad\u00edsticas de uso y costos: Permite obtener informes detallados sobre el uso de GCS y BigQuery, segmentados por proyectos, servicios o incluso usuarios. Puedes analizar los costos hist\u00f3ricos, estimar los gastos futuros y crear alertas para evitar sorpresas.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Presupuestos y alertas: Puedes configurar presupuestos para cada servicio o proyecto y recibir alertas si los costos superan ciertos umbrales. Esto es especialmente \u00fatil para evitar gastos imprevistos en BigQuery, donde las consultas interregionales o el almacenamiento de grandes vol\u00famenes de datos pueden generar costos adicionales.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Informes de costos detallados: Accede a informes granulares sobre las tarifas de almacenamiento, transferencia de datos, ejecuci\u00f3n de consultas y otros servicios relacionados. Esta informaci\u00f3n es \u00fatil para identificar \u00e1reas donde se puede optimizar el uso y reducir costos.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Cost Breakdown: Puedes segmentar los costos por servicio, regi\u00f3n, etiquetas o proyectos. Esto es \u00fatil para desglosar espec\u00edficamente cu\u00e1nto est\u00e1s gastando en GCS y BigQuery, permiti\u00e9ndote identificar \u00e1reas donde podr\u00edas reducir el gasto.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Recomendaciones de optimizaci\u00f3n: Google Cloud Billing ofrece recomendaciones personalizadas para optimizar los costos, por ejemplo, sugiriendo la transici\u00f3n de almacenamiento a clases m\u00e1s econ\u00f3micas en GCS o la revisi\u00f3n de patrones de consultas costosas en BigQuery.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Forecasting y An\u00e1lisis Predictivo: La herramienta tambi\u00e9n ofrece funcionalidades para predecir los costos futuros bas\u00e1ndose en el uso hist\u00f3rico y la tendencia actual, lo que te ayuda a planificar los recursos de manera m\u00e1s eficiente.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\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-0cc9bbb elementor-widget elementor-widget-text-editor\" data-id=\"0cc9bbb\" data-element_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>Usa <strong>Google Cloud Billing<\/strong> para establecer un control regular de los costos de GCS y BigQuery, y configura alertas para mantenerte dentro de los l\u00edmites presupuestarios. Adem\u00e1s, puedes crear informes personalizados para realizar un seguimiento m\u00e1s efectivo.<\/p><p>Utiliza las recomendaciones de optimizaci\u00f3n de Google Cloud Cost Management para ajustar la infraestructura de GCS y BigQuery a tus necesidades reales, asegurando una gesti\u00f3n de costos m\u00e1s eficaz.<\/p><h4><strong><br \/>Google Cloud Monitoring(Monitoreo de los servicios)<\/strong><\/h4><p>Para gestionar el rendimiento de GCS y BigQuery, <strong>Google Cloud Monitoring<\/strong> es la herramienta recomendada. Esta herramienta permite visualizar el estado de los recursos de Google Cloud, incluidas las m\u00e9tricas de rendimiento de almacenamiento y consultas.<\/p><p><strong>Funcionalidades clave:<\/strong><\/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-6eb8064 elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"6eb8064\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">M\u00e9tricas de rendimiento de GCS: Puedes monitorear tanto el tiempo de respuesta como la tasa de transferencia de los objetos almacenados en Google Cloud Storage (GCS), lo que te ayudar\u00e1 a detectar problemas de rendimiento que puedan afectar la eficiencia en el acceso a los datos. Adem\u00e1s, es posible monitorear el uso del almacenamiento y obtener una visi\u00f3n clara de la cantidad de espacio que cada bucket est\u00e1 utilizando. Esto es clave para identificar r\u00e1pidamente qu\u00e9 buckets est\u00e1n generando costos elevados, permiti\u00e9ndote tomar decisiones informadas sobre la gesti\u00f3n del almacenamiento. Tambi\u00e9n es importante monitorear el uso de la API de GCS, ya que una alta cantidad de solicitudes o un uso ineficiente de la API puede generar costos adicionales y afectar el rendimiento.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">M\u00e9tricas de rendimiento de BigQuery: Google Cloud Monitoring ofrece m\u00e9tricas detalladas sobre el rendimiento de las consultas en BigQuery, tales como el tiempo de ejecuci\u00f3n, la cantidad de datos procesados y los recursos consumidos. Estas m\u00e9tricas son fundamentales para identificar consultas que podr\u00edan estar generando cuellos de botella o costos elevados. Adem\u00e1s, es posible monitorear el uso de la API de BigQuery, lo que te permitir\u00e1 detectar patrones an\u00f3malos en el consumo de la API, evitando posibles sobrecargos y asegurando un rendimiento \u00f3ptimo de tus consultas. Monitorear tanto el uso de la API como el almacenamiento te permite optimizar tanto la infraestructura como los costos asociados con el procesamiento de datos.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Alertas de rendimiento: Al igual que con los costos, puedes establecer alertas para el rendimiento, como el tiempo de respuesta de GCS o la duraci\u00f3n de las consultas en BigQuery, para tomar medidas preventivas si los indicadores de rendimiento superan ciertos umbrales.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\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-ab69443 elementor-widget elementor-widget-text-editor\" data-id=\"ab69443\" data-element_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>Usa <strong>Google Cloud Monitoring<\/strong> para realizar un seguimiento constante de las m\u00e9tricas clave relacionadas con GCS y BigQuery, asegurando que ambas plataformas funcionen de manera eficiente y sin cuellos de botella que puedan afectar la experiencia del usuario o generar costos innecesarios.<\/p><h4><strong><br \/>BigQuery Query Plan Explanation(Optimizaci\u00f3n de Consultas)<\/strong><\/h4><p>Una de las principales preocupaciones en BigQuery es el rendimiento de las consultas. <strong>BigQuery Query Plan Explanation<\/strong> es una herramienta avanzada que permite examinar los planes de ejecuci\u00f3n de las consultas y entender c\u00f3mo BigQuery procesa los datos.<\/p><p><strong>Funcionalidades clave:<\/strong><\/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-2d95de9 elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"2d95de9\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Plan de ejecuci\u00f3n: Analiza el plan de ejecuci\u00f3n de las consultas, lo que te permite identificar posibles optimizaciones, como el uso de \u00edndices, particiones o la reorganizaci\u00f3n de las tablas.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Recomendaciones de optimizaci\u00f3n: En el plan de ejecuci\u00f3n, BigQuery proporciona recomendaciones sobre c\u00f3mo mejorar la consulta para reducir los costos y mejorar el tiempo de ejecuci\u00f3n, como evitar la lectura de datos innecesarios o mejorar el uso de recursos.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Optimizaci\u00f3n de costos: Al mejorar las consultas, puedes reducir significativamente los costos asociados con la ejecuci\u00f3n de las mismas, especialmente en escenarios donde se procesan grandes vol\u00famenes de datos.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\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-604b42f elementor-widget elementor-widget-text-editor\" data-id=\"604b42f\" data-element_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>Utiliza <strong>BigQuery Query Plan Explanation<\/strong> para revisar y optimizar las consultas que realizan un uso intensivo de recursos, asegurando que el procesamiento de datos se haga de la manera m\u00e1s eficiente posible.<br \/><br \/><\/p><h4><strong>Preguntas claves<\/strong><\/h4><p>Para poder tomar la mejor decisi\u00f3n te puedes basar en la siguiente serie de preguntas y escenarios planteados:<\/p><ol><li>\u00bfCu\u00e1l es el volumen de datos que manejar\u00e1s?<\/li><\/ol><ul><li style=\"list-style-type: none;\"><ul><li>Escenario 1: Datos a gran escala<br \/>Si est\u00e1s gestionando un sistema de an\u00e1lisis de logs de aplicaciones distribuidas, el volumen de datos podr\u00eda ser muy alto, con millones de registros generados cada hora. En este caso, podr\u00edas optar por usar GCS con la clase de almacenamiento Nearline o Coldline para los logs que no se consultan frecuentemente, pero que deben conservarse por un periodo largo.<\/li><li>Escenario 2: Datos peque\u00f1os y est\u00e1ticos<br \/>Si manejas un sitio web con archivos est\u00e1ticos (por ejemplo, im\u00e1genes, CSS, etc.), el volumen de datos puede ser peque\u00f1o y relativamente estable. En este caso, podr\u00edas almacenar los archivos en un bucket con la clase Standard, ya que el acceso ser\u00e1 frecuente y r\u00e1pido.<\/li><\/ul><\/li><\/ul><ol start=\"2\"><li>\u00bfCu\u00e1l es el ciclo de vida de tus datos?<\/li><\/ol><ul><li style=\"list-style-type: none;\"><ul><li>Escenario 1: Datos temporales<br \/>Imagina que gestionas un sistema de an\u00e1lisis de datos en tiempo real, donde los datos s\u00f3lo tienen valor durante unas horas o d\u00edas (por ejemplo, registros de m\u00e9tricas de uso de una aplicaci\u00f3n m\u00f3vil). Despu\u00e9s de cierto tiempo, estos datos ya no son \u00fatiles. En este caso, puedes configurar un ciclo de vida en GCS para mover los archivos a Coldline despu\u00e9s de 30 d\u00edas y, despu\u00e9s de 90 d\u00edas, eliminarlos.<\/li><li>Escenario 2: Datos hist\u00f3ricos y de cumplimiento<br \/>Si tienes datos que deben ser almacenados durante a\u00f1os por razones de cumplimiento o auditor\u00eda (como registros financieros o m\u00e9dicos), debes asegurarte de que estos se conserven en almacenamiento de largo plazo y est\u00e9n protegidos. En este caso, Coldline o Archive en GCS ser\u00edan las mejores opciones, y podr\u00edas aplicar pol\u00edticas de retenci\u00f3n para garantizar que los datos se mantengan durante el tiempo requerido.<\/li><\/ul><\/li><\/ul><ol start=\"3\"><li>\u00bfNecesitas versionar tus datos?<\/li><\/ol><ul><li style=\"list-style-type: none;\"><ul><li>Escenario 1: Versionado de datos cr\u00edticos<br \/>Supongamos que est\u00e1s manejando datos sensibles, como documentos legales o informes financieros, y necesitas poder recuperar versiones anteriores en caso de errores o cambios no deseados. Habilitar el versionado en GCS ser\u00eda \u00fatil, ya que te permite mantener un historial de las versiones de cada archivo. Sin embargo, es importante configurar una pol\u00edtica para eliminar versiones antiguas despu\u00e9s de un tiempo para evitar el uso excesivo de almacenamiento.<\/li><li>Escenario 2: Datos no modificables<br \/>Si trabajas con archivos que no cambian con frecuencia, como archivos multimedia o datos de respaldos que se actualizan solo una vez cada cierto tiempo, el versionado podr\u00eda no ser necesario. En este caso, puedes evitar habilitar el versionado y ahorrar en costos de almacenamiento innecesarios.<\/li><\/ul><\/li><\/ul><ol start=\"4\"><li>\u00bfC\u00f3mo organizar tus datos en GCS?<\/li><\/ol><ul><li style=\"list-style-type: none;\"><ul><li>Escenario 1: M\u00faltiples tipos de datos y permisos diferenciados<br \/>Si trabajas con una organizaci\u00f3n que maneja diferentes tipos de datos (por ejemplo, datos de clientes, logs de servidores, im\u00e1genes de productos, etc.), lo ideal ser\u00eda crear diferentes buckets para cada tipo de datos. Esto no solo organiza mejor los recursos, sino que tambi\u00e9n permite aplicar pol\u00edticas de seguridad y ciclo de vida diferenciadas.<ul><li>Bucket 1: Logs de servidores (logs)<\/li><li>Bucket 2: Archivos de usuarios (user-data)<\/li><li>Bucket 3: Im\u00e1genes de productos (product-images)<\/li><li>Adem\u00e1s, puedes aplicar pol\u00edticas de ciclo de vida distintas en cada bucket. Por ejemplo, los logs de servidores pueden tener una retenci\u00f3n corta (mover a Coldline despu\u00e9s de 30 d\u00edas), mientras que las im\u00e1genes de productos pueden estar almacenadas a largo plazo en Nearline o Archive.<\/li><\/ul><\/li><li>Escenario 2: M\u00faltiples proyectos y entornos<br \/>En un entorno con varios proyectos, podr\u00edas crear un bucket por proyecto o incluso por entorno (producci\u00f3n, desarrollo, pruebas) para mantener el aislamiento y la gesti\u00f3n controlada.<\/li><\/ul><\/li><\/ul><ol start=\"5\"><li>\u00bfBigQuery ser\u00e1 utilizado para an\u00e1lisis en tiempo real o consultas hist\u00f3ricas?<\/li><\/ol><ul><li style=\"list-style-type: none;\"><ul><li>Escenario 1: An\u00e1lisis en tiempo real<br \/>Sup\u00f3n que est\u00e1s trabajando con un sistema de monitoreo de eventos en tiempo real, donde los datos se generan y se consultan de inmediato (por ejemplo, an\u00e1lisis de comportamiento de usuarios en una plataforma web). En este caso, deber\u00edas configurar tablas particionadas en BigQuery por fecha para asegurarte de que las consultas solo analicen los datos m\u00e1s recientes y no incurras en costos innecesarios por escanear grandes vol\u00famenes de datos hist\u00f3ricos.<br \/><br \/>Partici\u00f3n por fecha: Crea tablas particionadas por fecha para consultas diarias de los datos m\u00e1s recientes.<\/li><li>Escenario 2: Consultas hist\u00f3ricas<br \/>Si trabajas con un sistema donde las consultas se hacen sobre grandes vol\u00famenes de datos hist\u00f3ricos (por ejemplo, an\u00e1lisis de tendencias de ventas a lo largo de varios a\u00f1os), entonces deber\u00edas usar clustering en BigQuery para organizar los datos y optimizar las consultas por las columnas m\u00e1s consultadas (como ID de producto, categor\u00eda, etc.).<br \/><br \/>Clustering: Crear un clustering por producto_id y categoria_id para optimizar las consultas sobre estos campos.<\/li><\/ul><\/li><\/ul><ol start=\"6\"><li>\u00bfTienes pol\u00edticas de seguridad y acceso claras para cada servicio?<\/li><\/ol><ul><li style=\"list-style-type: none;\"><ul><li>Escenario 1: Acceso diferenciado para equipos<br \/>Si tienes diferentes equipos (por ejemplo, equipo de desarrollo, operaciones, y an\u00e1lisis de datos), es fundamental definir roles y permisos para cada bucket en GCS y las tablas en BigQuery. Aseg\u00farate de que solo los usuarios autorizados puedan modificar o acceder a datos sensibles.<br \/><br \/>GCS: Usa IAM para otorgar permisos espec\u00edficos a los diferentes buckets. Por ejemplo, solo el equipo de operaciones debe tener acceso de lectura\/escritura al bucket de logs (logs).<br \/><br \/>BigQuery: Asigna permisos de lectura a los analistas de datos para las tablas de BigQuery, pero solo permite escritura al equipo de desarrollo.<\/li><li>Escenario 2: Acceso por ubicaci\u00f3n geogr\u00e1fica<br \/>Si est\u00e1s trabajando en una regi\u00f3n con regulaciones de protecci\u00f3n de datos (por ejemplo, en la UE), puedes configurar ubicaciones regionales en GCS para asegurar que los datos se almacenan en una regi\u00f3n espec\u00edfica y controlar el acceso a ellos de acuerdo con las normativas locales.<br \/>Con estos escenarios, tienes un marco claro de c\u00f3mo abordar las decisiones de almacenamiento, ciclo de vida, versionado y seguridad, seg\u00fan las necesidades de tu proyecto.<\/li><\/ul><\/li><\/ul><h4><strong>Optimizaci\u00f3n<\/strong><\/h4><p>Para que puedas optimizar los costos aplicando las recomendaciones que se vieron anteriormente, es necesario que conozcas c\u00f3mo est\u00e1n configurados los servicios, para esto puedes revisar varios ejemplos de c\u00f3digo para obtener los metadatos de tus recursos en Google Cloud Storage (GCS) y BigQuery, utilizando las APIs de Google Cloud (en Python). Esto te permitir\u00e1 obtener informaci\u00f3n sobre la configuraci\u00f3n actual y ayudarte a identificar posibles mejoras o cambios.<\/p><ol><li>Revisar los metadatos de un bucket en GCS<\/li><\/ol><ul><li style=\"list-style-type: none;\"><ul><li>Este c\u00f3digo obtiene informaci\u00f3n sobre un bucket en Google Cloud Storage, incluyendo la clase de almacenamiento, las pol\u00edticas de ciclo de vida, y m\u00e1s.<\/li><li>Instalar dependencias: Si no lo has hecho a\u00fan,\u00a0 instala la biblioteca cliente de Google Cloud Storage en Python:<\/li><\/ul><\/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-570d4eb elementor-widget elementor-widget-elementor-syntax-highlighter\" data-id=\"570d4eb\" data-element_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'>\r\n\uec03pip install google-cloud-storage\r\n <\/code><\/pre><script>\nif (!document.getElementById('syntaxed-prism')) {\n\tvar my_awesome_script = document.createElement('script');\n\tmy_awesome_script.setAttribute('src','https:\/\/bluetab.org\/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-c16f0e7 elementor-widget elementor-widget-text-editor\" data-id=\"c16f0e7\" data-element_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>C\u00f3digo para obtener metadatos del bucket:<\/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-45d035f elementor-widget elementor-widget-elementor-syntax-highlighter\" data-id=\"45d035f\" data-element_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'>\r\n\uec03import csv\r\nimport concurrent.futures\r\nfrom google.cloud import storage\r\n\r\n#cambiar nombre del project-id\r\nclient = storage.Client(project=&quot;project-id&quot;)\r\n\r\ndef obtener_metadatos_bucket(bucket):\r\n    metadatos = {\r\n        &quot;nombre_bucket&quot;: bucket.name,\r\n        &quot;ubicacion_bucket&quot;: bucket.location,\r\n        &quot;clase_almacenamiento&quot;: bucket.storage_class,\r\n        &quot;versionamiento_habilitado&quot;: bucket.versioning_enabled,\r\n        &quot;reglas_ciclo_vida&quot;: str(bucket.lifecycle_rules) if bucket.lifecycle_rules else &quot;No hay reglas&quot;,\r\n    }\r\n\r\n    objetos = []\r\n    blobs = client.list_blobs(bucket.name)\r\n    for blob in blobs:\r\n        objetos.append({\r\n            &quot;nombre_objeto&quot;: blob.name,\r\n            &quot;tamano_objeto&quot;: f&quot;{blob.size} bytes&quot;\r\n        })\r\n\r\n    return metadatos, objetos\r\n\r\ndef guardar_metadatos_csv(nombre_archivo, metadatos_buckets):\r\n    with open(nombre_archivo, mode=&#039;w&#039;, newline=&#039;&#039;) as file:\r\n        writer = csv.writer(file)\r\n\r\n        # Encabezados\r\n        writer.writerow([&quot;Nombre del Bucket&quot;, &quot;Ubicaci&oacute;n&quot;, &quot;Clase de Almacenamiento&quot;, &quot;Versionamiento&quot;, &quot;Reglas Ciclo de Vida&quot;, &quot;Nombre del Objeto&quot;, &quot;Tama&ntilde;o del Objeto&quot;])\r\n\r\n        # Escribir los metadatos de cada bucket\r\n        for metadatos, objetos in metadatos_buckets:\r\n            for objeto in objetos:\r\n                writer.writerow([\r\n                    metadatos[&quot;nombre_bucket&quot;],\r\n                    metadatos[&quot;ubicacion_bucket&quot;],\r\n                    metadatos[&quot;clase_almacenamiento&quot;],\r\n                    metadatos[&quot;versionamiento_habilitado&quot;],\r\n                    metadatos[&quot;reglas_ciclo_vida&quot;],\r\n                    objeto[&quot;nombre_objeto&quot;],\r\n                    objeto[&quot;tamano_objeto&quot;]\r\n                ])\r\n\r\ndef procesar_bucket(bucket):\r\n    try:\r\n        metadatos, objetos = obtener_metadatos_bucket(bucket)\r\n        return metadatos, objetos\r\n    except Exception as e:\r\n        print(f&quot;Error al procesar el bucket {bucket.name}: {e}&quot;)\r\n        return None\r\n\r\ndef obtener_y_guardar_metadatos():\r\n    metadatos_buckets = []\r\n\r\n    buckets = client.list_buckets()\r\n\r\n    # Usar ThreadPoolExecutor para paralelizar la carga de metadatos\r\n    with concurrent.futures.ThreadPoolExecutor(max_workers=10) as executor:\r\n        futures = {executor.submit(procesar_bucket, bucket): bucket for bucket in buckets}\r\n\r\n        for future in concurrent.futures.as_completed(futures):\r\n            resultado = future.result()\r\n            if resultado:\r\n                metadatos_buckets.append(resultado)\r\n\r\n    guardar_metadatos_csv(&#039;metadatos_buckets.csv&#039;, metadatos_buckets)\r\n\r\n    print(&quot;Metadatos guardados en el archivo &#039;metadatos_buckets.csv&#039;&quot;)\r\n\r\nif __name__ == &quot;__main__&quot;:\r\n    obtener_y_guardar_metadatos()\r\n\r\n\uec02\r\n <\/code><\/pre><script>\nif (!document.getElementById('syntaxed-prism')) {\n\tvar my_awesome_script = document.createElement('script');\n\tmy_awesome_script.setAttribute('src','https:\/\/bluetab.org\/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-5c493b4 elementor-widget elementor-widget-text-editor\" data-id=\"5c493b4\" data-element_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>Este script te permitir\u00e1 ver informaci\u00f3n sobre:<\/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-b0c9a79 elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"b0c9a79\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">La ubicaci\u00f3n del bucket (para asegurarte de que cumple con las normativas de regulaci\u00f3n de datos, si es necesario).<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">La clase de almacenamiento (Standard, Nearline, Coldline, Archive).<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Si el versionado est\u00e1 habilitado.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Las pol\u00edticas de ciclo de vida configuradas para el bucket.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Un listado de objetos dentro del bucket y su tama\u00f1o.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\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-936d711 elementor-widget elementor-widget-text-editor\" data-id=\"936d711\" data-element_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<ol start=\"2\"><li>Revisar los metadatos de una tabla en BigQuery<\/li><\/ol><p>\u00a0<\/p><p>Este c\u00f3digo obtiene metadatos sobre una tabla de BigQuery, como su esquema, particiones, y detalles de almacenamiento.<\/p><p>\u00a0<\/p><p>Instalar dependencias: Si a\u00fan no lo has hecho, instala el SDK de Google Cloud para BigQuery:<\/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-a1d5e66 elementor-widget elementor-widget-elementor-syntax-highlighter\" data-id=\"a1d5e66\" data-element_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'>\uec03pip install google-cloud-bigquery <\/code><\/pre><script>\nif (!document.getElementById('syntaxed-prism')) {\n\tvar my_awesome_script = document.createElement('script');\n\tmy_awesome_script.setAttribute('src','https:\/\/bluetab.org\/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-b3f99e4 elementor-widget elementor-widget-text-editor\" data-id=\"b3f99e4\" data-element_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>C\u00f3digo para obtener metadatos de una tabla en BigQuery:<\/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-6b9bd6f elementor-widget elementor-widget-elementor-syntax-highlighter\" data-id=\"6b9bd6f\" data-element_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'>\uec03import csv\r\nimport concurrent.futures\r\nfrom google.cloud import bigquery\r\nfrom google.api_core.exceptions import NotFound\r\n\r\n#cambiar nombre del project-id\r\nclient = bigquery.Client(project=&quot;project-id&quot;)\r\n\r\ndef obtener_metadatos_tabla(dataset_id, table_id):\r\n    try:\r\n        table_ref = client.dataset(dataset_id).table(table_id)\r\n        \r\n        table = client.get_table(table_ref)\r\n        \r\n        partition_field = &quot;N\/A&quot;\r\n        if table.time_partitioning and table.time_partitioning.field:\r\n            partition_field = table.time_partitioning.field\r\n        \r\n        metadatos = {\r\n            &quot;dataset_id&quot;: dataset_id,\r\n            &quot;table_id&quot;: table.table_id,\r\n            &quot;descripcion&quot;: table.description,\r\n            &quot;esquema&quot;: &#039;, &#039;.join([f&quot;{field.name} ({field.field_type})&quot; for field in table.schema]),\r\n            &quot;partitioning_type&quot;: table.partitioning_type if table.partitioning_type else &quot;No particionada&quot;,\r\n            &quot;partition_field&quot;: partition_field,  # Usamos la variable con la partici&oacute;n\r\n            &quot;clustering_fields&quot;: &#039;, &#039;.join(table.clustering_fields) if table.clustering_fields else &quot;No clustering&quot;,\r\n            &quot;tama&ntilde;o_bytes&quot;: table.num_bytes,\r\n            &quot;numero_filas&quot;: table.num_rows\r\n        }\r\n        return metadatos\r\n    except NotFound:\r\n        print(f&quot;Tabla no encontrada: {dataset_id}.{table_id}&quot;)\r\n        return None\r\n\r\ndef obtener_tablas_datasets():\r\n    metadatos_tablas = []\r\n\r\n    datasets = client.list_datasets()\r\n\r\n    with concurrent.futures.ThreadPoolExecutor(max_workers=10) as executor:\r\n        futures = []\r\n        \r\n        for dataset in datasets:\r\n            tablas = client.list_tables(dataset.dataset_id)\r\n            for tabla in tablas:\r\n                futures.append(executor.submit(obtener_metadatos_tabla, dataset.dataset_id, tabla.table_id))\r\n        \r\n        for future in concurrent.futures.as_completed(futures):\r\n            metadatos = future.result()\r\n            if metadatos:\r\n                metadatos_tablas.append(metadatos)\r\n\r\n    return metadatos_tablas\r\n\r\ndef guardar_metadatos_csv(nombre_archivo, metadatos_tablas):\r\n    with open(nombre_archivo, mode=&#039;w&#039;, newline=&#039;&#039;) as file:\r\n        writer = csv.DictWriter(file, fieldnames=metadatos_tablas[0].keys())\r\n        writer.writeheader()\r\n        writer.writerows(metadatos_tablas)\r\n\r\ndef procesar_metadatos():\r\n    metadatos_tablas = obtener_tablas_datasets()\r\n\r\n    guardar_metadatos_csv(&#039;metadatos_tablas.csv&#039;, metadatos_tablas)\r\n    print(&quot;Metadatos guardados en el archivo &#039;metadatos_tablas.csv&#039;&quot;)\r\n\r\nif __name__ == &quot;__main__&quot;:\r\n    procesar_metadatos()\r\n\r\n\uec02\r\n <\/code><\/pre><script>\nif (!document.getElementById('syntaxed-prism')) {\n\tvar my_awesome_script = document.createElement('script');\n\tmy_awesome_script.setAttribute('src','https:\/\/bluetab.org\/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-d2eca3a elementor-widget elementor-widget-text-editor\" data-id=\"d2eca3a\" data-element_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>Este script te permitir\u00e1 obtener informaci\u00f3n clave sobre:<\/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-a7b3e4f elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"a7b3e4f\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">El esquema de la tabla (nombres y tipos de los campos).<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Particionamiento: Si la tabla est\u00e1 particionada por fecha u otra columna y c\u00f3mo se est\u00e1 gestionando.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Clustering: Si la tabla usa clustering para optimizar las consultas.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Tama\u00f1o de la tabla y el n\u00famero de filas.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\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-98c0e2c elementor-widget elementor-widget-text-editor\" data-id=\"98c0e2c\" data-element_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<ol start=\"3\"><li>Obtener detalles sobre el uso de GCS y BigQuery<\/li><\/ol><p>\u00a0<\/p><p>Para obtener m\u00e1s detalles acerca del uso y las m\u00e9tricas de tus servicios de GCS y BigQuery, puedes utilizar el servicio de Cloud Monitoring o la API de Stackdriver para obtener m\u00e9tricas sobre almacenamiento y consultas, pero esto va m\u00e1s all\u00e1 de revisar metadatos y entra en el an\u00e1lisis de rendimiento.<\/p><p>\u00a0<\/p><h1>Conclusi\u00f3n<\/h1><p>\u00a0<\/p><p>En resumen, la optimizaci\u00f3n de los costos en Google Cloud Platform, especialmente en servicios clave como GCS y BigQuery, es fundamental para mantener un control eficiente sobre el gasto y maximizar el rendimiento de tus recursos. Siguiendo las recomendaciones sobre almacenamiento, ciclo de vida de los datos, versionado y seguridad, podr\u00e1s tomar decisiones m\u00e1s informadas y alineadas con las necesidades espec\u00edficas de tu proyecto. Adem\u00e1s, con las herramientas y APIs disponibles, puedes auditar y ajustar continuamente tu infraestructura para asegurar que siempre est\u00e9s aprovechando al m\u00e1ximo cada recurso. Con una gesti\u00f3n adecuada, los costos no tienen por qu\u00e9 ser un obst\u00e1culo, sino una oportunidad para mejorar la eficiencia y la escalabilidad de tu plataforma en la nube.<\/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-2584c6d elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"2584c6d\" data-element_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-66d6365\" data-id=\"66d6365\" data-element_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-100a308 elementor-position-left elementor-vertical-align-middle elementor-widget elementor-widget-image-box\" data-id=\"100a308\" data-element_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\/juli%C3%A1n-felipe-parra-tunjano-472a9b23b\/\" target=\"_blank\" tabindex=\"-1\"><img decoding=\"async\" width=\"150\" height=\"150\" data-src=\"https:\/\/www.bluetab.com\/wp-content\/uploads\/2025\/03\/1699636036771-150x150.jpeg\" class=\"attachment-thumbnail size-thumbnail wp-image-20335 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771-150x150.jpeg 150w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771-300x300.jpeg 300w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771-768x768.jpeg 768w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771-75x75.jpeg 75w, https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/1699636036771.jpeg 800w\" 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\/juli%C3%A1n-felipe-parra-tunjano-472a9b23b\/\" target=\"_blank\">Juli\u00e1n Felipe Parra<\/a><\/h4><p class=\"elementor-image-box-description\">Technical Specialist <\/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-top-column elementor-element elementor-element-e6f4836\" data-id=\"e6f4836\" data-element_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-d89dce5 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=\"d89dce5\" data-element_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=\"Compartir en 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=\"Compartir en 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-top-section elementor-element elementor-element-1be251e elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"1be251e\" data-element_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-edfbd67\" data-id=\"edfbd67\" data-element_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-c775aa0 elementor-widget elementor-widget-spacer\" data-id=\"c775aa0\" data-element_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<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-e334282 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"e334282\" data-element_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-186a982\" data-id=\"186a982\" data-element_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-b442409 elementor-widget elementor-widget-heading\" data-id=\"b442409\" data-element_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\">\u00bfQuieres saber m\u00e1s de lo que ofrecemos y ver otros casos de \u00e9xito?<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-adfb080 elementor-align-center elementor-widget elementor-widget-button\" data-id=\"adfb080\" data-element_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\">DESCUBRE 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\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-dc31455 elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"dc31455\" data-element_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-685ab40\" data-id=\"685ab40\" data-element_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-a5c9322 elementor-widget elementor-widget-text-editor\" data-id=\"a5c9322\" data-element_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>SOLUCIONES, <\/b>SOMOS EXPERTOS<\/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-b6bc50f elementor-section-height-min-height elementor-section-boxed elementor-section-height-default\" data-id=\"b6bc50f\" data-element_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-wide\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-inner-column elementor-element elementor-element-f189730\" data-id=\"f189730\" data-element_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-231b8cc eael-infobox-content-align--center elementor-invisible elementor-widget elementor-widget-eael-info-box\" data-id=\"231b8cc\" data-element_type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInLeft&quot;}\" data-widget_type=\"eael-info-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <div class=\"eael-infobox icon-on-top\">\n\t            <div class=\"infobox-content\">\n                    <div class=\"infobox-title-section\">\n                <h2 class=\"title\">DATA STRATEGY<\/h2>            <\/div>\n                    <div class=\"infobox-button\">\n            <a class=\"eael-infobox-button\" href=\"\/es\/soluciones\/data-strategy\/\">\n                                                <span class=\"infobox-button-text\">+<\/span>\n                            <\/a>\n        <\/div>\n            <\/div>\n            <\/div>\n\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-fcd5745\" data-id=\"fcd5745\" data-element_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-889e04a eael-infobox-content-align--center eael-infobox-icon-bg-shape-none eael-infobox-icon-hover-bg-shape-none elementor-invisible elementor-widget elementor-widget-eael-info-box\" data-id=\"889e04a\" data-element_type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInUp&quot;}\" data-widget_type=\"eael-info-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <div class=\"eael-infobox icon-on-top\">\n\t            <div class=\"infobox-icon eael-icon-only\">\n\n            \n                            <div class=\"infobox-icon-wrap\">\n                                    <\/div>\n            \n            \n        <\/div>\n            <div class=\"infobox-content eael-icon-only\">\n                    <div class=\"infobox-title-section\">\n                <h2 class=\"title\">DATA Engineering<\/h2>            <\/div>\n                    <div class=\"infobox-button\">\n            <a class=\"eael-infobox-button\" href=\"\/es\/soluciones\/data-engineering\/\">\n                                                <span class=\"infobox-button-text\">+<\/span>\n                            <\/a>\n        <\/div>\n            <\/div>\n            <\/div>\n\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-6a8c863\" data-id=\"6a8c863\" data-element_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-ca2c9c5 eael-infobox-content-align--center eael-infobox-icon-bg-shape-none eael-infobox-icon-hover-bg-shape-none elementor-invisible elementor-widget elementor-widget-eael-info-box\" data-id=\"ca2c9c5\" data-element_type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInRight&quot;}\" data-widget_type=\"eael-info-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <div class=\"eael-infobox icon-on-top\">\n\t            <div class=\"infobox-icon eael-icon-only\">\n\n            \n                            <div class=\"infobox-icon-wrap\">\n                                    <\/div>\n            \n            \n        <\/div>\n            <div class=\"infobox-content eael-icon-only\">\n                    <div class=\"infobox-title-section\">\n                <h2 class=\"title\">GEN IA<\/h2>            <\/div>\n                    <div class=\"infobox-button\">\n            <a class=\"eael-infobox-button\" href=\"\/es\/soluciones\/gen-ia\/\">\n                                                <span class=\"infobox-button-text\">+<\/span>\n                            <\/a>\n        <\/div>\n            <\/div>\n            <\/div>\n\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-fb7705a\" data-id=\"fb7705a\" data-element_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-89468bd elementor-widget elementor-widget-text-editor\" data-id=\"89468bd\" data-element_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>Te puede interesar<\/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-c139676 elementor-posts--align-left elementor-grid-1 elementor-posts--thumbnail-left elementor-hidden-phone elementor-grid-tablet-2 elementor-grid-mobile-1 elementor-widget elementor-widget-posts\" data-id=\"c139676\" data-element_type=\"widget\" data-settings=\"{&quot;classic_row_gap&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:32,&quot;sizes&quot;:[]},&quot;classic_columns&quot;:&quot;1&quot;,&quot;classic_columns_tablet&quot;:&quot;2&quot;,&quot;classic_columns_mobile&quot;:&quot;1&quot;,&quot;classic_row_gap_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;classic_row_gap_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"posts.classic\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-posts-container elementor-posts elementor-posts--skin-classic elementor-grid\" role=\"list\">\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-16047 post type-post status-publish format-standard has-post-thumbnail category-blog-es category-tech entry\" role=\"listitem\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/bluetab.org\/es\/dataops\/\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"300\" height=\"152\" data-src=\"https:\/\/bluetab.org\/wp-content\/uploads\/2023\/10\/Data-300x152.jpg\" class=\"attachment-medium size-medium wp-image-16073 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.org\/wp-content\/uploads\/2023\/10\/Data-300x152.jpg 300w, https:\/\/bluetab.org\/wp-content\/uploads\/2023\/10\/Data-768x389.jpg 768w, https:\/\/bluetab.org\/wp-content\/uploads\/2023\/10\/Data.jpg 794w\" data-sizes=\"(max-width: 300px) 100vw, 300px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 300px; --smush-placeholder-aspect-ratio: 300\/152;\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/bluetab.org\/es\/dataops\/\" >\n\t\t\t\tDataOps\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__meta-data\">\n\t\t\t\t\t<span class=\"elementor-post-date\">\n\t\t\toctubre 24, 2023\t\t<\/span>\n\t\t\t\t<\/div>\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/bluetab.org\/es\/dataops\/\" aria-label=\"M\u00e1s informaci\u00f3n sobre DataOps\" tabindex=\"-1\" >\n\t\t\tLEER M\u00c1S\t\t<\/a>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-4912 post type-post status-publish format-standard has-post-thumbnail category-blog-es category-tendencias entry\" role=\"listitem\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/bluetab.org\/es\/deteccion-de-fraude-bancario-con-aprendizaje-automatico\/\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"300\" height=\"163\" data-src=\"https:\/\/bluetab.org\/wp-content\/uploads\/2020\/10\/fraude-II-300x163.jpg\" class=\"attachment-medium size-medium wp-image-6197 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.org\/wp-content\/uploads\/2020\/10\/fraude-II-300x163.jpg 300w, https:\/\/bluetab.org\/wp-content\/uploads\/2020\/10\/fraude-II-768x417.jpg 768w, https:\/\/bluetab.org\/wp-content\/uploads\/2020\/10\/fraude-II.jpg 800w\" data-sizes=\"(max-width: 300px) 100vw, 300px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 300px; --smush-placeholder-aspect-ratio: 300\/163;\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/bluetab.org\/es\/deteccion-de-fraude-bancario-con-aprendizaje-automatico\/\" >\n\t\t\t\tDetecci\u00f3n de Fraude Bancario con aprendizaje autom\u00e1tico\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__meta-data\">\n\t\t\t\t\t<span class=\"elementor-post-date\">\n\t\t\tseptiembre 17, 2020\t\t<\/span>\n\t\t\t\t<\/div>\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/bluetab.org\/es\/deteccion-de-fraude-bancario-con-aprendizaje-automatico\/\" aria-label=\"M\u00e1s informaci\u00f3n sobre Detecci\u00f3n de Fraude Bancario con aprendizaje autom\u00e1tico\" tabindex=\"-1\" >\n\t\t\tLEER M\u00c1S\t\t<\/a>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-6778 post type-post status-publish format-standard has-post-thumbnail category-blog-es category-blog category-practices category-tech category-tech-en entry\" role=\"listitem\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/bluetab.org\/es\/hashicorp-boundary\/\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"300\" height=\"150\" data-src=\"https:\/\/bluetab.org\/wp-content\/uploads\/2020\/12\/14-300x150.png\" class=\"attachment-medium size-medium wp-image-17845 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.org\/wp-content\/uploads\/2020\/12\/14-300x150.png 300w, https:\/\/bluetab.org\/wp-content\/uploads\/2020\/12\/14-1024x512.png 1024w, https:\/\/bluetab.org\/wp-content\/uploads\/2020\/12\/14-768x384.png 768w, https:\/\/bluetab.org\/wp-content\/uploads\/2020\/12\/14.png 1200w\" data-sizes=\"(max-width: 300px) 100vw, 300px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 300px; --smush-placeholder-aspect-ratio: 300\/150;\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/bluetab.org\/es\/hashicorp-boundary\/\" >\n\t\t\t\tHashicorp Boundary\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__meta-data\">\n\t\t\t\t\t<span class=\"elementor-post-date\">\n\t\t\tdiciembre 3, 2020\t\t<\/span>\n\t\t\t\t<\/div>\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/bluetab.org\/es\/hashicorp-boundary\/\" aria-label=\"M\u00e1s informaci\u00f3n sobre Hashicorp Boundary\" tabindex=\"-1\" >\n\t\t\tLEER M\u00c1S\t\t<\/a>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<\/div>\n\t\t\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-31f886f elementor-posts--align-left elementor-grid-1 elementor-hidden-desktop elementor-hidden-tablet elementor-grid-tablet-2 elementor-grid-mobile-1 elementor-posts--thumbnail-top elementor-widget elementor-widget-posts\" data-id=\"31f886f\" data-element_type=\"widget\" data-settings=\"{&quot;classic_row_gap&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:32,&quot;sizes&quot;:[]},&quot;classic_columns&quot;:&quot;1&quot;,&quot;classic_columns_tablet&quot;:&quot;2&quot;,&quot;classic_columns_mobile&quot;:&quot;1&quot;,&quot;classic_row_gap_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;classic_row_gap_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"posts.classic\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-posts-container elementor-posts elementor-posts--skin-classic elementor-grid\" role=\"list\">\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-12456 post type-post status-publish format-standard has-post-thumbnail category-blog-es category-practices category-tech entry\" role=\"listitem\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/bluetab.org\/es\/como-preparar-la-certificacion-aws-data-analytics-specialty\/\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"300\" height=\"150\" data-src=\"https:\/\/bluetab.org\/wp-content\/uploads\/2021\/11\/11-300x150.png\" class=\"attachment-medium size-medium wp-image-17837 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.org\/wp-content\/uploads\/2021\/11\/11-300x150.png 300w, https:\/\/bluetab.org\/wp-content\/uploads\/2021\/11\/11-1024x512.png 1024w, https:\/\/bluetab.org\/wp-content\/uploads\/2021\/11\/11-768x384.png 768w, https:\/\/bluetab.org\/wp-content\/uploads\/2021\/11\/11.png 1200w\" data-sizes=\"(max-width: 300px) 100vw, 300px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 300px; --smush-placeholder-aspect-ratio: 300\/150;\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/bluetab.org\/es\/como-preparar-la-certificacion-aws-data-analytics-specialty\/\" >\n\t\t\t\tC\u00f3mo preparar la certificaci\u00f3n AWS Data Analytics &#8211; Specialty\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__meta-data\">\n\t\t\t\t\t<span class=\"elementor-post-date\">\n\t\t\tnoviembre 17, 2021\t\t<\/span>\n\t\t\t\t<\/div>\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/bluetab.org\/es\/como-preparar-la-certificacion-aws-data-analytics-specialty\/\" aria-label=\"M\u00e1s informaci\u00f3n sobre C\u00f3mo preparar la certificaci\u00f3n AWS Data Analytics &#8211; Specialty\" tabindex=\"-1\" >\n\t\t\tLEER M\u00c1S\t\t<\/a>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-9928 post type-post status-publish format-standard has-post-thumbnail category-blog-es category-tendencias entry\" role=\"listitem\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/bluetab.org\/es\/del-negocio-fisico-a-la-explosion-del-on-line\/\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"300\" height=\"139\" data-src=\"https:\/\/bluetab.org\/wp-content\/uploads\/2021\/04\/off-on-300x139.png\" class=\"attachment-medium size-medium wp-image-9939 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.org\/wp-content\/uploads\/2021\/04\/off-on-300x139.png 300w, https:\/\/bluetab.org\/wp-content\/uploads\/2021\/04\/off-on-768x356.png 768w, https:\/\/bluetab.org\/wp-content\/uploads\/2021\/04\/off-on.png 783w\" data-sizes=\"(max-width: 300px) 100vw, 300px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 300px; --smush-placeholder-aspect-ratio: 300\/139;\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/bluetab.org\/es\/del-negocio-fisico-a-la-explosion-del-on-line\/\" >\n\t\t\t\tDel negocio f\u00edsico a la explosi\u00f3n del On-Line\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__meta-data\">\n\t\t\t\t\t<span class=\"elementor-post-date\">\n\t\t\tabril 7, 2021\t\t<\/span>\n\t\t\t\t<\/div>\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/bluetab.org\/es\/del-negocio-fisico-a-la-explosion-del-on-line\/\" aria-label=\"M\u00e1s informaci\u00f3n sobre Del negocio f\u00edsico a la explosi\u00f3n del On-Line\" tabindex=\"-1\" >\n\t\t\tLEER M\u00c1S\t\t<\/a>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-5564 post type-post status-publish format-standard has-post-thumbnail category-blog-es category-tendencias entry\" role=\"listitem\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/bluetab.org\/es\/cuanto-vale-tu-cliente\/\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"300\" height=\"201\" data-src=\"https:\/\/bluetab.org\/wp-content\/uploads\/2020\/10\/cuanto-vale-tu-cliente-300x201.jpg\" class=\"attachment-medium size-medium wp-image-5566 lazyload\" alt=\"\" data-srcset=\"https:\/\/bluetab.org\/wp-content\/uploads\/2020\/10\/cuanto-vale-tu-cliente-300x201.jpg 300w, https:\/\/bluetab.org\/wp-content\/uploads\/2020\/10\/cuanto-vale-tu-cliente-1024x686.jpg 1024w, https:\/\/bluetab.org\/wp-content\/uploads\/2020\/10\/cuanto-vale-tu-cliente-768x514.jpg 768w, https:\/\/bluetab.org\/wp-content\/uploads\/2020\/10\/cuanto-vale-tu-cliente.jpg 1075w\" data-sizes=\"(max-width: 300px) 100vw, 300px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 300px; --smush-placeholder-aspect-ratio: 300\/201;\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/bluetab.org\/es\/cuanto-vale-tu-cliente\/\" >\n\t\t\t\t\u00bfCu\u00e1nto vale tu cliente?\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__meta-data\">\n\t\t\t\t\t<span class=\"elementor-post-date\">\n\t\t\toctubre 1, 2020\t\t<\/span>\n\t\t\t\t<\/div>\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/bluetab.org\/es\/cuanto-vale-tu-cliente\/\" aria-label=\"M\u00e1s informaci\u00f3n sobre \u00bfCu\u00e1nto vale tu cliente?\" tabindex=\"-1\" >\n\t\t\tLEER M\u00c1S\t\t<\/a>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<\/div>\n\t\t\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<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Juli\u00e1n Felipe Parra Technical Specialist Introducci\u00f3n En muchas ocasiones, los costos en la nube pueden dispararse debido a una configuraci\u00f3n inadecuada o a la falta<\/p>\n","protected":false},"author":1,"featured_media":20340,"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":"","footnotes":""},"categories":[21,631],"tags":[],"class_list":{"0":"post-20303","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-blog-es","8":"category-tech","9":"entry"},"uagb_featured_image_src":{"full":["https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3.png",1200,600,false],"thumbnail":["https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-150x150.png",150,150,true],"medium":["https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-300x150.png",300,150,true],"medium_large":["https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-768x384.png",768,384,true],"large":["https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-1024x512.png",1024,512,true],"1536x1536":["https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3.png",1200,600,false],"2048x2048":["https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3.png",1200,600,false],"sidebar-featured":["https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-75x75.png",75,75,true],"genesis-singular-images":["https:\/\/bluetab.org\/wp-content\/uploads\/2025\/03\/Parte-de-arriba-linkidin-3-702x526.png",702,526,true]},"uagb_author_info":{"display_name":"Bluetab","author_link":"https:\/\/bluetab.org\/es\/author\/user\/"},"uagb_comment_info":0,"uagb_excerpt":"Juli\u00e1n Felipe Parra Technical Specialist Introducci\u00f3n En muchas ocasiones, los costos en la nube pueden dispararse debido a una configuraci\u00f3n inadecuada o a la falta","_links":{"self":[{"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/posts\/20303","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/comments?post=20303"}],"version-history":[{"count":31,"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/posts\/20303\/revisions"}],"predecessor-version":[{"id":20339,"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/posts\/20303\/revisions\/20339"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/media\/20340"}],"wp:attachment":[{"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/media?parent=20303"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/categories?post=20303"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bluetab.org\/es\/wp-json\/wp\/v2\/tags?post=20303"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}