La investigación de la Universidad Carnegie Mellon pronto puede ayudar a que Twitter funcione más rápido y de manera más eficiente.
Dr. Juncheng Yang Candidato en Informáticay Rashmi Vinayak, profesor asistente en el Departamento de Ciencias de la Computación, colaboraron con Yao Yue de Twitter para desarrollar Segcache para hacer un mejor uso de la caché DRAM.
“Hicimos una investigación exhaustiva sobre cómo almacenar en caché y acceder a los elementos. Basándonos en nuestra investigación, hemos desarrollado un sistema que le permite hacer un mejor uso de su valiosa caché. espacio“dijo Yang.” Esto podría permitir a Twitter reducir el tamaño de su clúster de caché más grande en un 60%. “
La investigación del equipo ganó un Premio de la Comunidad por ser uno de los mejores artículos en el Simposio de USENIX sobre Diseño e Implementación de Sistemas de Red el mes pasado.
La mayoría de las computadoras, desde computadoras portátiles personales hasta servidores que contienen millones de tweets, almacenan elementos en uno de dos sistemas: discos duros o memoria dinámica de acceso aleatorio (DRAM). Los discos duros almacenan elementos de forma permanente, mientras que DRAM almacena elementos a pedido, como archivos en caché. Los elementos de la DRAM se pueden recuperar rápidamente, pero la DRAM es relativamente pequeña, cara y consume mucha energía. Cómo hacer un mejor uso de este espacio limitado siempre ha sido un problema difícil de resolver.
Cuando abre Twitter, los tweets que aparecen inmediatamente en el feed provienen del caché. Sin él, cargar su página de inicio requiere que descargue tweets de todos los que sigue desde su disco duro, lo que lleva mucho tiempo y consume recursos del sistema.
Segcache utiliza dos técnicas para hacer un mejor uso del espacio de la caché. Primero, agrupa elementos para que los metadatos se puedan compartir entre ellos. Los elementos del caché suelen ser pequeños; la mayoría de las veces, un tweet tiene 33 caracteres. Sin embargo, los sistemas existentes almacenan grandes cantidades de metadatos con cada elemento, desperdiciando un valioso espacio de caché. Agrupar elementos similares y compartir sus metadatos reduce esta sobrecarga y usa la caché de manera más eficiente.
La segunda técnica consiste en rediseñar el sistema para identificar y eliminar elementos desactualizados de manera más eficiente. Los elementos almacenados en caché suelen tener una vida útil corta, y cuando los elementos caducados permanecen en Cache desperdician un espacio valioso. El nuevo diseño elimina estos elementos más rápido y con menos escaneos que los métodos existentes que requieren un escaneo periódico de todos los elementos.
Yang y Vinayak dijeron que trabajar con Twitter era crucial para su trabajo, ya que la compañía les permitió investigar el sistema de producción de las redes sociales. Twitter ahora está trabajando para incorporar la investigación del equipo en su sistema de producción.
“Nosotros y nuestros asociados de Twitter estamos muy entusiasmados con este trabajo”, dijo Vinayak. “Cambiar el sistema de producción es engorroso y las empresas rara vez lo hacen para adaptarse a las últimas investigaciones. Cuando la investigación que hacemos se utiliza en el mundo real, es muy emocionante “.
www.usenix.org/system/files/nsdi21-yang.pdf
Entregado por
Universidad de Carnegie mellon