El ciclo de vida de los datos en Facebook

El acrónimo GAFA hace referencia a las grandes compañías tecnológicas Google, Amazon, Facebook y Apple.

En esta ocasión, he decidido investigar y desarrollar un análisis del valor que está extrayendo de los datos Facebook haciendo referencia a:

  • Cuál es el origen de los datos y cómo se capturan (origen).
  • Qué valor se genera con esos datos recogidos (valor).
  • Cómo el valor de esos datos le diferencia o ayuda a nivel de competitividad sobre otros actores de su mercado (competitividad).
  • Qué posibles nuevos usos de esos datos en Facebook podrían generar un impacto claro en el valor del producto o servicios ofrecido o que incluso, dieran lugar a un nuevo producto/servicio (proyecto).

Cuál es el origen de los datos y cómo se capturan (origen).

Con un total de 2.500 millones de usuarios activos mensuales en el cuarto trimestre de 2019 (statista), Facebook tiene uno de los data warehouses o repositorio de la información relevante para la toma de decisiones más grandes del mundo, almacenando más de 300 petabytes. En los inicios, el newsfeed de Facebook estaba basado en un sistema push donde el post viajaba al motor del backend y allí comprobaba qué amigos tenías y posteaba el mensaje en su feed sin importar si los amigos estaban o no logueados. Los ponía en cola hasta que los amigos volvieran a entrar. Este proceso tenía lugar cuando nuevos datos eran creados. Pero esto no escalaba, entonces Facebook decidió ir a por un sistema más dinámico o en vivo donde el mensaje se deposita en una base de datos y no en la cola de los amigos. De esta manera, cuando un amigo se loguea se lanza una query que dice “dime todas las últimas cosas que han hecho mis amigos”, de esta manera conseguimos un sistema más pull. Es decir, Facebook crea este newsfeed en tiempo real (batch analytics, real time analytics y live analytics). Estos datos son utilizados por una amplia variedad de aplicaciones dentro de la compañía, en escenarios de batch processing, análisis de grafos, machine learning y analítica en tiempo real.

Con el objetivo de habilitar el uso de SQL en procesamiento batch, el equipo de ingeniería de Facebook inventó Presto, un framework distribuido para análisis ad-hoc. Presto puede correr más de 30.000 queries a diario usando, por ejemplo, un componente como Hive que permite traducir las consultas SQL en procedimientos MapReduce. Existen componentes similares como HBase (para NoSQL) que también actúa como conector a diferentes almacenes de datos. Para tener esa capacidad computacional y soportar tanto volumen de usuarios, más que escalabilidad parece que lo de Facebook es más elasticidad. Con el tiempo se han ido incluyendo varias funcionalidades donde se realizan transacciones financieras en su marketplace (con todo lo que eso conlleva en cuanto a fiabilidad y robustez del monitor transaccional). El origen de los datos es, por tanto, MySQL (datos estructurados, user data) y Web Servers Logs (no estructurados y streaming). Para conseguir esa capacidad, en Facebook existen diferentes bases de datos específicas para capturar datos:

  • Memcaché: componente de almacenamiento de datos que usa in-memory para acelerar consultas frecuentes. Se usa para aliviar la carga de la base de datos y así dar soporte a tantas peticiones. Las aplicaciones la usan como un tabla hash, a la que piden información antes de acudir a la base de datos. Tiene un rendimiento muy alto.

  • Cassandra: componente de almacenamiento de datos optimizado para entornos críticos. Una base de datos relacional no escala lo suficiente para atender a millones de clientes y compañías tecnológicas como Facebook han implantado sus soluciones al margen de este tipo de software. Cassandra (storage engine) hace parte del ecosistema SMACK que a su vez hace referencia a una combinación de componentes en la que se considera que cada dato es un evento. Cassandra es la opción preferida cuando Hadoop no sea necesario. Cassandra es una base de datos adherida al modelo de agregación de columnas que está basado en el modelo de datos Bigtable de Google.

  • Hive: es una infraestructura de data warehouse que facilita la consulta y la gestión de gran cantidad de datos almacenados de forma distribuida. Hive permite crear una visión federada de los datos almacenados en los directorios de HDFS. Cuando el dato sea estructurado, Hive será la opción. Con Hive, Facebook sabe qué amigos tienes en Facebook, los clasifica por su lugar de residencia, sabe qué amigos en común tienes con unos y otros. En general, Hive es para procesamiento batch nocturno.

  • Apache Thrift: servicios de serialización que permiten serializar datos estructurados. La serialización es el proceso de traducir los datos de un sistema (las estructuras de datos y los estados de sus objetos) de modo que puedan ser almacenados (en disco, en memoria, etc.) y que puedan ser posteriormente recuperados para volver a dejar el sistema en el estado en que estaba.

  • Scribe: sirve para agregar todos los logs de los miles de servidores de los que dispone Facebook. Está diseñado para ser escalable, robusto y tolerante a fallos. No me voy a detener en el compilador que traduce PHP a C++ como HipHop for PHP ni en el framework Tornado escrito en Python porque, si es verdad que mejoran el rendimiento de Facebook y hacen que las peticiones que se generen no sean bloqueantes y soporte todo esto en simultáneo y tiempo real, tampoco es oportuno mencionarlo para la captura de datos.

Qué valor se genera con esos datos recogidos (valor).

El valor del dato está relacionado con la capacidad de diferenciación y creación de ventajas competitivas. En el caso de Facebook, existe, en primer lugar, un valor fundamentado en la utilidad que estos datos proveen al producto como, por ejemplo, el uso de “The Flashback” ofreciendo a los usuarios la capacidad de compartir un vídeo con una colección de fotos celebrando su aniversario en la plataforma, la capacidad de recordar a los usuarios en las elecciones de 2016 sobre sus lugares de votación o tecnología como Topic Data que permite a los marketers obtener respuestas sobre marcas, eventos o actividades de su audiencia y así crecer la efectividad de sus campañas. Por otro lado, relacionado con la utilidad está el valor del dato para uno o más procesos de negocio. En los inicios de la vida de Facebook, el foco absoluto fue el crecimiento y cómo hacer Facebook lo más rápido posible y adoptado por la mayor cantidad de personas posible en todo el planeta.

El foco de la recopilación de datos era más sobre cómo mejorar el producto y hacerlo cada vez más impactante en la vida de los usuarios. Esto significa que los usuarios añadieran más fotos, que vieran más vídeos o que hicieran más comentarios. Hadoop mejoró realmente la carga de páginas, el clustering de usuarios, metadatos que servían para personalización… En definitiva, todas estas mejoras hicieron y hacen que el producto se monetize mejor. Para que esto tenga lugar, mucha parte de procesamiento es necesaria como explicamos en el primer punto con los distintos métodos para la captura de datos.

Cómo el valor de esos datos le diferencia o ayuda a nivel de competitividad sobre otros actores de su mercado (competitividad).

Como explico en el anterior punto, Facebook está claramente aprovechando sus activos de datos mediante la creación de ventajas competitivas a través de un mayor conocimiento de sus clientes, los usos innovadores de la información y la eficiencia operativa. Las ventajas de Facebook se fundamentan en:

  • La publicidad en Facebook funciona igual o mejor que la que los anuncios de Google Ads y segmentan con las decenas de trackers que tienen en su web. Ejemplos de esto son posiciones pagas de Facebook (timeline natural del lado central, anuncios pagos patrocinados en la parte derecha, etc) o las cookies de remarketing. Además, Facebook adquirió Instagram donde muchas marcas tienen puesta su confianza para su estrategia de marketing de contenidos y además se puede usar como canal de outbound marketing para generar ventas a partir de anuncios pagos. Facebook no solo vende publicidad, sino que tiene algoritmos de AI especializados en hacer tracking de lo que hacemos y cómo lo hacemos.

  • Características o funcionalidades del producto diferenciadoras como los grupos que se forman en Facebook en torno a intereses específicos han permitido a muchas empresas como Ahrefs, por ejemplo, generar mucha conversación. En este caso las personas pueden hablar de SEO y pedir consejos. Además de esto, todas las soluciones de analytics de Facebook como Facebook Analytics (datos demográficos más acertados) o Facebook Insights (Publicaciones) han creado la posibilidad de analizar los propios resultados y los de la competencia en un periodo de tiempo determinado.

  • Facebook persigue tu comportamiento a través de internet lo que hace mejor su plataforma: Cada vez que le damos el permiso a otra aplicación de loguearse con Facebook esa aplicación obtiene muchos datos de los usuarios que están dentro de Facebook. Como menciono en el punto uno, no es solo la app o la web, Facebook captura información de usuarios a través de cualquier Facebook Login que hagamos, like o share de una noticia o post, etc.

Qué posibles nuevos usos de esos datos en la empresa, podrían generar un impacto claro en el valor del producto o servicios ofrecido o que incluso, dieran lugar a un nuevo producto/servicio (proyecto).

Facebook sabe mucho de nosotros: de acuerdo a las políticas de un país qué tan liberales somos, cumpleaños, estado de conectividad con la que accedemos, sistema operativo favorito, si somos o no early adopters de algo, si somos viajeros frecuentes, si somos “expatriados”, el móvil que tenemos, si somos administradores de una página en Facebook, si accedemos por wifi, si somos un comprador muy enganchado a las experiencias de compra por los sistemas de ecommerce, afinidades culturales, idioma dominante… Lo que más quiere saber Facebook es quiénes somos por lo que tiene muchas vías para crear nuevos productos:

  • Mejoras en su algoritmo para reducir la tasa de abandono de clientes: cuando nos conectamos con la app de Facebook a otros sitios tienen el login de Facebook con el que pueden identificarte por lo que los sitos web que veas en tu móvil pueden servir a Facebook para promocionártelos en su plataforma como anuncios. Tiene las cookies de los sitios que has visitado, sabe todos los wifis a los que nos hemos conectado, es capaz de obtener la señal de GPS o triangulación por antenas 3G y 4G y saber exactamente dónde estamos por los patrones de localización que tengamos.

  • Recomendaciones de amigos mucho más precisas: Facebook Messenger te obliga a sincronizar los contactos, Facebook guarda los datos de las llamadas del mundo real cuando tienes messenger instalado, de esta manera, Facebook puede curar su ranking de Instagram Stories o resalta más de Whatsapp.

  • Creación de algoritmos de inteligencia artificial para crear una correlación de intereses y relaciones personales. Facebook tiene ya una masiva red de las aplicaciones más descargadas: Facebook, Messenger, Whatsapp, Instagram, Oculus… Gracias a esta cantidad masiva de datos, el algoritmo puede probar automáticamente todas las opciones posibles, detectar patrones y comparar datos en tiempo real para tratar de entender si una persona tiene una conexión emocional más fuerte con una u otra persona. Un nuevo uso de estos datos es crear a un mejores y eficientes algoritmos estadísticos porque no olvidemos de que una mayoría aplastante del negocio de facebook es dependiente de anuncios (más del 90%).


© 2020. All rights reserved.