Google, transferencia de datos

Effingo: la herramienta interna de transferencia de datos de Google

Google ha revelado detalles técnicos sobre su herramienta interna de transferencia de datos, denominada Effingo, una pieza clave en la infraestructura tecnológica de la compañía.

Esta herramienta es capaz de mover diariamente un promedio de 1,2 exabytes de datos a través de sus sistemas globales, un logro impresionante que subraya la escala masiva de las operaciones de Google.

¿Qué es Effingo?

Effingo es un sistema de copia de datos masivamente paralelo, diseñado para gestionar la transferencia de enormes volúmenes de datos entre los múltiples centros de datos de Google repartidos por todo el mundo. La herramienta opera en docenas de clústeres, cada uno compuesto por miles de máquinas, y está optimizada para funcionar con el sistema de archivos interno de Google, conocido como Colossus.

El sistema está dividido en dos componentes principales: un plano de control, que gestiona el ciclo de vida de las transferencias de datos, y un plano de datos, que se encarga de mover los bytes y proporcionar informes de estado. A pesar de que el plano de datos consume el 99% de la CPU, solo representa el 7% del código de la herramienta, lo que refleja un diseño altamente eficiente y especializado.

effingo transferencia de datos

La importancia de Effingo en la infraestructura de Google

La transferencia de datos a gran escala es crucial para empresas como Google, donde la latencia y la proximidad de los datos son factores determinantes para el rendimiento de sus servicios. Effingo juega un papel vital en este proceso al garantizar que los datos estén ubicados lo más cerca posible de los usuarios o los sistemas que los necesitan, reduciendo la latencia y mejorando la velocidad de acceso.

Este sistema permite que Google mantenga una operación fluida y eficiente, incluso cuando se trata de tareas críticas como la recuperación ante desastres o la migración de datos para el mantenimiento de clústeres. Effingo asegura que las transferencias de datos más urgentes reciban la prioridad necesaria, mientras que las tareas menos críticas pueden ser manejadas con recursos de mejor esfuerzo.

effingo gestión de recursos

La gestión de recursos y la prioridad de las tareas

Uno de los desafíos más grandes que enfrenta Effingo es la gestión de los recursos necesarios para mover estos volúmenes masivos de datos sin afectar el rendimiento general de los sistemas de Google. Para ello, la herramienta se integra con otro proyecto de Google llamado Bandwidth Enforcer (BWe), que asigna capacidad de red en función de la prioridad del servicio y el valor que se derive de la adición de ancho de banda adicional.

BWe clasifica el tráfico en «clases de servicio de red» (NSC), lo que permite que Effingo solicite y reciba la asignación de tráfico necesaria para completar sus tareas. Esta asignación se basa en cuotas predeterminadas que Google define, las cuales se presupuestan con meses de anticipación para asegurar que las transferencias de datos más críticas reciban los recursos necesarios.

A pesar de estos esfuerzos, el tamaño medio de la cartera de pedidos global de Effingo es de unos 12 millones de archivos, con unos ocho petabytes de datos en cola en un día promedio. Cuando los usuarios más grandes del servicio inician nuevas transferencias, estos números pueden aumentar significativamente, lo que refleja la magnitud del trabajo que Effingo maneja.

gestión de recursos, Google

Un proyecto en evolución

A pesar de sus impresionantes capacidades, Effingo sigue siendo un proyecto en desarrollo. Google planea mejorar la integración de la herramienta con sus sistemas de gestión de recursos y optimizar el uso de la CPU durante las transferencias entre centros de datos. Además, se están considerando mejoras en el bucle de control para escalar horizontalmente las transferencias de manera más rápida.

Effingo representa un componente esencial en la infraestructura global de Google, facilitando la transferencia eficiente y prioritaria de enormes volúmenes de datos. A medida que la compañía continúa expandiendo y mejorando este sistema, es probable que veamos aún más avances en la capacidad de Google para manejar sus operaciones a escala planetaria.

Imágenes: Unsplash

RELACIONADOS